cee::vis::CameraInputHandlerZoom

class CameraInputHandlerZoom : public CameraInputHandler

Camera input handler implementing standard Ceetron style Zoom navigation.

  • Left button: Pan

  • Right button: Rotate

  • Middle button or Left+Right: Zoom

Public Functions

CameraInputHandlerZoom(bool updateEyePositionOnSetRotationPoint = true)

Creates the Ceetron Zoom Navigation handler.

If updateEyePositionOnSetRotationPoint is set to true, the eye position will be updated to keep the distance from eye -> rotation point if we’re doing zoom navigation to avoid distorted views.

virtual void wheelEvent(const WheelEvent &theWheelEvent)

Processes the mouse wheel event.

This is typically called from the viewer (platform dependent class derived from cee::vis::Viewer) based on mouse input.

virtual void wheelEvent(const WheelEvent &theWheelEvent, const cee::Vec3d &pos)

Processes the mouse wheel event.

This is typically called from the viewer (platform dependent class derived from cee::vis::Viewer) based on mouse input.

This wheel event also takes a position position which is used for the ‘zoom to cursor’ feature. For normal zoom, use the ordinary wheelEvent() function.

virtual void setRotationPoint(const Vec3d &rotationPoint)

Sets the rotation point.

If updateEyePositionOnSetRotationPoint was set to true in the constructor, the eye point will be updated to keep the distance from the rotation point.

Protected Functions

virtual NavigationType navigationTypeFromInputState(MouseButtons mouseButtons, KeyboardModifiers keyboardModifiers) const

Implements Ceetron style Zoom Navigation.

virtual NavigationType wheelNavigationType() const

Returns ZOOM.