KiCad PCB EDA Suite
Loading...
Searching...
No Matches
NL_FOOTPRINT_PROPERTIES_PLUGIN_IMPL Class Reference

The class that adjusts NL_3D_VIEWER_PLUGIN_IMPL implementation for 3D Model preview in footprint properties dialog. More...

#include <nl_footprint_properties_plugin_impl.h>

Inheritance diagram for NL_FOOTPRINT_PROPERTIES_PLUGIN_IMPL:
NL_3D_VIEWER_PLUGIN_IMPL

Public Member Functions

 NL_FOOTPRINT_PROPERTIES_PLUGIN_IMPL (EDA_3D_CANVAS *aCanvas)
 Initialize a new instance of the NL_FOOTPRINT_PROPERTIES_PLUGIN.
 
void SetFocus (bool aFocus=true)
 Set the connection to the 3Dconnexion driver to the focus state so that 3DMouse data is routed here.
 
EDA_3D_CANVAS * GetCanvas () const
 Get the m_canvas pointer.
 
void Connect ()
 Connect plugin implementation to the driver.
 

Private Member Functions

long GetModelExtents (navlib::box_t &extents) const override
 Get Footprint 3D Model extents.
 
void exportCommandsAndImages () override
 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 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

EDA_3D_CANVAS * m_canvas
 
TRACK_BALL * m_camera
 
bool m_capIsMoving
 
double m_newWidth
 
SFVEC3F m_rayOrigin
 
SFVEC3F m_rayDirection
 
glm::mat4 m_cameraMatrix
 

Static Private Attributes

static const wxChar * m_logTrace
 Trace mask used to enable or disable the trace output of this class.
 

Detailed Description

The class that adjusts NL_3D_VIEWER_PLUGIN_IMPL implementation for 3D Model preview in footprint properties dialog.

Definition at line 37 of file nl_footprint_properties_plugin_impl.h.

Constructor & Destructor Documentation

◆ NL_FOOTPRINT_PROPERTIES_PLUGIN_IMPL()

NL_FOOTPRINT_PROPERTIES_PLUGIN_IMPL::NL_FOOTPRINT_PROPERTIES_PLUGIN_IMPL ( EDA_3D_CANVAS * aCanvas)

Initialize a new instance of the NL_FOOTPRINT_PROPERTIES_PLUGIN.

Parameters
aCanvasis the viewport to be navigated.

Definition at line 48 of file nl_footprint_properties_plugin_impl.cpp.

References NL_3D_VIEWER_PLUGIN_IMPL::NL_3D_VIEWER_PLUGIN_IMPL().

Member Function Documentation

◆ Connect()

void NL_3D_VIEWER_PLUGIN_IMPL::Connect ( )
inherited

Connect plugin implementation to the driver.

Definition at line 113 of file nl_3d_viewer_plugin_impl.cpp.

References exportCommandsAndImages(), and SafeNavlibInit().

◆ exportCommandsAndImages()

void NL_FOOTPRINT_PROPERTIES_PLUGIN_IMPL::exportCommandsAndImages ( )
overrideprivatevirtual

◆ GetCameraMatrix()

long NL_3D_VIEWER_PLUGIN_IMPL::GetCameraMatrix ( navlib::matrix_t & aMatrix) const
overrideprivateinherited

Definition at line 247 of file nl_3d_viewer_plugin_impl.cpp.

References m_camera, and m_cameraMatrix.

◆ GetCanvas()

EDA_3D_CANVAS * NL_3D_VIEWER_PLUGIN_IMPL::GetCanvas ( ) const
inherited

Get the m_canvas pointer.

Definition at line 107 of file nl_3d_viewer_plugin_impl.cpp.

References m_canvas.

Referenced by NL_FOOTPRINT_PROPERTIES_PLUGIN_IMPL::GetModelExtents().

◆ GetCoordinateSystem()

long NL_3D_VIEWER_PLUGIN_IMPL::GetCoordinateSystem ( navlib::matrix_t & aMatrix) const
overrideprivateinherited

Definition at line 649 of file nl_3d_viewer_plugin_impl.cpp.

◆ GetFrontView()

long NL_3D_VIEWER_PLUGIN_IMPL::GetFrontView ( navlib::matrix_t & aMatrix) const
overrideprivateinherited

Definition at line 642 of file nl_3d_viewer_plugin_impl.cpp.

◆ GetHitLookAt()

long NL_3D_VIEWER_PLUGIN_IMPL::GetHitLookAt ( navlib::point_t & aPosition) const
overrideprivateinherited

Definition at line 503 of file nl_3d_viewer_plugin_impl.cpp.

References RAY::at(), RAY::Init(), m_canvas, m_rayDirection, and m_rayOrigin.

◆ GetIsSelectionEmpty()

long NL_3D_VIEWER_PLUGIN_IMPL::GetIsSelectionEmpty ( navlib::bool_t & aEmpty) const
overrideprivateinherited

Definition at line 437 of file nl_3d_viewer_plugin_impl.cpp.

References empty().

◆ GetIsViewPerspective()

long NL_3D_VIEWER_PLUGIN_IMPL::GetIsViewPerspective ( navlib::bool_t & aPerspective) const
overrideprivateinherited

Definition at line 312 of file nl_3d_viewer_plugin_impl.cpp.

References m_camera, and PERSPECTIVE.

◆ GetIsViewRotatable()

long NL_3D_VIEWER_PLUGIN_IMPL::GetIsViewRotatable ( navlib::bool_t & isRotatable) const
overrideprivateinherited

Definition at line 657 of file nl_3d_viewer_plugin_impl.cpp.

◆ GetModelExtents()

long NL_FOOTPRINT_PROPERTIES_PLUGIN_IMPL::GetModelExtents ( navlib::box_t & extents) const
overrideprivate

Get Footprint 3D Model extents.

Parameters
extentsis the box around the 3D model.

Definition at line 53 of file nl_footprint_properties_plugin_impl.cpp.

References BOUNDING_BOX_SCALE_FACTOR, BOARD_ADAPTER::GetBBox(), EDA_3D_CANVAS::GetBoardAdapter(), NL_3D_VIEWER_PLUGIN_IMPL::GetCanvas(), BBOX_3D::Max(), and BBOX_3D::Min().

◆ GetPivotPosition()

long NL_3D_VIEWER_PLUGIN_IMPL::GetPivotPosition ( navlib::point_t & aPosition) const
overrideprivateinherited

Definition at line 451 of file nl_3d_viewer_plugin_impl.cpp.

References m_camera.

◆ GetPivotVisible()

long NL_3D_VIEWER_PLUGIN_IMPL::GetPivotVisible ( navlib::bool_t & aVisible) const
overrideprivateinherited

Definition at line 485 of file nl_3d_viewer_plugin_impl.cpp.

References m_canvas.

◆ GetPointerPosition()

long NL_3D_VIEWER_PLUGIN_IMPL::GetPointerPosition ( navlib::point_t & aPosition) const
overrideprivateinherited

Definition at line 259 of file nl_3d_viewer_plugin_impl.cpp.

References m_camera.

◆ GetSelectionExtents()

long NL_3D_VIEWER_PLUGIN_IMPL::GetSelectionExtents ( navlib::box_t & aExtents) const
overrideprivateinherited

Definition at line 425 of file nl_3d_viewer_plugin_impl.cpp.

◆ GetSelectionTransform()

long NL_3D_VIEWER_PLUGIN_IMPL::GetSelectionTransform ( navlib::matrix_t & aTransform) const
overrideprivateinherited

Definition at line 431 of file nl_3d_viewer_plugin_impl.cpp.

◆ GetViewExtents()

long NL_3D_VIEWER_PLUGIN_IMPL::GetViewExtents ( navlib::box_t & aExtents) const
overrideprivateinherited

◆ GetViewFOV()

long NL_3D_VIEWER_PLUGIN_IMPL::GetViewFOV ( double & aFov) const
overrideprivateinherited

Definition at line 287 of file nl_3d_viewer_plugin_impl.cpp.

References CAMERA_FRUSTUM::angle, and m_camera.

◆ GetViewFrustum()

long NL_3D_VIEWER_PLUGIN_IMPL::GetViewFrustum ( navlib::frustum_t & aFrustum) const
overrideprivateinherited

◆ IsUserPivot()

long NL_3D_VIEWER_PLUGIN_IMPL::IsUserPivot ( navlib::bool_t & aUserPivot) const
overrideprivateinherited

Definition at line 461 of file nl_3d_viewer_plugin_impl.cpp.

◆ SetActiveCommand()

◆ SetCameraMatrix()

long NL_3D_VIEWER_PLUGIN_IMPL::SetCameraMatrix ( const navlib::matrix_t & aMatrix)
overrideprivateinherited

Definition at line 320 of file nl_3d_viewer_plugin_impl.cpp.

References equals(), m_camera, m_cameraMatrix, ORTHO, and result.

◆ SetCameraTarget()

long NL_3D_VIEWER_PLUGIN_IMPL::SetCameraTarget ( const navlib::point_t & aPosition)
overrideprivateinherited

Definition at line 636 of file nl_3d_viewer_plugin_impl.cpp.

◆ SetFocus()

void NL_3D_VIEWER_PLUGIN_IMPL::SetFocus ( bool aFocus = true)
inherited

Set the connection to the 3Dconnexion driver to the focus state so that 3DMouse data is routed here.

Parameters
aFocusis true to set the connection active.

Definition at line 100 of file nl_3d_viewer_plugin_impl.cpp.

References m_logTrace.

◆ SetHitAperture()

long NL_3D_VIEWER_PLUGIN_IMPL::SetHitAperture ( double aAperture)
overrideprivateinherited

Definition at line 524 of file nl_3d_viewer_plugin_impl.cpp.

◆ SetHitDirection()

long NL_3D_VIEWER_PLUGIN_IMPL::SetHitDirection ( const navlib::vector_t & aDirection)
overrideprivateinherited

Definition at line 530 of file nl_3d_viewer_plugin_impl.cpp.

References m_rayDirection.

◆ SetHitLookFrom()

long NL_3D_VIEWER_PLUGIN_IMPL::SetHitLookFrom ( const navlib::point_t & aPosition)
overrideprivateinherited

Definition at line 538 of file nl_3d_viewer_plugin_impl.cpp.

References m_rayOrigin.

◆ SetHitSelectionOnly()

long NL_3D_VIEWER_PLUGIN_IMPL::SetHitSelectionOnly ( bool aSelectionOnly)
overrideprivateinherited

Definition at line 546 of file nl_3d_viewer_plugin_impl.cpp.

◆ SetMotionFlag()

long NL_3D_VIEWER_PLUGIN_IMPL::SetMotionFlag ( bool aValue)
overrideprivateinherited

Definition at line 613 of file nl_3d_viewer_plugin_impl.cpp.

References m_capIsMoving.

◆ SetPivotPosition()

long NL_3D_VIEWER_PLUGIN_IMPL::SetPivotPosition ( const navlib::point_t & aPosition)
overrideprivateinherited

Definition at line 469 of file nl_3d_viewer_plugin_impl.cpp.

References m_camera, and m_canvas.

◆ SetPivotVisible()

long NL_3D_VIEWER_PLUGIN_IMPL::SetPivotVisible ( bool aVisible)
overrideprivateinherited

Definition at line 493 of file nl_3d_viewer_plugin_impl.cpp.

References m_canvas.

◆ SetSelectionTransform()

long NL_3D_VIEWER_PLUGIN_IMPL::SetSelectionTransform ( const navlib::matrix_t & aMatrix)
overrideprivateinherited

Definition at line 445 of file nl_3d_viewer_plugin_impl.cpp.

◆ SetSettingsChanged()

long NL_3D_VIEWER_PLUGIN_IMPL::SetSettingsChanged ( long aChangeNumber)
overrideprivateinherited

Definition at line 607 of file nl_3d_viewer_plugin_impl.cpp.

◆ SetTransaction()

long NL_3D_VIEWER_PLUGIN_IMPL::SetTransaction ( long aValue)
overrideprivateinherited

Definition at line 621 of file nl_3d_viewer_plugin_impl.cpp.

References L, m_canvas, and m_logTrace.

◆ SetViewExtents()

long NL_3D_VIEWER_PLUGIN_IMPL::SetViewExtents ( const navlib::box_t & aExtents)
overrideprivateinherited

Definition at line 378 of file nl_3d_viewer_plugin_impl.cpp.

References m_camera, m_cameraMatrix, CAMERA_FRUSTUM::nw, and zoom.

◆ SetViewFOV()

long NL_3D_VIEWER_PLUGIN_IMPL::SetViewFOV ( double aFov)
overrideprivateinherited

Definition at line 402 of file nl_3d_viewer_plugin_impl.cpp.

◆ SetViewFrustum()

long NL_3D_VIEWER_PLUGIN_IMPL::SetViewFrustum ( const navlib::frustum_t & aFrustum)
overrideprivateinherited

Definition at line 408 of file nl_3d_viewer_plugin_impl.cpp.

Member Data Documentation

◆ m_camera

◆ m_cameraMatrix

glm::mat4 NL_3D_VIEWER_PLUGIN_IMPL::m_cameraMatrix
mutableprivateinherited

Definition at line 150 of file nl_3d_viewer_plugin_impl.h.

Referenced by GetCameraMatrix(), SetCameraMatrix(), and SetViewExtents().

◆ m_canvas

◆ m_capIsMoving

bool NL_3D_VIEWER_PLUGIN_IMPL::m_capIsMoving
privateinherited

Definition at line 143 of file nl_3d_viewer_plugin_impl.h.

Referenced by NL_3D_VIEWER_PLUGIN_IMPL(), and SetMotionFlag().

◆ m_newWidth

double NL_3D_VIEWER_PLUGIN_IMPL::m_newWidth
privateinherited

Definition at line 144 of file nl_3d_viewer_plugin_impl.h.

Referenced by NL_3D_VIEWER_PLUGIN_IMPL().

◆ m_rayDirection

SFVEC3F NL_3D_VIEWER_PLUGIN_IMPL::m_rayDirection
privateinherited

Definition at line 146 of file nl_3d_viewer_plugin_impl.h.

Referenced by GetHitLookAt(), and SetHitDirection().

◆ m_rayOrigin

SFVEC3F NL_3D_VIEWER_PLUGIN_IMPL::m_rayOrigin
privateinherited

Definition at line 145 of file nl_3d_viewer_plugin_impl.h.

Referenced by GetHitLookAt(), and SetHitLookFrom().


The documentation for this class was generated from the following files: