SPH
SandboxGui.cpp
Go to the documentation of this file.
1 #include "Sph.h"
2 #include "gui/objects/Camera.h"
3 #include <iostream>
4 
5 using namespace Sph;
6 
7 int main(int, char**) {
8  CameraParams data;
9  data.imageSize = Pixel(1000, 1000);
10  data.target = Vector(0, 1, 1);
11  data.position = Vector(0, 0, 0);
12  FisheyeCamera camera(data);
13  Optional<CameraRay> ray1 = camera.unproject(Coords(500, 500));
14  std::cout << "Center = " << ray1->target - ray1->origin << std::endl;
15 
16  Optional<CameraRay> ray2 = camera.unproject(Coords(0, 500));
17  std::cout << "Left = " << ray2->target - ray2->origin << std::endl;
18 
19  Optional<CameraRay> ray3 = camera.unproject(Coords(500, 0));
20  std::cout << "Top = " << ray3->target - ray3->origin << std::endl;
21 
22  /*Optional<CameraRay> ray4 = camera.unproject(Coords(500, 250));
23  std::cout << "Half Top = " << ray4->target - ray4->origin << std::endl;*/
24  return 0;
25 }
Defines projection transforming 3D particles onto 2D screen.
int main(int, char **)
Definition: SandboxGui.cpp:7
Includes common headers.
BasicVector< Float > Vector
Definition: Vector.h:539
Fisheye camera.
Definition: Camera.h:330
virtual Optional< CameraRay > unproject(const Coords &coords) const override
Returns a ray in particle coordinates corresponding to given coordinates in the image plane.
Definition: Camera.cpp:453
Wrapper of type value of which may or may not be present.
Definition: Optional.h:23
Definition: MemoryPool.h:5
Pixel imageSize
Size of the image.
Definition: Camera.h:136
Vector position
Camera position in space.
Definition: Camera.h:139
Vector target
Look-at point in space.
Definition: Camera.h:142
Definition: Point.h:115
Definition: Point.h:101