OpenLexocad  27.1
SceneView.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <Geom/Vec.h>
4 #include <Geom/Pnt.h>
5 #include <Base/String.h>
6 
7 namespace Gui
8 {
9  class SceneView;
10 }
11 namespace OpenLxUI
12 {
19  class LX_OPENLXUI_EXPORT SceneView
20  {
21  public:
22  SceneView(void);
23  SceneView(const Gui::SceneView& aSceneView);
24  ~SceneView(void);
25 
26  Base::String getUserName() const;
27  void setUserName(const Base::String& aUserName);
28 
29  Geom::Pnt getPosition() const;
30  void setPosition(const Geom::Pnt& aPosition);
31  void updatePosition(const Geom::Pnt& aPosition);
32  void getOrientation(Geom::Vec& aAxis, double& aAngle) const;
33  void setOrientation(const Geom::Vec& aAxis, double aAngle);
34  double getAspectRatio() const;
35  void setAspectRatio(double aAspectRatio);
36  double getNearDistance() const;
37  void setNearDistance(double aNearDistance);
38  double getFarDistance() const;
39  void setFarDistance(double aFarDistance);
40  double getFocalDistance() const;
41  void setFocalDistance(double aFocalDistance);
42  double getHeight() const;
43  void setHeight(double aHeight);
44  double getHeightAngle() const;
45  void setHeightAngle(double aHeightAngle);
46  void setPerspectiveView(bool aOn);
47  bool isPerspectiveView() const;
48  Geom::Pnt getViewPoint() const;
49  void setViewPoint(const Geom::Pnt& aViewPoint);
50 
51  void __getInternal__(Gui::SceneView& aSceneView) const;
52  private:
53  std::shared_ptr<Gui::SceneView> mPimpl;
54  };
55 
56 } // namespace Gui
Defines a non-persistent 3D Cartesian point.
Definition: Pnt.h:43
Definition: SceneView.h:19
A Utf-16 (windows) or ucs4 (unix) encoded string class.
Definition: String.h:23
Definition: ActiveEdge.h:25
Defines a non-persistent vector in 3D space.
Definition: Vec.h:44