![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2012 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtVrfCircleManipulationHandler.h,v $ $Revision: 1.3 $ $State: Exp $ 00007 ******************************************************************************/ 00008 00011 00012 #pragma once 00013 00014 #include <vrfGuiCore/vrfGuiCore.h> 00015 #include <vrfGuiCore/DtVrfShapeManipulationHandler.h> 00016 #include <vrvCore/DtUniqueID.h> 00017 00018 #include <vlpi/entityType.h> 00019 00020 class DtVector; 00021 00022 namespace makVrf 00023 { 00024 class DtEnvironmentalFacadeCollection; 00025 00028 class DT_DLL_VRFGUICORE DtVrfCircleManipulationHandler : public DtVrfShapeManipulationHandler 00029 { 00030 00031 public: 00032 00033 DtVrfCircleManipulationHandler( makVrv::DtDe& ); 00034 virtual ~DtVrfCircleManipulationHandler(); 00035 00037 virtual void setXRadius(double); 00038 00040 virtual void setXRadiusWithHeading(double, double); 00041 virtual double xRadius() const; 00042 00044 virtual void setYRadius(double); 00045 virtual double yRadius() const; 00046 00049 virtual void setHeading(double); 00050 virtual double heading() const; 00051 00053 virtual bool isCircle() const; 00054 00056 virtual bool isEllipse() const; 00057 00061 virtual void setFreeRotate(bool); 00062 virtual bool freeRotate() const; 00063 00064 protected: 00065 virtual void initializeEventProcessor(); 00066 00068 virtual void setLocation(int index, const DtVector& location, bool resetOrigin = true); 00069 00070 virtual void slot_onHeadingChanged( double heading ); 00071 00073 virtual void slot_onPrincipalStateViewUpdated(DtVrlinkSimulatedBaseStateView* principalStateView, 00074 const makVrv::DtUniqueID& principalSceneObjectId ); 00075 00077 virtual void moveSelectedPoint(const DtVector& location, double altAboveGround); 00078 00079 virtual DtVrfObjectFacadeInterface* createLocalRepresentation( DtVrlinkSimulatedBaseStateView* editStateView, 00080 makVrv::DtUniqueID sceneObjectId, DtVrlinkSimulatedBaseStateView* principalStateView ); 00081 00083 virtual void objectCreated(DtVrfObjectFacadeInterface*, DtVrlinkSimulatedBaseStateView* editStateView); 00084 00086 virtual void setAttachObjectToMouse( bool flag ); 00087 00090 virtual DtVector setAltitudeToOrigin(const DtVector&) const; 00091 00093 virtual void slot_onPlace(makVrv::DtUniqueID id, const DtVector& location, double altAboveGround); 00094 00095 protected: 00096 bool myFreeRotate; 00097 }; 00098 00099 typedef DtVrfObjectManipulationHandlerCreator<DtVrfCircleManipulationHandler> 00100 DtVrfCircleManipulationHandlerCreator; 00101 }