VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Classes | Public Member Functions | Public Attributes | Protected Types | Protected Member Functions | Protected Attributes
makVrf::DtSphereEditor Class Reference

Editor for sphere objects. Will also create the visualizers (and manage) for the editing.

Inheritance diagram for makVrf::DtSphereEditor:
Inheritance graph
[legend]

Classes

struct  Sphere3D
 

Public Member Functions

 DtSphereEditor (makVrv::DtDe &)
 
virtual ~DtSphereEditor ()
 
virtual const std::string & className ()
 
virtual const DtVectorlocation () const
 
virtual void setRadius (double, bool reset=true)
 
virtual double radius () const
 
virtual void setLocation (const DtVector &, double)
 
virtual void setPlaced (bool)
 
bool placed () const
 
virtual void setRadiusRange (double bottom, double top)
 
virtual void getRadiusRange (double &bottom, double &top) const
 
virtual bool blockSignals (bool)
 
bool signalsBlocked () const
 
- Public Member Functions inherited from makVrf::DtVrfObjectManipulationEventProcessor
 DtVrfObjectManipulationEventProcessor (makVrv::DtDe &, const std::string &driverName="DtVrfObjectManipulationEventProcessor")
 
virtual ~DtVrfObjectManipulationEventProcessor ()
 
virtual void setCurrentHeading (double heading)
 
virtual void setCurrentPitch (double pitch)
 
virtual void setHeadingAllowed (bool)
 
virtual bool headingAllowed () const
 
virtual void setPitchAllowed (bool)
 
virtual bool pitchAllowed () const
 
virtual void setAltitudeAllowed (bool)
 
virtual bool altitudeAllowed () const
 
virtual double currentHeading () const
 
virtual double currentPitch () const
 
virtual void setEnabled (bool)
 
virtual void setEditing (bool)
 
virtual void setCreating (bool)
 
virtual void setAllowEventDefer (bool)
 
bool allowEventDefer () const
 
virtual void setIgnoreNextLeftButtonRelease (bool b)
 
virtual void setEditStartedByDoubleClick (bool b)
 
virtual void setDragTolerance (int)
 
virtual int dragTolerance () const
 
virtual void setFreehand (bool)
 
virtual bool freehand () const
 
void setDragToleranceTime (double)
 
double dragToleranceTime () const
 
virtual void setIgnoreList (const std::vector< makVrv::DtElementID > &)
 
const std::vector
< makVrv::DtElementID > & 
ignoreList () const
 
virtual void setEmbarkationAllowed (bool)
 
virtual bool embarkationAllowed () const
 
virtual bool isShiftKeyDown () const
 
virtual bool isControlKeyDown () const
 
virtual bool isFunctionKeyDown () const
 
virtual bool isAltKeyDown () const
 
virtual bool isLeftMouseButtonDown () const
 
virtual bool isRightMouseButtonDown () const
 
virtual bool isMiddleMouseButtonDown () const
 
- Public Member Functions inherited from makVrv::DtBasicEditingEventProcessor
 DtBasicEditingEventProcessor (DtInputDriver &inputDriver, DtDe &de, const std::string &className)
 
virtual ~DtBasicEditingEventProcessor ()
 
double currentAltitude () const
 
void setCurrentAltitude (double)
 
void setCurrentGroundLocation (const DtVector &)
 
virtual void changeAltitude (double mouseX, double mouseY)
 
virtual bool dragging () const
 
virtual void setAllowDragDrop (bool)
 
bool allowDragDrop () const
 
bool creating () const
 
virtual bool allowEdit (const DtSelectionManager::IdSet &, bool doubleClick) const
 
virtual bool allowContinueDrag (const DtVector &) const
 
double mouseX () const
 
double mouseY () const
 
- Public Member Functions inherited from makVrv::DtEventProcessorInterface
 DtEventProcessorInterface ()
 
virtual ~DtEventProcessorInterface ()
 
virtual bool processPinchGesture (const DtPinchGesture &ev, DtChannel &channel)
 
bool enabled () const
 

Public Attributes

boost::signals2::signal< void(const
DtVector &)> 
signal_sphereLocationChanged
 
boost::signals2::signal< void(double)> signal_radiusChanged
 
boost::signals2::signal< void(bool)> signal_placed
 
- Public Attributes inherited from makVrf::DtVrfObjectManipulationEventProcessor
boost::signals2::signal< void(double)> signal_headingChanged
 
boost::signals2::signal< void(double)> signal_pitchChanged
 
boost::signals2::signal< void(bool)> signal_cancel
 
- Public Attributes inherited from makVrv::DtBasicEditingEventProcessor
boost::signalslib::signal
< void(DtVector, double
altAboveGround)> 
signal_locationChanged
 
boost::signalslib::signal< void()> signal_cancel
 
boost::signalslib::signal
< void(DtUniqueID, DtVector,
double altAboveGround)> 
signal_place
 
boost::signalslib::signal
< void(DtVector, double)> 
signal_altitudeChanged
 
boost::signalslib::signal
< void(const
DtSelectionManager::IdSet
&, const DtVector &)> 
signal_dragStart
 
boost::signalslib::signal
< void(bool)> 
signal_altitudeIsDragging
 

Protected Types

typedef std::map
< makVrv::DtModelSetId,
Dt2DEllipseFacade * > 
Spheres2D
 
typedef std::map
< makVrv::DtModelSetId,
Sphere3D
Spheres3D
 
- Protected Types inherited from makVrf::DtVrfObjectManipulationEventProcessor
typedef struct
makVrf::DtVrfObjectManipulationEventProcessor::_SnapData 
SnapData
 

Protected Member Functions

virtual void modifyRadius (int steps)
 
virtual double multiplierForRadius (double change) const
 
virtual void create2DSphere (makVrv::DtModelSetId modelSet)
 
virtual void create3DSphere (makVrv::DtModelSetId modelSet)
 
virtual void placed (makVrv::DtUniqueID, const DtVector &, double)
 
virtual void changeHeading (double mouseX, double mouseY)
 
virtual void changeHeadingWithWheel (int wheelSteps)
 
virtual void cancel ()
 
virtual void altitudeChanged (const DtVector &, double altitude)
 
virtual void cleanup ()
 
- Protected Member Functions inherited from makVrf::DtVrfObjectManipulationEventProcessor
virtual bool checkModifiersReleased (const makVrv::DtKeyState::KeyModifier &ev, makVrv::DtChannel &channel, bool mouseDown)
 
virtual bool checkModifiersEnabled (const makVrv::DtMouseEvent &ev, makVrv::DtChannel &channel)
 
virtual
makVrv::DtIntersector::IntersectProperties 
intersectorPickMask () const
 
virtual bool processMouseEvent (const makVrv::DtMouseEvent &ev, makVrv::DtChannel &channel)
 
virtual bool processKeyboardEvent (const makVrv::DtKeyEvent &ev, makVrv::DtChannel &channel)
 
virtual void changeHeading (double mouseX, double mouseY, bool snapToGrid=false)
 
virtual void changePitch (double mouseX, double mouseY, bool snapToGrid=false)
 
virtual void changeAltitude (double mouseX, double mouseY, bool snapToGrid=false)
 
virtual void processMouseMove (makVrv::DtChannel &channel, const makVrv::DtMouseEvent &ev) override
 
virtual bool pick (makVrv::DtChannel &channel, double x, double y, makVrv::DtIntersectorResult &result, makVrv::DtIntersector::IntersectProperties props) const
 
virtual void cleanupTerrainDraggingVaraibles ()
 
virtual bool placePoint (makVrv::DtChannel &channel, const makVrv::DtMouseEvent &)
 
virtual void changeAltitudeWithWheel (int wheelSteps)
 
virtual void changePitchWithWheel (int wheelSteps)
 
virtual void cancel (bool escPressed)
 
virtual void startHeadingDrag (const makVrv::DtMouseEvent &, makVrv::DtChannel &channel)
 
virtual void startPitchDrag (const makVrv::DtMouseEvent &, makVrv::DtChannel &channel)
 
virtual void startAltitudeDrag (const makVrv::DtMouseEvent &, makVrv::DtChannel &channel)
 
virtual void setupLastSnapData ()
 
virtual void setupSnapTransforms ()
 
virtual void tick ()
 
virtual void executeDeferredMouseMoveEvent ()
 
virtual DtTaitBryan worldOrientation () const
 
- Protected Member Functions inherited from makVrv::DtBasicEditingEventProcessor
virtual void slot_coordinateSystemChanged ()
 

Protected Attributes

Spheres2D mySpheres2D
 
Spheres3D mySpheres3D
 
DtVector myCurrentLocation
 
double myBottom
 
double myTop
 
std::vector< std::pair< int,
double > > 
myRadii
 
bool mySignalsBlocked
 
bool myPlaced
 
- Protected Attributes inherited from makVrf::DtVrfObjectManipulationEventProcessor
DtTaitBryan myCurrentOrientation
 
bool myHeadingAllowed
 
bool myPitchAllowed
 
bool myAltitudeAllowed
 
bool myIsHeadingDragging
 
bool myIsPitchDragging
 
bool myMouseDragging
 
makVrv::DtSignalConnectionManager myConnections
 
DtVector myStartPoint
 
int myDragTolerance
 
double myDragToleranceTime
 
double myDragTime
 
DtTimedSection myDragTimer
 
bool myAllowEditing
 
bool myFreehand
 
std::vector< makVrv::DtElementIDmyIgnoreList
 
DtVector myStartingMousePosition
 
bool myEmbarkationAllowed
 
bool myIgnoreNextLeftButtonRelease
 
bool myIgnoreLeftMouseDown
 
bool myObserverEventProcessorWasEnabled
 
bool myEditStartedByDoubleClick
 
bool myIsLastEventProcessing
 
DtVector myObserverLocation
 
makVrv::DtMouseEvent myLastMouseEvent
 
bool mySetAtLeastOneEvent
 
bool myAllowEventDefer
 
boost::optional
< makVrv::DtMouseEvent
mySavedMouseMoveEvent
 
bool myDeferMouseMoveEvents
 
bool myRightMouseButtonDown
 
int myAltitudeDragCounter = 0
 
SnapData myLastSnap
 
- Protected Attributes inherited from makVrv::DtBasicEditingEventProcessor
DtDemyDe
 
DtInputDrivermyInputDriver
 
std::string myClassName
 
bool myIsAltitudeDragging
 
DtVector myCurrentGroundLocation
 
double myCurrentAltitude
 
bool myDragging
 
bool myAllowDragDrop
 
double myLastMouseX
 
double myLastMouseY
 
double myMousePositionX
 
double myMousePositionY
 
double myLastDeltaY
 
bool myCreating
 
bool myIgnoreNextLeftButtonRelease
 
DtIntersectorsContainermyIntersectors = nullptr
 
DtSignalConnectionManager myConnections
 
DtCoordinateSystemmyCoordinateSystem = nullptr
 
- Protected Attributes inherited from makVrv::DtEventProcessorInterface
bool myEnabled
 

Member Typedef Documentation

Constructor & Destructor Documentation

makVrf::DtSphereEditor::DtSphereEditor ( makVrv::DtDe )

CTOR.

virtual makVrf::DtSphereEditor::~DtSphereEditor ( )
virtual

virtual DTOR

Member Function Documentation

virtual const std::string& makVrf::DtSphereEditor::className ( )
virtual

Returns the name of the processor class, to be used for identifying an event processor.

Reimplemented from makVrf::DtVrfObjectManipulationEventProcessor.

virtual const DtVector& makVrf::DtSphereEditor::location ( ) const
virtual

Location is set/returned in local database coordinates.

virtual void makVrf::DtSphereEditor::setRadius ( double  ,
bool  reset = true 
)
virtual

Radius is set in meters.

virtual double makVrf::DtSphereEditor::radius ( ) const
virtual
virtual void makVrf::DtSphereEditor::setLocation ( const DtVector ,
double   
)
virtual
virtual void makVrf::DtSphereEditor::setPlaced ( bool  )
virtual

When this is true, will disconnect from signal_setLocation method.

bool makVrf::DtSphereEditor::placed ( ) const
inline
virtual void makVrf::DtSphereEditor::setRadiusRange ( double  bottom,
double  top 
)
virtual
virtual void makVrf::DtSphereEditor::getRadiusRange ( double bottom,
double top 
) const
virtual
virtual bool makVrf::DtSphereEditor::blockSignals ( bool  )
virtual

Returns current status.

bool makVrf::DtSphereEditor::signalsBlocked ( ) const
inline
virtual void makVrf::DtSphereEditor::modifyRadius ( int  steps)
protectedvirtual
virtual double makVrf::DtSphereEditor::multiplierForRadius ( double  change) const
protectedvirtual
virtual void makVrf::DtSphereEditor::create2DSphere ( makVrv::DtModelSetId  modelSet)
protectedvirtual
virtual void makVrf::DtSphereEditor::create3DSphere ( makVrv::DtModelSetId  modelSet)
protectedvirtual
virtual void makVrf::DtSphereEditor::placed ( makVrv::DtUniqueID  ,
const DtVector ,
double   
)
protectedvirtual
virtual void makVrf::DtSphereEditor::changeHeading ( double  mouseX,
double  mouseY 
)
protectedvirtual
virtual void makVrf::DtSphereEditor::changeHeadingWithWheel ( int  wheelSteps)
protectedvirtual

change heading with shift-mousewheel

Reimplemented from makVrf::DtVrfObjectManipulationEventProcessor.

virtual void makVrf::DtSphereEditor::cancel ( )
protectedvirtual

Call to cancel current operation.

Reimplemented from makVrf::DtVrfObjectManipulationEventProcessor.

virtual void makVrf::DtSphereEditor::altitudeChanged ( const DtVector ,
double  altitude 
)
protectedvirtual
virtual void makVrf::DtSphereEditor::cleanup ( )
protectedvirtual

Member Data Documentation

boost::signals2::signal<void (const DtVector&)> makVrf::DtSphereEditor::signal_sphereLocationChanged
boost::signals2::signal<void (double)> makVrf::DtSphereEditor::signal_radiusChanged
boost::signals2::signal<void (bool)> makVrf::DtSphereEditor::signal_placed
Spheres2D makVrf::DtSphereEditor::mySpheres2D
protected
Spheres3D makVrf::DtSphereEditor::mySpheres3D
protected
DtVector makVrf::DtSphereEditor::myCurrentLocation
protected
double makVrf::DtSphereEditor::myBottom
protected
double makVrf::DtSphereEditor::myTop
protected
std::vector<std::pair<int, double> > makVrf::DtSphereEditor::myRadii
protected
bool makVrf::DtSphereEditor::mySignalsBlocked
protected
bool makVrf::DtSphereEditor::myPlaced
protected

The documentation for this class was generated from the following file:

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)