00001
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef DATA_STRUCTURES__H
00029 #define DATA_STRUCTURES__H
00030
00031 #include <Inventor/nodes/SoLight.h>
00032 #include <Inventor/nodes/SoSeparator.h>
00033 #include <Inventor/nodes/SoSwitch.h>
00034 #include <Inventor/nodes/SoEnvironment.h>
00035
00036
00040 enum TShadowMethod {
00041 zpass,
00042 zfail,
00043 autoset
00044 };
00045
00046
00050 enum TShadowAlgorithm {
00051 zpassAlg,
00052 zfailAlg
00053 };
00054
00055
00059 struct TShadowSettings {
00060 enum TShadowMethod method;
00061 bool dropShadows;
00064 float fDepth;
00065 };
00066
00067
00071 enum TLightTypes {
00072 TSoDirectionalLight,
00073 TSoDirectionalLightManip,
00074 TSoPointLight,
00075 TSoPointLightManip,
00076 TSoSpotLight,
00077 TSoSpotLightManip,
00078 TUnknownLightType
00079 };
00080
00081
00085 struct TLightInfo {
00086 SoLight * light;
00087 SbBool * status;
00088 SoEnvironment * globEnv;
00089 };
00090
00091
00095 struct TLightSwitch {
00096 SoSwitch * switchNode;
00098 SbBool * status;
00099 };
00100
00101
00106
00107
00108
00109
00110
00111
00112 #endif