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: cb8525e0f134e4b98ef967a11a7ef488be28a506 $ 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