scimesh 0.3.2
Headless CPU-only 3D software renderer for scientific mesh visualization
Loading...
Searching...
No Matches
camera.cpp File Reference
#include <scimesh/camera.h>
#include <glm/gtc/matrix_transform.hpp>
#include <glm/gtc/constants.hpp>
#include <cmath>
#include <stdexcept>
Include dependency graph for camera.cpp:

Go to the source code of this file.

Namespaces

namespace  scimesh
 

Functions

Camera scimesh::camera_look_at (const Vec3 &center, float radius, const Vec3 &direction, const Vec3 &up, float fov_degrees, float margin=1.1f, ProjectionType projection=ProjectionType::PERSPECTIVE)
 Create a camera that looks at a point from a given distance and direction.
 
Camera scimesh::camera_fit_scene (const Scene &scene, const Vec3 &direction, const Vec3 &up, float fov_degrees, float margin=1.1f, ProjectionType projection=ProjectionType::PERSPECTIVE)
 Create a camera that automatically frames an entire Scene.
 
Camera scimesh::camera_fit_mesh (const Mesh &mesh, const Vec3 &direction, const Vec3 &up, float fov_degrees, float margin=1.1f, ProjectionType projection=ProjectionType::PERSPECTIVE)
 Create a camera that automatically frames a single Mesh.
 
Camera scimesh::camera_orbit (const Camera &camera, const Vec3 &axis, float angle_degrees)
 Orbit the camera around its look-at point.