00001 /*************************************************************************** 00002 perlinimage.h - Texture generator from perlin noise 00003 ------------------- 00004 begin : Wed Oct 16 2002 00005 copyright : (C) 2002 by Rob Wanders 00006 email : forteq@softhome.net 00007 *************************************************************************** 00008 00009 The contents of this file are subject to the Mozilla Public License Version 00010 1.1 (the "License"); you may not use this file except in compliance with 00011 the License. You may obtain a copy of the License at 00012 http://www.mozilla.org/MPL/ 00013 00014 Software distributed under the License is distributed on an "AS IS" basis, 00015 WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 00016 for the specific language governing rights and limitations under the 00017 License. 00018 00019 The Original Code is the NeoEngine, perlinimage.h 00020 00021 The Initial Developer of the Original Code is Rob Wanders. 00022 Portions created by Rob Wanders are Copyright (C) 2002 00023 Rob Wanders. All Rights Reserved. 00024 00025 ***************************************************************************/ 00026 00027 #ifndef __NEPERLINIMAGE_H 00028 #define __NEPERLINIMAGE_H 00029 00030 00031 00039 #include "base.h" 00040 #include "perlin.h" 00041 #include "texture.h" 00042 00043 00044 namespace NeoEngine 00045 { 00046 00047 00057 class NEOENGINE_API PerlinImage : public ImageData 00058 { 00059 public: 00060 00065 enum PERLINIMAGETYPE 00066 { 00067 CLOUDS = 0x0001, 00068 WOOD = 0x0002 00069 }; 00070 00071 00072 protected: 00073 00075 PERLINIMAGETYPE m_iType; 00076 00078 bool m_bGenerated; 00079 00080 00081 public: 00082 00088 PerlinImage( int iWidth, int iHeight ); 00089 00095 void GenerateImage( PERLINIMAGETYPE eType, int iData ); 00096 00100 void SetWidth( int iWidth ); 00101 00105 void SetHeight( int iHeight ); 00106 }; 00107 00108 00109 }; // namespace NeoEngine 00110 00111 00112 #endif // __NEPERLINIMAGE_H 00113