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: d255f6626fce43665195e4d60a5483eb48b239dd $ 00013 // 00014 00015 // HOpConstructCylinder.h : interface of the HOpConstructCylinder class 00016 // Constructs a cylinder using left mouse down and drag 00017 00018 #ifndef _HOPConstructCYLINDER_H 00019 #define _HOPConstructCYLINDER_H 00020 00021 #ifdef H_PACK_8 00022 #pragma pack(push) 00023 #pragma pack(8) 00024 #endif 00025 00026 #include "HTools.h" 00027 #include "HBaseOperator.h" 00028 00030 00045 class MVO_API HOpConstructCylinder : public HBaseOperator 00046 { 00047 private: 00048 void GenerateLinesThroughCircle( HPoint const ¢er, float radius ); 00049 00050 protected: 00051 float m_height; 00052 float m_RadiusLength; 00053 HVector m_WorldRadiusVector; 00064 void ConstructWireframeCylinder(HPoint center, float radius, float height); 00065 00066 public: 00074 HOpConstructCylinder (HBaseView* view, int DoRepeat=0, int DoCapture=1); 00075 virtual ~HOpConstructCylinder(); 00076 00077 00081 virtual const char * GetName(); 00082 00091 virtual int OnLButtonDown(HEventInfo &hevent); 00092 00099 virtual int OnNoButtonDownAndMove(HEventInfo &hevent); 00100 00108 virtual int OnLButtonDownAndMove(HEventInfo &hevent); 00109 00116 virtual int OnLButtonUp(HEventInfo &hevent); 00117 00123 virtual HBaseOperator * Clone(); 00124 }; 00125 00126 #ifdef H_PACK_8 00127 #pragma pack(pop) 00128 #endif 00129 00130 #endif 00131 00132 00133