| 
    KiCad PCB EDA Suite
    
   | 
 
The class that implements the accessors and mutators required for 3D navigation in an PCB_DRAW_PANEL_GAL using a SpaceMouse. More...
#include <nl_pcbnew_plugin_impl.h>
 Public Member Functions | |
| NL_PCBNEW_PLUGIN_IMPL (PCB_DRAW_PANEL_GAL *aViewport) | |
| Initializes a new instance of the NL_PCBNEW_PLUGIN_IMPL.   | |
| virtual | ~NL_PCBNEW_PLUGIN_IMPL () | 
| void | SetFocus (bool aFocus) | 
| Set the connection to the 3Dconnexion driver to the focus state so that 3DMouse data is routed here.   | |
Private Member Functions | |
| void | exportCommandsAndImages () | 
| Export the invocable actions and images to the 3Dconnexion UI.   | |
| long | GetCameraMatrix (navlib::matrix_t &aMatrix) const override | 
| long | GetPointerPosition (navlib::point_t &aPosition) const override | 
| long | GetViewExtents (navlib::box_t &aExtents) const override | 
| long | GetViewFOV (double &aFov) const override | 
| long | GetViewFrustum (navlib::frustum_t &aFrustum) const override | 
| long | GetIsViewPerspective (navlib::bool_t &aPerspective) const override | 
| long | SetCameraMatrix (const navlib::matrix_t &aMatrix) override | 
| long | SetViewExtents (const navlib::box_t &aExtents) override | 
| long | SetViewFOV (double aFov) override | 
| long | SetViewFrustum (const navlib::frustum_t &aFrustum) override | 
| long | GetModelExtents (navlib::box_t &aExtents) const override | 
| long | GetSelectionExtents (navlib::box_t &aExtents) const override | 
| long | GetSelectionTransform (navlib::matrix_t &aTransform) const override | 
| long | GetIsSelectionEmpty (navlib::bool_t &aEmpty) const override | 
| long | SetSelectionTransform (const navlib::matrix_t &aMatrix) override | 
| long | GetPivotPosition (navlib::point_t &aPosition) const override | 
| long | IsUserPivot (navlib::bool_t &aUserPivot) const override | 
| long | SetPivotPosition (const navlib::point_t &aPosition) override | 
| long | GetPivotVisible (navlib::bool_t &aVisible) const override | 
| long | SetPivotVisible (bool aVisible) override | 
| long | GetHitLookAt (navlib::point_t &aPosition) const override | 
| long | SetHitAperture (double aAperture) override | 
| long | SetHitDirection (const navlib::vector_t &aDirection) override | 
| long | SetHitLookFrom (const navlib::point_t &aPosition) override | 
| long | SetHitSelectionOnly (bool aSelectionOnly) override | 
| long | SetActiveCommand (std::string aCommandId) override | 
| long | SetSettingsChanged (long aChangeNumber) override | 
| long | SetMotionFlag (bool aValue) override | 
| long | SetTransaction (long aValue) override | 
| long | SetCameraTarget (const navlib::point_t &aPosition) override | 
| long | GetFrontView (navlib::matrix_t &aMatrix) const override | 
| long | GetCoordinateSystem (navlib::matrix_t &aMatrix) const override | 
| long | GetIsViewRotatable (navlib::bool_t &isRotatable) const override | 
Private Attributes | |
| PCB_DRAW_PANEL_GAL * | m_viewport2D | 
| KIGFX::PCB_VIEW * | m_view | 
| bool | m_isMoving | 
| double | m_viewportWidth | 
| VECTOR2D | m_viewPosition | 
Static Private Attributes | |
| static const wxChar * | m_logTrace = wxT( "KI_TRACE_NL_PCBNEW_PLUGIN" ) | 
| Trace mask used to enable or disable the trace output of this class.   | |
The class that implements the accessors and mutators required for 3D navigation in an PCB_DRAW_PANEL_GAL using a SpaceMouse.
Definition at line 61 of file nl_pcbnew_plugin_impl.h.
| NL_PCBNEW_PLUGIN_IMPL::NL_PCBNEW_PLUGIN_IMPL | ( | PCB_DRAW_PANEL_GAL * | aViewport | ) | 
Initializes a new instance of the NL_PCBNEW_PLUGIN_IMPL.
| aViewport | is the viewport to be navigated. | 
Definition at line 57 of file nl_pcbnew_plugin_impl.cpp.
References exportCommandsAndImages(), m_isMoving, m_view, m_viewport2D, and m_viewportWidth.
      
  | 
  virtual | 
Definition at line 78 of file nl_pcbnew_plugin_impl.cpp.
      
  | 
  private | 
Export the invocable actions and images to the 3Dconnexion UI.
Definition at line 130 of file nl_pcbnew_plugin_impl.cpp.
References add_category(), ACTION_MANAGER::GetActionList(), TOOL_ACTION::GetDescription(), TOOL_ACTION::GetIcon(), TOOL_ACTION::GetMenuLabel(), TOOL_ACTION::GetName(), TOOL_ACTION::GetToolName(), image, INVALID_BITMAP, KiBitmap(), m_logTrace, and name.
Referenced by NL_PCBNEW_PLUGIN_IMPL().
      
  | 
  overrideprivate | 
Definition at line 221 of file nl_pcbnew_plugin_impl.cpp.
References m_view, and m_viewPosition.
      
  | 
  overrideprivate | 
Definition at line 368 of file nl_pcbnew_plugin_impl.cpp.
      
  | 
  overrideprivate | 
Definition at line 376 of file nl_pcbnew_plugin_impl.cpp.
      
  | 
  overrideprivate | 
Definition at line 533 of file nl_pcbnew_plugin_impl.cpp.
      
  | 
  overrideprivate | 
Definition at line 383 of file nl_pcbnew_plugin_impl.cpp.
References empty().
      
  | 
  overrideprivate | 
Definition at line 277 of file nl_pcbnew_plugin_impl.cpp.
      
  | 
  overrideprivate | 
Definition at line 390 of file nl_pcbnew_plugin_impl.cpp.
      
  | 
  overrideprivate | 
Definition at line 344 of file nl_pcbnew_plugin_impl.cpp.
References PCB_BASE_FRAME::GetDocumentExtents(), BOX2< Vec >::GetEnd(), BOX2< Vec >::GetHeight(), BOX2< Vec >::GetOrigin(), BOX2< Vec >::GetWidth(), m_view, m_viewport2D, and BOX2< Vec >::Normalize().
      
  | 
  overrideprivate | 
Definition at line 503 of file nl_pcbnew_plugin_impl.cpp.
      
  | 
  overrideprivate | 
Definition at line 521 of file nl_pcbnew_plugin_impl.cpp.
      
  | 
  overrideprivate | 
Definition at line 241 of file nl_pcbnew_plugin_impl.cpp.
References m_view, m_viewport2D, VECTOR2< T >::x, and VECTOR2< T >::y.
      
  | 
  overrideprivate | 
Definition at line 485 of file nl_pcbnew_plugin_impl.cpp.
      
  | 
  overrideprivate | 
Definition at line 491 of file nl_pcbnew_plugin_impl.cpp.
      
  | 
  overrideprivate | 
Definition at line 256 of file nl_pcbnew_plugin_impl.cpp.
References BOX2< Vec >::GetHeight(), BOX2< Vec >::GetWidth(), m_view, m_viewport2D, m_viewportWidth, and scale.
      
  | 
  overrideprivate | 
Definition at line 473 of file nl_pcbnew_plugin_impl.cpp.
      
  | 
  overrideprivate | 
Definition at line 479 of file nl_pcbnew_plugin_impl.cpp.
      
  | 
  overrideprivate | 
Definition at line 509 of file nl_pcbnew_plugin_impl.cpp.
      
  | 
  overrideprivate | 
Definition at line 397 of file nl_pcbnew_plugin_impl.cpp.
References ACTION_MANAGER::GetActionList(), TOOL_MANAGER::GetActionManager(), ACTION_MANAGER::GetCondition(), TOOLS_HOLDER::GetCurrentSelection(), TOOL_ACTION::GetName(), TOOL_MANAGER::GetToolHolder(), TOOLS_HOLDER::GetToolManager(), m_viewport2D, and TOOL_MANAGER::RunAction().
      
  | 
  overrideprivate | 
Definition at line 285 of file nl_pcbnew_plugin_impl.cpp.
References equals(), m_view, m_viewPosition, and result.
      
  | 
  overrideprivate | 
Definition at line 563 of file nl_pcbnew_plugin_impl.cpp.
| void NL_PCBNEW_PLUGIN_IMPL::SetFocus | ( | bool | aFocus | ) | 
Set the connection to the 3Dconnexion driver to the focus state so that 3DMouse data is routed here.
| aFocus | is true to set the connection active. | 
Definition at line 84 of file nl_pcbnew_plugin_impl.cpp.
References m_logTrace.
      
  | 
  overrideprivate | 
Definition at line 539 of file nl_pcbnew_plugin_impl.cpp.
      
  | 
  overrideprivate | 
Definition at line 545 of file nl_pcbnew_plugin_impl.cpp.
      
  | 
  overrideprivate | 
Definition at line 551 of file nl_pcbnew_plugin_impl.cpp.
      
  | 
  overrideprivate | 
Definition at line 557 of file nl_pcbnew_plugin_impl.cpp.
      
  | 
  overrideprivate | 
Definition at line 456 of file nl_pcbnew_plugin_impl.cpp.
References m_isMoving.
      
  | 
  overrideprivate | 
Definition at line 515 of file nl_pcbnew_plugin_impl.cpp.
      
  | 
  overrideprivate | 
Definition at line 527 of file nl_pcbnew_plugin_impl.cpp.
      
  | 
  overrideprivate | 
Definition at line 497 of file nl_pcbnew_plugin_impl.cpp.
      
  | 
  overrideprivate | 
Definition at line 450 of file nl_pcbnew_plugin_impl.cpp.
      
  | 
  overrideprivate | 
Definition at line 464 of file nl_pcbnew_plugin_impl.cpp.
References L, and m_viewport2D.
      
  | 
  overrideprivate | 
Definition at line 309 of file nl_pcbnew_plugin_impl.cpp.
References equals(), m_view, m_viewportWidth, result, and scale.
      
  | 
  overrideprivate | 
Definition at line 332 of file nl_pcbnew_plugin_impl.cpp.
      
  | 
  overrideprivate | 
Definition at line 338 of file nl_pcbnew_plugin_impl.cpp.
      
  | 
  private | 
Definition at line 126 of file nl_pcbnew_plugin_impl.h.
Referenced by NL_PCBNEW_PLUGIN_IMPL(), and SetMotionFlag().
      
  | 
  private | 
Definition at line 125 of file nl_pcbnew_plugin_impl.h.
Referenced by GetCameraMatrix(), GetModelExtents(), GetPointerPosition(), GetViewExtents(), NL_PCBNEW_PLUGIN_IMPL(), SetCameraMatrix(), and SetViewExtents().
      
  | 
  private | 
Definition at line 124 of file nl_pcbnew_plugin_impl.h.
Referenced by GetModelExtents(), GetPointerPosition(), GetViewExtents(), NL_PCBNEW_PLUGIN_IMPL(), SetActiveCommand(), and SetTransaction().
      
  | 
  mutableprivate | 
Definition at line 127 of file nl_pcbnew_plugin_impl.h.
Referenced by GetViewExtents(), NL_PCBNEW_PLUGIN_IMPL(), and SetViewExtents().
      
  | 
  mutableprivate | 
Definition at line 128 of file nl_pcbnew_plugin_impl.h.
Referenced by GetCameraMatrix(), and SetCameraMatrix().