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