32 #ifndef SPIRE_APPSPECIFIC_SCIRUN_SRUNCAMERA_H
33 #define SPIRE_APPSPECIFIC_SCIRUN_SRUNCAMERA_H
37 #include <spire/src/Common.h>
38 #include <arc-look-at/ArcLookAt.hpp>
90 void buildTransform();
91 spire::V2 calculateScreenSpaceCoords(
const glm::ivec2& mousePos);
107 std::shared_ptr<spire::Interface> mSpire;
109 std::shared_ptr<CPM_LOOK_AT_NS::ArcLookAt> mArcLookAt;
Basic camera class for spire, mimicking SCIRun v4.
Definition: SRCamera.h:44
void setAsPerspective()
Sets this camera to use a perspective projection transformation.
Definition: SRCamera.cc:63
MouseButton
Definition: SRInterface.h:68
static float getDefaultZFar()
Definition: SRCamera.h:85
const spire::M44 & getViewToProjection() const
Definition: SRCamera.h:57
void setAsOrthographic(float halfWidth, float halfHeight)
Sets this camera to use an orthographic projection transformation.
Definition: SRCamera.cc:73
const spire::M44 & getWorldToProjection() const
Definition: SRCamera.h:54
static float getDefaultFOVY()
Definition: SRCamera.h:83
void mouseMoveEvent(const glm::ivec2 &pos, SRInterface::MouseButton btn)
Handle mouse movement.
Definition: SRCamera.cc:118
SRCamera(SRInterface &iface, std::shared_ptr< spire::Interface > spire)
Definition: SRCamera.cc:41
const spire::M44 & getViewToWorld() const
Definition: SRCamera.h:56
void doAutoView(const Core::Geometry::BBox &bbox)
Perform autoview.
Definition: SRCamera.cc:146
const spire::M44 & getWorldToView() const
Definition: SRCamera.h:55
Definition: SRInterface.h:54
static float getDefaultZNear()
Definition: SRCamera.h:84
void mouseWheelEvent(int32_t delta)
Handle mouse wheel event.
Definition: SRCamera.cc:137
void applyTransform()
Definition: SRCamera.cc:93
void mouseDownEvent(const glm::ivec2 &pos, SRInterface::MouseButton btn)
Handle mouse down.
Definition: SRCamera.cc:111
virtual ~SRCamera()
Definition: SRCamera.cc:58