AnimatLab  2
Test
Libraries/OsgAnimatSim/StdAfx.h
1 // stdafx.h : include file for standard system include files,
2 // or project specific include files that are used frequently, but
3 // are changed infrequently
4 //
5 
6 #pragma once
7 
8 #ifdef WIN32
9  #define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers
10  // Windows Header Files:
11  #include <windows.h>
12 
13  #define ANIMAT_OSG_PORT __declspec( dllexport )
14 #else
15  #define ANIMAT_OSG_PORT
16 #endif
17 
18 //#define STD_TRACING_ON
19 
20 #include "StdUtils.h"
21 #include "AnimatSim.h"
22 
23 // OSG includes
24 #include <osg/Group>
25 #include <osg/Geode>
26 #include <osg/Geometry>
27 #include <osg/Matrix>
28 #include <osg/Matrixd>
29 #include <osg/MatrixTransform>
30 #include <osg/Material>
31 #include <osg/Math>
32 #include <osg/Node>
33 #include <osg/PolygonMode>
34 #include <osg/PolygonOffset>
35 #include <osg/ShapeDrawable>
36 #include <osg/StateSet>
37 #include <osg/TexGen>
38 #include <osg/Plane>
39 #include <osg/Texture>
40 #include <osg/Texture1D>
41 #include <osg/Texture2D>
42 #include <osg/Texture3D>
43 #include <osg/TextureCubeMap>
44 #include <osg/TextureRectangle>
45 #include <osg/CullFace>
46 #include <osgText/Text>
47 #include <osg/ref_ptr>
48 #include <osg/CoordinateSystemNode>
49 #include <osg/ClusterCullingCallback>
50 #include <osg/Camera>
51 #include <osg/io_utils>
52 #include <osg/LineWidth>
53 #include <osg/AutoTransform>
54 #include <osg/StateAttribute>
55 #include <osg/AlphaFunc>
56 #include <osg/TexMat>
57 
58 #include <osgDB/ReadFile>
59 #include <osgDB/WriteFile>
60 #include <osgDB/FileUtils>
61 
62 #include <osgFX/BumpMapping>
63 #include <osgSim/DOFTransform>
64 
65 #include <osgUtil/Optimizer>
66 #include <osgUtil/SmoothingVisitor>
67 
68 #include <osgViewer/GraphicsWindow>
69 #include <osgViewer/Viewer>
70 #include <osgViewer/ViewerEventHandlers>
71 #include <osgViewer/CompositeViewer>
72 
73 #include <osgGA/GUIEventAdapter>
74 #include <osgGA/GUIActionAdapter>
75 #include <osgGA/StateSetManipulator>
76 #include <osgGA/TrackballManipulator>
77 #include <osgGA/CameraManipulator>
78 
79 #include <osgManipulator/CommandManager>
80 #include <osgManipulator/TabBoxDragger>
81 #include <osgManipulator/TabPlaneDragger>
82 #include <osgManipulator/TabPlaneTrackballDragger>
83 #include <osgManipulator/TrackballDragger>
84 #include <osgManipulator/Translate1DDragger>
85 #include <osgManipulator/Translate2DDragger>
86 #include <osgManipulator/TranslateAxisDragger>
87 #include <osgManipulator/AntiSquish>
88 
89 #include "OsgWorldCoordinateNodeVisitor.h"
90 
91 using namespace osgGA;
92 
93 #include <OpenThreads/Thread>
94 
95 #ifdef WIN32
96  #include <osgViewer/api/win32/GraphicsWindowWin32>
97 #endif
98 
99 #include "OsgAnimatSimConstants.h"
100 #include "OsgMatrixUtil.h"
101 
102 //Simulation Objects
103 namespace OsgAnimatSim
104 {
105  class OsgMeshMgr;
106  class OsgMatrixUtil;
107  class OsgSimulator;
108 
109  namespace Environment
110  {
111  class OsgLight;
112  class OsgBody;
113  class OsgRigidBody;
114  class OsgJoint;
115  class OsgOrganism;
116  class OsgStructure;
117 
118  namespace Bodies
119  {
120  class OsgAttachment;
121  class OsgMouth;
122  class OsgOdorSensor;
123  }
124 
125  namespace Joints
126  {
127  class OsgHinge;
128  class OsgHingeLimit;
129  class OsgPrismatic;
130  class OsgPrismaticLimit;
131  class OsgFreeJoint;
132  }
133  }
134 
135  namespace Visualization
136  {
137  class OsgCameraManipulator;
138  class OsgDragger;
139  class OsgDraggerHandler;
140  class OsgHud;
141  class OsgHudItem;
142  class OsgHudText;
143  class OsgMouseSpring;
144  class OsgUserData;
145  class OsgUserDataVisitor;
146  class OsgSimulationWindow;
148  class OsgTrackballDragger;
151  class OsgPyramid;
152  }
153 }
154 
155 using namespace OsgAnimatSim;
156 using namespace OsgAnimatSim::Environment;
157 using namespace OsgAnimatSim::Visualization;
Implements the light object within osg.
A common class for all rigid body data specific to vortex.
Definition: OsgRigidBody.h:50
Classes for implementing the cm-labs vortex physics engine for AnimatLab.
Vortex base body class.
Definition: OsgBody.h:26
Vortex Organism implementation.
Definition: OsgOrganism.h:20
Vortex physical structure implementation.
Definition: OsgMeshMgr.h:18
A common class for all joint data specific to vortex.
Definition: OsgJoint.h:26
Vortex physical structure implementation.
Definition: OsgLight.h:25
Vortex physical structure implementation.
Definition: OsgStructure.h:25
Classes involved in displaying the simulation in OSG.