MeshLib Documentation
Loading...
Searching...
No Matches
MRPointInAllSpaces.h
Go to the documentation of this file.
1#pragma once
2
3#include "MRViewerFwd.h"
5#include <MRMesh/MRVector3.h>
7#include <memory>
8
9namespace MR
10{
11
13{
14 // Screen space: window x[0, window.width] y[0, window.height]. [0,0] top-left corner of the window
15 // Z [0,1] - 0 is Dnear, 1 is Dfar
16 Vector3f screenSpace;
17
18 // Viewport space: viewport x[0, viewport.width] y[0, viewport.height]. [0,0] top-left corner of the viewport with that Id
19 // Z [0,1] - 0 is Dnear, 1 is Dfar
20 Vector3f viewportSpace;
22
23 // Clip space: viewport xyz[-1.f, 1.f]. [0, 0, -1] middle point of the viewport on Dnear. [0, 0, 1] middle point of the viewport on Dfar.
24 // [-1, -1, -1] is lower left Dnear corner; [1, 1, 1] is upper right Dfar corner
25 Vector3f clipSpace;
26
27 // Camera space: applied view affine transform to world points xyz[-inf, inf]. [0, 0, 0] middle point of the viewport on Dnear.
28 // X axis goes on the right. Y axis goes up. Z axis goes backward.
29 Vector3f cameraSpace;
30
31 // World space: applied model transform to Mesh(Point Cloud) vertices xyz[-inf, inf].
32 Vector3f worldSpace;
33
34 // Model space: coordinates as they stored in the model of VisualObject
35 std::shared_ptr<VisualObject> obj;
37};
38
39} //namespace MR
Definition MRViewportId.h:16
Definition MRCameraOrientationPlugin.h:8
Definition MRPointInAllSpaces.h:13
Vector3f screenSpace
Definition MRPointInAllSpaces.h:16
Vector3f worldSpace
Definition MRPointInAllSpaces.h:32
Vector3f cameraSpace
Definition MRPointInAllSpaces.h:29
Vector3f viewportSpace
Definition MRPointInAllSpaces.h:20
ViewportId viewportId
Definition MRPointInAllSpaces.h:21
std::shared_ptr< VisualObject > obj
Definition MRPointInAllSpaces.h:35
Vector3f clipSpace
Definition MRPointInAllSpaces.h:25
PointOnFace pof
Definition MRPointInAllSpaces.h:36
Definition MRMesh/MRPointOnFace.h:11