26#ifndef NL_GERBVIEW_PLUGIN_IMPL_H_
27#define NL_GERBVIEW_PLUGIN_IMPL_H_
31#define _WIN32_WINNT 0x0603
36#include <SpaceMouse/CNavigation3D.hpp>
39#include <wx/chartype.h>
55typedef TDx::SpaceMouse::Navigation3D::CNavigation3D
NAV_3D;
98 long GetViewFOV(
double& aFov )
const override;
104 long SetViewFrustum(
const navlib::frustum_t& aFrustum )
override;
111 long IsUserPivot( navlib::bool_t& aUserPivot )
const override;
115 long GetHitLookAt( navlib::point_t& aPosition )
const override;
127 long GetFrontView( navlib::matrix_t& aMatrix )
const override;
Hold a (potentially large) number of VIEW_ITEMs and renders them on a graphics device provided by the...
The class that implements the accessors and mutators required for 3D navigation in an PCB_DRAW_PANEL_...
long GetCoordinateSystem(navlib::matrix_t &aMatrix) const override
long GetHitLookAt(navlib::point_t &aPosition) const override
long SetSettingsChanged(long aChangeNumber) override
long GetIsViewPerspective(navlib::bool_t &aPerspective) const override
virtual ~NL_GERBVIEW_PLUGIN_IMPL()
long SetCameraMatrix(const navlib::matrix_t &aMatrix) override
long GetPivotPosition(navlib::point_t &aPosition) const override
long GetViewFOV(double &aFov) const override
long SetPivotVisible(bool aVisible) override
long SetSelectionTransform(const navlib::matrix_t &aMatrix) override
long GetViewFrustum(navlib::frustum_t &aFrustum) const override
long SetTransaction(long aValue) override
long GetIsViewRotatable(navlib::bool_t &isRotatable) const override
long SetHitLookFrom(const navlib::point_t &aPosition) override
long GetIsSelectionEmpty(navlib::bool_t &aEmpty) const override
long SetMotionFlag(bool aValue) override
long GetCameraMatrix(navlib::matrix_t &aMatrix) const override
long SetViewExtents(const navlib::box_t &aExtents) override
long SetCameraTarget(const navlib::point_t &aPosition) override
long GetFrontView(navlib::matrix_t &aMatrix) const override
long SetHitSelectionOnly(bool aSelectionOnly) override
long GetSelectionExtents(navlib::box_t &aExtents) const override
long SetHitDirection(const navlib::vector_t &aDirection) override
long SetViewFOV(double aFov) override
NL_GERBVIEW_PLUGIN_IMPL()
Initializes a new instance of the NL_GERBVIEW_PLUGIN_IMPL.
long GetPointerPosition(navlib::point_t &aPosition) const override
long SetPivotPosition(const navlib::point_t &aPosition) override
void exportCommandsAndImages()
Export the invocable actions and images to the 3Dconnexion UI.
void SetCanvas(EDA_DRAW_PANEL_GAL *aViewport)
Sets the viewport controlled by the SpaceMouse.
void SetFocus(bool aFocus)
Set the connection to the 3Dconnexion driver to the focus state so that 3DMouse data is routed here.
long SetViewFrustum(const navlib::frustum_t &aFrustum) override
long SetActiveCommand(std::string aCommandId) override
long SetHitAperture(double aAperture) override
long GetViewExtents(navlib::box_t &aExtents) const override
long IsUserPivot(navlib::bool_t &aUserPivot) const override
long GetPivotVisible(navlib::bool_t &aVisible) const override
long GetModelExtents(navlib::box_t &aExtents) const override
long GetSelectionTransform(navlib::matrix_t &aTransform) const override
EDA_DRAW_PANEL_GAL * m_viewport2D
static const wxChar * m_logTrace
Trace mask used to enable or disable the trace output of this class.
The Cairo implementation of the graphics abstraction layer.
TDx::SpaceMouse::Navigation3D::CNavigation3D NAV_3D