00001 // Copyright (c) 1998-2014 by Tech Soft 3D, Inc. 00002 // 00003 // The information contained herein is confidential and proprietary to Tech Soft 3D, Inc., 00004 // and considered a trade secret as defined under civil and criminal statutes. 00005 // Tech Soft 3D, Inc. shall pursue its civil and criminal remedies in the event of 00006 // unauthorized use or misappropriation of its trade secrets. Use of this information 00007 // by anyone other than authorized employees of Tech Soft 3D, Inc. is granted only under 00008 // a written non-disclosure agreement, expressly prescribing the scope and manner of such use. 00009 00010 // HOpCameraOrbit.h : interface of the HOpCameraOrbit class 00011 // orbits the camera of current view usual a virtual trackball 00012 // interface 00013 00014 #ifndef _HOPCAMERAORBIT_H 00015 #define _HOPCAMERAORBIT_H 00016 00017 #ifdef H_PACK_8 00018 #pragma pack(push) 00019 #pragma pack(8) 00020 #endif 00021 00022 #include "HTools.h" 00023 #include "HBaseOperator.h" 00024 00025 00027 00039 class MVO_API HOpCameraOrbit : public HBaseOperator 00040 { 00041 public: 00049 HOpCameraOrbit (HBaseView* view, int DoRepeat=0, int DoCapture=1); 00050 virtual ~HOpCameraOrbit(); 00051 00055 virtual const char * GetName(); 00056 00057 00064 virtual int OnLButtonDown (HEventInfo &hevent); 00065 00066 00074 virtual int OnLButtonDownAndMove(HEventInfo &hevent); 00075 00076 00077 00083 virtual int OnLButtonUp (HEventInfo &hevent); 00084 00091 void SetLightFollowsCamera(bool follow){m_bLightFollowsCamera = follow;}; 00092 00094 bool GetLightFollowsCamera(){return m_bLightFollowsCamera;}; 00095 00101 void SetSceneBoundingBoxVis(bool vis){m_bSceneBoundingBoxVis = vis;}; 00102 00104 bool GetSceneBoundingBoxVis(){return m_bSceneBoundingBoxVis;}; 00105 00106 00112 virtual HBaseOperator * Clone(); 00113 00115 float m_Angle2, m_Angle1, m_Angle3; /*these variable should not be public*/ 00116 00118 bool GetSingleClick() { return m_bSingleClick; } 00119 00120 protected: 00121 00122 bool m_bLightFollowsCamera; 00123 bool m_bSceneBoundingBoxVis; 00124 bool m_bSingleClick; 00126 HPoint m_ptRealOld; 00128 private: 00129 HPoint m_ptRealFirst; 00130 }; 00131 00132 #ifdef H_PACK_8 00133 #pragma pack(pop) 00134 #endif 00135 00136 #endif 00137 00138 00139