00001 #ifndef QBPERSPECTIVECAMERA_H 00002 #define QBPERSPECTIVECAMERA_H 00003 00004 #include "QbIncludes.h" 00005 00006 class QbPerspectiveCamera : public SoPerspectiveCamera { 00007 SO_NODE_HEADER(QbPerspectiveCamera); 00008 typedef SoPerspectiveCamera inherited; 00009 public: 00010 static void initClass(void); 00011 QbPerspectiveCamera(void); 00012 ~QbPerspectiveCamera(void); 00013 SoSFTrigger move; 00014 SoSFVec3f oldPosition; 00015 SoSFFloat oldNearDistance; 00016 SoSFFloat oldFarDistance; 00017 SoSFFloat oldFocalDistance; 00018 SoSFVec3f newPosition; 00019 SoSFFloat newNearDistance; 00020 SoSFFloat newFarDistance; 00021 SoSFFloat newFocalDistance; 00022 protected: 00023 virtual void viewBoundingBox(const SbBox3f &box, float aspect, float slack); 00024 private: 00025 void connectOutFields(SoNode *node); 00026 SoNode *camove; 00027 static const char * DEFAULT_MOVE[]; 00028 }; 00029 00030 #endif