00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef COIN_SOVRMLPROXIMITYSENSOR_H
00025 #define COIN_SOVRMLPROXIMITYSENSOR_H
00026
00027 #include <Inventor/nodes/SoSubNode.h>
00028 #include <Inventor/nodes/SoNode.h>
00029 #include <Inventor/fields/SoSFVec3f.h>
00030 #include <Inventor/fields/SoSFBool.h>
00031 #include <Inventor/fields/SoSFTime.h>
00032 #include <Inventor/fields/SoSFRotation.h>
00033
00034 class COIN_DLL_API SoVRMLProximitySensor : public SoNode
00035 {
00036 typedef SoNode inherited;
00037 SO_NODE_HEADER(SoVRMLProximitySensor);
00038
00039 public:
00040 static void initClass(void);
00041 SoVRMLProximitySensor(void);
00042
00043 SoSFVec3f center;
00044 SoSFVec3f size;
00045 SoSFBool enabled;
00046
00047 SoSFBool isActive;
00048 SoSFVec3f position_changed;
00049 SoSFRotation orientation_changed;
00050 SoSFTime enterTime;
00051 SoSFTime exitTime;
00052
00053 virtual SbBool affectsState(void) const;
00054
00055 virtual void doAction(SoAction * action);
00056 virtual void GLRender(SoGLRenderAction * action);
00057 virtual void callback(SoCallbackAction * action);
00058 virtual void rayPick(SoRayPickAction * action);
00059 virtual void getBoundingBox(SoGetBoundingBoxAction * action);
00060
00061 protected:
00062 virtual ~SoVRMLProximitySensor();
00063
00064 virtual void notify(SoNotList * list);
00065
00066 private:
00067 };
00068
00069 #endif // ! COIN_SOVRMLPROXIMITYSENSOR_H