planet3d

所属分类:3D图形编程
开发工具:Visual C++
文件大小:1128KB
下载次数:22
上传日期:2009-11-04 09:38:44
上 传 者虎虎虎虎
说明:  通过使用C#和OPengl构建出一个地球的模型,可以漫游,缩放等
(Through the use of C# and OPengl to build a model of the Earth may be roaming, zooming, etc.)

文件列表:
planet3d\Planet3D.suo (28672, 2006-11-13)
planet3d\Planet3D.sln (913, 2006-10-27)
planet3d\Planet3D\GDImage.cs (23346, 2006-11-13)
planet3d\Planet3D\MAIN_Form.cs (22107, 2006-11-13)
planet3d\Planet3D\MAIN_Form.Designer.cs (25592, 2006-11-13)
planet3d\Planet3D\MAIN_Form.resx (36094, 2006-11-13)
planet3d\Planet3D\OpenGL.cs (12497, 2006-11-13)
planet3d\Planet3D\Planet3D.csproj (4988, 2006-11-13)
planet3d\Planet3D\Planet3D.csproj.user (583, 2006-11-13)
planet3d\Planet3D\Planet3D.ico (4286, 2006-10-28)
planet3d\Planet3D\Program.cs (2926, 2006-11-13)
planet3d\Planet3D\SkinButton.cs (3486, 2006-11-13)
planet3d\Planet3D\SkinButton.Designer.cs (2572, 2006-11-13)
planet3d\Planet3D\SkinEngine.cs (23858, 2006-11-05)
planet3d\Planet3D\SkinTrackbar.cs (12176, 2006-11-13)
planet3d\Planet3D\SkinTrackbar.Designer.cs (3404, 2006-11-13)
planet3d\Planet3D\SkinTrackbar.resx (6009, 2006-11-04)
planet3d\Planet3D\Win32.cs (16174, 2006-11-13)
planet3d\Planet3D\Resources\BTN_Down.png (2305, 2006-11-06)
planet3d\Planet3D\Resources\BTN_Left.png (2560, 2006-11-06)
planet3d\Planet3D\Resources\BTN_Pause.png (2247, 2006-11-06)
planet3d\Planet3D\Resources\BTN_Push.png (4149, 2006-07-31)
planet3d\Planet3D\Resources\BTN_Reset.png (6524, 2006-11-08)
planet3d\Planet3D\Resources\BTN_Right.png (2462, 2006-11-06)
planet3d\Planet3D\Resources\BTN_SelectFile.png (12660, 2006-11-09)
planet3d\Planet3D\Resources\BTN_Thumb.bmp (1198, 2006-11-02)
planet3d\Planet3D\Resources\BTN_Up.png (2319, 2006-11-06)
planet3d\Planet3D\Resources\Planet3D.ico (4286, 2006-10-28)
planet3d\Planet3D\Resources\Play.png (609, 2006-04-17)
planet3d\Planet3D\Resources\Thumbs.db (22528, 2009-04-07)
planet3d\Planet3D\Properties\AssemblyInfo.cs (1350, 2006-09-22)
planet3d\Planet3D\Properties\Resources.Designer.cs (5593, 2006-11-02)
planet3d\Planet3D\Properties\Resources.resx (8425, 2006-11-02)
planet3d\Planet3D\Properties\Settings.Designer.cs (1135, 2006-11-02)
planet3d\Planet3D\Properties\Settings.settings (249, 2006-09-22)
planet3d\Planet3D\obj\Planet3D.csproj.FileList.txt (320, 2006-11-13)
planet3d\Planet3D\obj\Release\TempPE\Properties.Resources.Designer.cs.dll (5632, 2006-11-02)
planet3d\Planet3D\obj\Debug\Planet3D.csproj.GenerateResource.Cache (1335, 2006-11-13)
planet3d\Planet3D\obj\Debug\Planet3D.exe (131072, 2006-11-13)
... ...

Franais -------- Planet3D est un projet écrit avec VISUAL C# 2005 Express Edition Cette démo est basée sur OpenGL, vous devez avoir une carte graphique compatible. Le contrle affiche des planètes animées en 3D sur un arrière plan fixe avec éclairage d'ambiance pour renforcer l'impression de relief. L'utilisation de coordonnées polaires permet de faire pivoter les planètes dans l'espace. A noter que les textures sont créées à la volée et que vous pouvez les changer à volonté. Outre MAIN_Form, le projet contient 4 classes spécifiques : 1 - OpenGL.cs (qui contient l'encapsulation de l'API OpenGL) 2 - Win32.cs (qui contient l'encapsulation de l'API bas niveau requise par le projet). 3 - GDImage.cs (qui contient l'encapsulation de l'API GDImage). 4 - SkinEngine.cs (qui contient les méthodes et les propriétés du Skin Engine, lequel est utilisé pour dessiner les différents boutons). Note : Les textures du ciel et des planètes se trouvent dans le répertoire "\bin\debug" du projet, ainsi que GDImage.dll qui est requis pour la création des textures utilisées par OpenGL. En raison de la taille limitée des ZIP, j'ai été obligé de restreindre le nombre et la qualité des textures proposées. _______________________________________________________________________________________________________ English ------- Basename: planet3d Article Title: Planet 3D (alias GL Earth) Description: OpenGL moving planet Keywords: OpenGL, 3D, Planet, User control. Download source files - 996 Kb Introduction The project uses exclusively the features found in VISUAL C# 2005 Express Edition. Planet 3D is a companion to my Panorama contribution, that has been already posted there. The demo is provided with several textures to create the stellar background and each of the planet. Note: In order to keep the size of the ZIP file small, the provided textures are in low resolution mode. The control uses 3D polar coordinates, and either keyboard direction key or buttons to change the planet rotation angle. You can also use the left mouse button while in the OpenGL control to rotate the planet. Several classes and "user controls" help the creation of skinned button and dedicated trackbar. Smooth zooming is used to enlarge or reduce the size of the planet while the stellar background leave unchanged. Code insight: - SkinEngine.cs This class is responsible for the drawing of skinned form and custom controls. - SkinButton.cs User control to create skinned button using one single 5-image bitmap matching each of the button state: normal, down, disabled, focused, hover. You can use either "standard" push button or shaped button with region. - SkinTrackbar.cs User control to create a mouse only skinned track bar. The thumb tracker can have any size or shape based on a provided bitmap. The control orientation is based on the ratio between width and height, if width is larger than height then horizontal else vertical. To help the user to figure the moving of the thumb track, the control draws a layered triangle hover the background and uses a tooltip to show the current value. You can inverse ranging swapping min/max values. - OpenGL.cs Encapsulation of the OpenGL API being used. - Win32.cs Encapsulation of the Win32 API being used. - GDImage.cs Encapsulation of the GDImage API being used. GDImage is a prerequisite to create OpenGL font and convert image to GL texture on the fly. Comment: I hope you will like Planet 3D and perhaps learn a few things from it. You will find more contributions on my web site www.zapsolution.com in the "C# corner" section.

近期下载者

相关文件


收藏者