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 // HOpConstructCylinder.h : interface of the HOpConstructCylinder class 00011 // Constructs a cylinder using left mouse down and drag 00012 00013 #ifndef _HOPConstructCYLINDER_H 00014 #define _HOPConstructCYLINDER_H 00015 00016 #ifdef H_PACK_8 00017 #pragma pack(push) 00018 #pragma pack(8) 00019 #endif 00020 00021 #include "HTools.h" 00022 #include "HBaseOperator.h" 00023 00025 00040 class MVO_API HOpConstructCylinder : public HBaseOperator 00041 { 00042 private: 00043 void GenerateLinesThroughCircle( HPoint const ¢er, float radius ); 00044 00045 protected: 00046 float m_height; 00047 float m_RadiusLength; 00048 HVector m_WorldRadiusVector; 00059 void ConstructWireframeCylinder(HPoint center, float radius, float height); 00060 00061 public: 00069 HOpConstructCylinder (HBaseView* view, int DoRepeat=0, int DoCapture=1); 00070 virtual ~HOpConstructCylinder(); 00071 00072 00076 virtual const char * GetName(); 00077 00086 virtual int OnLButtonDown(HEventInfo &hevent); 00087 00094 virtual int OnNoButtonDownAndMove(HEventInfo &hevent); 00095 00103 virtual int OnLButtonDownAndMove(HEventInfo &hevent); 00104 00111 virtual int OnLButtonUp(HEventInfo &hevent); 00112 00118 virtual HBaseOperator * Clone(); 00119 }; 00120 00121 #ifdef H_PACK_8 00122 #pragma pack(pop) 00123 #endif 00124 00125 #endif 00126 00127 00128