VR-Forces 4.5 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
vrfBoxManipulationHandler.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
9 #pragma once
10 
11 #include <vrfGuiCore/vrfGuiCore.h>
13 #include <vrvCore/DtUniqueID.h>
14 
15 #include <vlpi/entityType.h>
16 
17 #include <matrix/vlVector.h>
18 
19 namespace makVrv
20 {
21  class DtCoordinateSystem;
22 }
23 
24 namespace makVrf
25 {
26  class DtEnvironmentalFacadeCollection;
27 
31  {
32 
33  public:
34 
36  virtual ~DtVrfBoxManipulationHandler();
37 
38  virtual HandlerType type() const { return Box; };
39 
41  virtual double length() const;
42 
44  virtual void setLength(double);
45 
47  virtual double width() const;
48 
50  virtual void setWidth(double);
51 
53  virtual void setDimensions(double length, double width, DtVrfObjectFacadeInterface* = 0);
54 
55  virtual std::vector<DtVector> createBox(
56  const DtVector& origin, double length, double width, double orientation);
57 
58  virtual void setLocation(const DtVector& location, double altAboveGround);
59 
60  virtual double maximumWidth() const;
61  virtual double maximumLength() const;
62 
65  virtual void setMouseClickChangesOrigin(bool);
66 
68  virtual bool mouseClickChangesOrigin() const;
69 
70  protected:
71  virtual DtVector clampLength(const DtVector& source, int toIndex, DtEnvironmentalFacadeCollection*) const;
72  virtual DtVector clampWidth(const DtVector& source, int toIndex, DtEnvironmentalFacadeCollection*) const;
73 
74  virtual void initializeEventProcessor();
75 
77  virtual void setLocation(int index, const DtVector& location, bool resetOrigin = true);
78 
80  virtual void objectCreated(DtVrfObjectFacadeInterface*);
81 
83  virtual void preVisualization(DtVrfObjectFacadeInterface*, DtVrlinkSimulatedBaseStateView*);
84 
86  virtual void slot_onPlace(makVrv::DtUniqueID id, const DtVector& location, double altAboveGround);
87 
89  virtual void setXTheSame(const DtVector& source, int index, DtEnvironmentalFacadeCollection* efc = 0);
90 
92  virtual void setYTheSame(const DtVector& source, int index, DtEnvironmentalFacadeCollection* efc = 0);
93 
94  virtual void getMinMaxVertices(const DtEntityType& creatingType, int& minVert, int& maxVert) const;
95 
97  virtual void slot_onEditComplete(makVrv::DtUniqueID id, const DtVector& location, double altAboveGround);
98 
99  virtual void slot_onLocationChanged( const DtVector& location, double altAboveGround );
100 
101  virtual void slot_onHeadingChanged( double heading );
102  virtual void initializeInterfaceForEdit(DtVrfObjectFacadeInterface* iFace, makVrv::DtUniqueID sceneObjectId,
103  const makVrv::DtVrlinkSimulatedBaseState& editState, const DtVector& principalLocation, const DtTaitBryan& principalOrientation);
104  virtual DtVrfObjectFacadeInterface* createLocalRepresentation( DtVrlinkSimulatedBaseStateView* editStateView,
105  makVrv::DtUniqueID sceneObjectId, DtVrlinkSimulatedBaseStateView* principalStateView );
106 
107  protected:
109  };
110 
113 }

Document ID: Generated on Thu Mar 23 18:54:12 EDT 2017 from SVN revision 174804
Copyright © 2005-2017 VT MÄK. All Rights Reserved (www.mak.com)