Alphabetical Class Index  Class Hierarchy   File Members   Compound Members   File List  

HOpCameraOrbit.h
00001 //
00002 // Copyright (c) 2000 by Tech Soft 3D, LLC.
00003 // The information contained herein is confidential and proprietary to
00004 // Tech Soft 3D, LLC., and considered a trade secret as defined under
00005 // civil and criminal statutes.  Tech Soft 3D shall pursue its civil
00006 // and criminal remedies in the event of unauthorized use or misappropriation
00007 // of its trade secrets.  Use of this information by anyone other than
00008 // authorized employees of Tech Soft 3D, LLC. is granted only under a
00009 // written non-disclosure agreement, expressly prescribing the scope and
00010 // manner of such use.
00011 //
00012 // $Id$
00013 //
00014 
00015 // HOpCameraOrbit.h : interface of the HOpCameraOrbit class
00016 // orbits the camera of current view usual a virtual trackball
00017 // interface
00018 
00019 #ifndef _HOPCAMERAORBIT_H
00020 #define _HOPCAMERAORBIT_H
00021 
00022 #ifdef H_PACK_8
00023 #pragma pack(push)
00024 #pragma pack(8)
00025 #endif
00026 
00027 #include "HTools.h"
00028 #include "HBaseOperator.h"
00029 
00030 
00032 
00044 class MVO_API HOpCameraOrbit : public HBaseOperator
00045 {
00046 public:
00054     HOpCameraOrbit (HBaseView* view, int DoRepeat=0, int DoCapture=1);
00055     virtual ~HOpCameraOrbit();
00056 
00060     virtual const char * GetName();  
00061 
00062 
00069     virtual int OnLButtonDown (HEventInfo &hevent);
00070 
00071 
00079     virtual int OnLButtonDownAndMove(HEventInfo &hevent);
00080 
00081 
00082 
00088     virtual int OnLButtonUp (HEventInfo &hevent);
00089 
00096     void SetLightFollowsCamera(bool follow){m_bLightFollowsCamera = follow;};
00097 
00099     bool GetLightFollowsCamera(){return m_bLightFollowsCamera;};
00100 
00106     void SetSceneBoundingBoxVis(bool vis){m_bSceneBoundingBoxVis = vis;};
00107 
00109     bool GetSceneBoundingBoxVis(){return m_bSceneBoundingBoxVis;};
00110 
00111 
00117     virtual HBaseOperator * Clone();  
00118 
00120     float m_Angle2, m_Angle1, m_Angle3;  /*these variable should not be public*/
00121 
00123     bool GetSingleClick() { return m_bSingleClick; }
00124 
00125 protected:
00126 
00127     bool    m_bLightFollowsCamera;  
00128     bool    m_bSceneBoundingBoxVis; 
00129     bool    m_bSingleClick;     
00131     HPoint  m_ptRealOld;            
00133 private:
00134     HPoint m_ptRealFirst;
00135 };
00136 
00137 #ifdef H_PACK_8
00138 #pragma pack(pop)
00139 #endif
00140 
00141 #endif
00142 
00143 
00144