Rumba C++ SDK
CameraContext.h
Go to the documentation of this file.
1 /*
2 
3  *
4  ***
5  *****
6  ********************* Mercenaries Engineering SARL
7  ***************** Copyright (C) 2018
8  *************
9  ********* http://www.mercenaries-engineering.com
10  ***********
11  **** ****
12  ** **
13 
14 */
15 #pragma once
16 
17 #include "Value.h"
18 
19  namespace maquina
20  {
22 
24  {
25  public:
26 
28  const Imath::M44d& camera_to_world() const;
29 
31  const Imath::M44d& projection() const;
32 
34  Imath::V2i resolution() const;
35 
37  Imath::V3d pixel_to_world(const Imath::V2i& screen_pos, double depth) const;
38 
40  Imath::V3d world_to_pixel(const Imath::V3d& world_pos) const;
41 
42  float near_plane() const;
43  float far_plane() const;
44 
46  {
47  public:
49  {
50  public:
51  ~Iterator();
52 
53  Value scene_graph() const;
54 
55  bool operator!=(const Iterator& other) const;
56  Iterator& operator++();
57 
59  Iterator(void *impl);
61  void* _impl;
62  };
63 
64  Iterator begin();
65  Iterator end();
66  };
67 
68  const SceneGraphs visible_scene_graphs() const;
69 
71  void* _impl;
72 
74  CameraContext(void *impl) : _impl(impl) {}
75  };
76  }
Definition: CameraContext.h:48
Definition: ImathFrame.h:42
Definition: ImathFrame.h:43
This class provides viewport space conversion services.
Definition: CameraContext.h:23
Definition: CameraContext.h:45
This version of the SDK is unstable, i-e, it may change with no warning.
Definition: AddCurveAction.h:20
#define MAQUINA_EXPORT
Definition: Export.h:31
bool operator!=(const C *str, const StringViewBase< C, STDS > &sv) noexcept
Definition: StringView.h:305
Definition: ImathVec.h:61
Base class of all Rumba values.
Definition: Value.h:34