KiCad PCB EDA Suite
PANEL_PREV_3D Class Reference

#include <panel_prev_model.h>

Inheritance diagram for PANEL_PREV_3D:
PANEL_PREV_3D_BASE

Public Member Functions

 PANEL_PREV_3D (wxWindow *aParent, PCB_BASE_FRAME *aFrame, MODULE *aModule, std::vector< MODULE_3D_SETTINGS > *aParentModelList)
 
 ~PANEL_PREV_3D ()
 
void SetSelectedModel (int idx)
 SetModelDataIdx - Sets the currently selected index in the model list so that the scale/rotation/offset controls can be updated. More...
 
void UpdateDummyModule (bool aRelaodRequired=true)
 UpdateModelInfoList - copy shapes from the current shape list which are flagged for preview to the copy of module that is on the preview dummy board. More...
 

Public Attributes

wxTextCtrl * yoff
 

Protected Attributes

wxStaticText * m_staticText1
 
wxTextCtrl * xscale
 
wxSpinButton * m_spinXscale
 
wxStaticText * m_staticText2
 
wxTextCtrl * yscale
 
wxSpinButton * m_spinYscale
 
wxStaticText * m_staticText3
 
wxTextCtrl * zscale
 
wxSpinButton * m_spinZscale
 
wxStaticText * m_staticText11
 
wxTextCtrl * xrot
 
wxSpinButton * m_spinXrot
 
wxStaticText * m_staticText21
 
wxTextCtrl * yrot
 
wxSpinButton * m_spinYrot
 
wxStaticText * m_staticText31
 
wxTextCtrl * zrot
 
wxSpinButton * m_spinZrot
 
wxStaticText * m_staticText12
 
wxTextCtrl * xoff
 
wxSpinButton * m_spinXoffset
 
wxStaticText * m_staticText22
 
wxSpinButton * m_spinYoffset
 
wxStaticText * m_staticText32
 
wxTextCtrl * zoff
 
wxSpinButton * m_spinZoffset
 
wxBoxSizer * m_SizerPanelView
 
wxBitmapButton * m_bpvISO
 
wxBitmapButton * m_bpvLeft
 
wxBitmapButton * m_bpvRight
 
wxBitmapButton * m_bpvFront
 
wxBitmapButton * m_bpvBack
 
wxBitmapButton * m_bpvTop
 
wxBitmapButton * m_bpvBottom
 
wxBitmapButton * m_bpUpdate
 

Private Member Functions

void initPanel ()
 
void loadCommonSettings ()
 Load 3D relevant settings from the user configuration. More...
 
void updateOrientation (wxCommandEvent &event) override
 updateOrientation - it will receive the events from editing the fields More...
 
void onMouseWheelScale (wxMouseEvent &event) override
 
void onMouseWheelRot (wxMouseEvent &event) override
 
void onMouseWheelOffset (wxMouseEvent &event) override
 
void onIncrementRot (wxSpinEvent &event) override
 
void onDecrementRot (wxSpinEvent &event) override
 
void onIncrementScale (wxSpinEvent &event) override
 
void onDecrementScale (wxSpinEvent &event) override
 
void onIncrementOffset (wxSpinEvent &event) override
 
void onDecrementOffset (wxSpinEvent &event) override
 
void doIncrementScale (wxSpinEvent &aEvent, double aSign)
 
void doIncrementRotation (wxSpinEvent &aEvent, double aSign)
 
void doIncrementOffset (wxSpinEvent &aEvent, double aSign)
 
wxString formatScaleValue (double aValue)
 
wxString formatRotationValue (double aValue)
 
wxString formatOffsetValue (double aValue)
 
void View3DISO (wxCommandEvent &event) override
 
void View3DLeft (wxCommandEvent &event) override
 
void View3DFront (wxCommandEvent &event) override
 
void View3DTop (wxCommandEvent &event) override
 
void View3DUpdate (wxCommandEvent &event) override
 
void View3DRight (wxCommandEvent &event) override
 
void View3DBack (wxCommandEvent &event) override
 
void View3DBottom (wxCommandEvent &event) override
 

Private Attributes

EDA_3D_CANVASm_previewPane
 
CINFO3D_VISUm_settings3Dviewer
 
BOARDm_dummyBoard
 
MODULEm_dummyModule
 
std::vector< MODULE_3D_SETTINGS > * m_parentModelList
 
int m_selected
 
EDA_UNITS m_userUnits
 Index into m_parentInfoList. More...
 

Detailed Description

Definition at line 72 of file panel_prev_model.h.

Constructor & Destructor Documentation

◆ PANEL_PREV_3D()

PANEL_PREV_3D::PANEL_PREV_3D ( wxWindow *  aParent,
PCB_BASE_FRAME aFrame,
MODULE aModule,
std::vector< MODULE_3D_SETTINGS > *  aParentModelList 
)

Definition at line 38 of file panel_prev_model.cpp.

39  :
40  PANEL_PREV_3D_BASE( aParent, wxID_ANY )
41 {
42  m_userUnits = aFrame->GetUserUnits();
43 
44  initPanel();
45 
46  // Initialize the color settings to draw the board and the footprint
48 
49  m_parentModelList = aParentModelList;
50 
51  m_dummyModule = new MODULE( *aModule );
53 
54  // Set 3d viewer configuration for preview
56 
57  // Create the 3D canvas
60  aFrame->Prj().Get3DCacheManager() );
61 
63 
64  m_SizerPanelView->Add( m_previewPane, 1, wxEXPAND, 5 );
65 }
PANEL_PREV_3D_BASE(wxWindow *parent, wxWindowID id=wxID_ANY, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(-1,-1), long style=wxTAB_TRAVERSAL)
CINFO3D_VISU * m_settings3Dviewer
static const int * GetAttributesList(bool aUseAntiAliasing)
Get a list of attributes to pass to wxGLCanvas.
EDA_UNITS m_userUnits
Index into m_parentInfoList.
Implement a canvas based on a wxGLCanvas.
Definition: eda_3d_canvas.h:60
wxBoxSizer * m_SizerPanelView
std::vector< MODULE_3D_SETTINGS > * m_parentModelList
void Add(BOARD_ITEM *aItem, ADD_MODE aMode=ADD_MODE::INSERT) override
Adds an item to the container.
PCB_GENERAL_SETTINGS & Settings()
PROJECT & Prj() const
Function Prj returns a reference to the PROJECT "associated with" this KIWAY.
MODULE * m_dummyModule
void loadCommonSettings()
Load 3D relevant settings from the user configuration.
EDA_3D_CANVAS * m_previewPane
Class CINFO3D_VISU Helper class to handle information needed to display 3D board.
Definition: cinfo3d_visu.h:70
void SetGeneralSettings(PCB_GENERAL_SETTINGS *aGeneralSettings)
Definition: class_board.h:564
BOARD * m_dummyBoard
EDA_UNITS GetUserUnits() const
Return the user units currently in use.

References BOARD::Add(), COGL_ATT_LIST::GetAttributesList(), EDA_BASE_FRAME::GetUserUnits(), initPanel(), loadCommonSettings(), m_dummyBoard, m_dummyModule, m_parentModelList, m_previewPane, m_settings3Dviewer, PANEL_PREV_3D_BASE::m_SizerPanelView, m_userUnits, KIWAY_HOLDER::Prj(), BOARD::SetGeneralSettings(), and PCB_BASE_FRAME::Settings().

◆ ~PANEL_PREV_3D()

PANEL_PREV_3D::~PANEL_PREV_3D ( )

Definition at line 68 of file panel_prev_model.cpp.

69 {
70  delete m_settings3Dviewer;
71  delete m_dummyBoard;
72  delete m_previewPane;
73 }
CINFO3D_VISU * m_settings3Dviewer
EDA_3D_CANVAS * m_previewPane
BOARD * m_dummyBoard

References m_dummyBoard, m_previewPane, and m_settings3Dviewer.

Member Function Documentation

◆ doIncrementOffset()

void PANEL_PREV_3D::doIncrementOffset ( wxSpinEvent &  aEvent,
double  aSign 
)
private

Definition at line 280 of file panel_prev_model.cpp.

281 {
282  wxSpinButton* spinCtrl = (wxSpinButton*) event.GetEventObject();
283 
284  wxTextCtrl * textCtrl = xoff;
285 
286  if( spinCtrl == m_spinYoffset )
287  textCtrl = yoff;
288  else if( spinCtrl == m_spinZoffset )
289  textCtrl = zoff;
290 
291  double step = OFFSET_INCREMENT_MM;
292 
294  step = OFFSET_INCREMENT_MIL/1000.0;
295 
296  double curr_value = DoubleValueFromString( m_userUnits, textCtrl->GetValue() ) / IU_PER_MM;
297 
298  curr_value += ( step * aSign );
299  curr_value = std::max( -MAX_OFFSET, curr_value );
300  curr_value = std::min( curr_value, MAX_OFFSET );
301 
302  textCtrl->SetValue( formatOffsetValue( curr_value ) );
303 }
wxSpinButton * m_spinZoffset
wxSpinButton * m_spinYoffset
#define OFFSET_INCREMENT_MM
EDA_UNITS m_userUnits
Index into m_parentInfoList.
wxString formatOffsetValue(double aValue)
#define OFFSET_INCREMENT_MIL
#define MAX_OFFSET
double DoubleValueFromString(EDA_UNITS aUnits, const wxString &aTextValue, bool aUseMils)
Function DoubleValueFromString converts aTextValue to a double.
Definition: base_units.cpp:316

References DoubleValueFromString(), formatOffsetValue(), INCHES, PANEL_PREV_3D_BASE::m_spinYoffset, PANEL_PREV_3D_BASE::m_spinZoffset, m_userUnits, MAX_OFFSET, OFFSET_INCREMENT_MIL, OFFSET_INCREMENT_MM, PANEL_PREV_3D_BASE::xoff, PANEL_PREV_3D_BASE::yoff, and PANEL_PREV_3D_BASE::zoff.

Referenced by onDecrementOffset(), and onIncrementOffset().

◆ doIncrementRotation()

void PANEL_PREV_3D::doIncrementRotation ( wxSpinEvent &  aEvent,
double  aSign 
)
private

Definition at line 260 of file panel_prev_model.cpp.

261 {
262  wxSpinButton* spinCtrl = (wxSpinButton*) aEvent.GetEventObject();
263  wxTextCtrl* textCtrl = xrot;
264 
265  if( spinCtrl == m_spinYrot )
266  textCtrl = yrot;
267  else if( spinCtrl == m_spinZrot )
268  textCtrl = zrot;
269 
270  double curr_value = DoubleValueFromString( EDA_UNITS::DEGREES, textCtrl->GetValue() ) / 10.0;
271 
272  curr_value += ( ROTATION_INCREMENT * aSign );
273  curr_value = std::max( -MAX_ROTATION, curr_value );
274  curr_value = std::min( curr_value, MAX_ROTATION );
275 
276  textCtrl->SetValue( formatRotationValue( curr_value ) );
277 }
wxString formatRotationValue(double aValue)
#define ROTATION_INCREMENT
wxSpinButton * m_spinZrot
wxSpinButton * m_spinYrot
#define MAX_ROTATION
double DoubleValueFromString(EDA_UNITS aUnits, const wxString &aTextValue, bool aUseMils)
Function DoubleValueFromString converts aTextValue to a double.
Definition: base_units.cpp:316

References DEGREES, DoubleValueFromString(), formatRotationValue(), PANEL_PREV_3D_BASE::m_spinYrot, PANEL_PREV_3D_BASE::m_spinZrot, MAX_ROTATION, ROTATION_INCREMENT, PANEL_PREV_3D_BASE::xrot, PANEL_PREV_3D_BASE::yrot, and PANEL_PREV_3D_BASE::zrot.

Referenced by onDecrementRot(), and onIncrementRot().

◆ doIncrementScale()

void PANEL_PREV_3D::doIncrementScale ( wxSpinEvent &  aEvent,
double  aSign 
)
private

Definition at line 239 of file panel_prev_model.cpp.

240 {
241  wxSpinButton* spinCtrl = (wxSpinButton*) event.GetEventObject();
242 
243  wxTextCtrl * textCtrl = xscale;
244 
245  if( spinCtrl == m_spinYscale )
246  textCtrl = yscale;
247  else if( spinCtrl == m_spinZscale )
248  textCtrl = zscale;
249 
250  double curr_value = DoubleValueFromString( EDA_UNITS::UNSCALED, textCtrl->GetValue() );
251 
252  curr_value += ( SCALE_INCREMENT * aSign );
253  curr_value = std::max( 1/MAX_SCALE, curr_value );
254  curr_value = std::min( curr_value, MAX_SCALE );
255 
256  textCtrl->SetValue( formatScaleValue( curr_value ) );
257 }
wxString formatScaleValue(double aValue)
#define SCALE_INCREMENT
#define MAX_SCALE
wxSpinButton * m_spinZscale
double DoubleValueFromString(EDA_UNITS aUnits, const wxString &aTextValue, bool aUseMils)
Function DoubleValueFromString converts aTextValue to a double.
Definition: base_units.cpp:316
wxSpinButton * m_spinYscale

References DoubleValueFromString(), formatScaleValue(), PANEL_PREV_3D_BASE::m_spinYscale, PANEL_PREV_3D_BASE::m_spinZscale, MAX_SCALE, SCALE_INCREMENT, UNSCALED, PANEL_PREV_3D_BASE::xscale, PANEL_PREV_3D_BASE::yscale, and PANEL_PREV_3D_BASE::zscale.

Referenced by onDecrementScale(), and onIncrementScale().

◆ formatOffsetValue()

wxString PANEL_PREV_3D::formatOffsetValue ( double  aValue)
private

Definition at line 163 of file panel_prev_model.cpp.

164 {
165  // Convert from internal units (mm) to user units
167  aValue /= 25.4f;
168 
169  return wxString::Format( "%.4f %s", aValue, GetAbbreviatedUnitsLabel( m_userUnits ) );
170 }
EDA_UNITS m_userUnits
Index into m_parentInfoList.
wxString GetAbbreviatedUnitsLabel(EDA_UNITS aUnit, bool aUseMils)
Get the units string for a given units type.
Definition: base_units.cpp:452
void Format(OUTPUTFORMATTER *out, int aNestLevel, int aCtl, CPTREE &aTree)
Function Format outputs a PTREE into s-expression format via an OUTPUTFORMATTER derivative.
Definition: ptree.cpp:205

References Format(), GetAbbreviatedUnitsLabel(), INCHES, and m_userUnits.

Referenced by doIncrementOffset(), onMouseWheelOffset(), and SetSelectedModel().

◆ formatRotationValue()

wxString PANEL_PREV_3D::formatRotationValue ( double  aValue)
private

Definition at line 157 of file panel_prev_model.cpp.

158 {
159  return wxString::Format( "%.2f %s", aValue, GetAbbreviatedUnitsLabel( EDA_UNITS::DEGREES ) );
160 }
wxString GetAbbreviatedUnitsLabel(EDA_UNITS aUnit, bool aUseMils)
Get the units string for a given units type.
Definition: base_units.cpp:452
void Format(OUTPUTFORMATTER *out, int aNestLevel, int aCtl, CPTREE &aTree)
Function Format outputs a PTREE into s-expression format via an OUTPUTFORMATTER derivative.
Definition: ptree.cpp:205

References DEGREES, Format(), and GetAbbreviatedUnitsLabel().

Referenced by doIncrementRotation(), onMouseWheelRot(), and SetSelectedModel().

◆ formatScaleValue()

wxString PANEL_PREV_3D::formatScaleValue ( double  aValue)
private

Definition at line 151 of file panel_prev_model.cpp.

152 {
153  return wxString::Format( "%.4f", aValue );
154 }
void Format(OUTPUTFORMATTER *out, int aNestLevel, int aCtl, CPTREE &aTree)
Function Format outputs a PTREE into s-expression format via an OUTPUTFORMATTER derivative.
Definition: ptree.cpp:205

References Format().

Referenced by doIncrementScale(), onMouseWheelScale(), and SetSelectedModel().

◆ initPanel()

void PANEL_PREV_3D::initPanel ( )
private

Definition at line 76 of file panel_prev_model.cpp.

77 {
78  m_dummyBoard = new BOARD();
79  m_selected = -1;
80 
81  // Set the bitmap of 3D view buttons:
82  m_bpvTop->SetBitmap( KiBitmap( axis3d_top_xpm ) );
83  m_bpvFront->SetBitmap( KiBitmap( axis3d_front_xpm ) );
84  m_bpvBack->SetBitmap( KiBitmap( axis3d_back_xpm ) );
85  m_bpvLeft->SetBitmap( KiBitmap( axis3d_left_xpm ) );
86  m_bpvRight->SetBitmap( KiBitmap( axis3d_right_xpm ) );
87  m_bpvBottom->SetBitmap( KiBitmap( axis3d_bottom_xpm ) );
88  m_bpvISO->SetBitmap( KiBitmap( ortho_xpm ) );
89  m_bpUpdate->SetBitmap( KiBitmap( reload_xpm ) );
90 
91  // Set the min and max values of spin buttons (mandatory on Linux)
92  // They are not used, so they are set to min and max 32 bits int values
93  // (the min and max values supported by a wxSpinButton)
94  // It avoids blocking the up or down arrows when reaching this limit after
95  // a few clicks.
96  wxSpinButton* spinButtonList[] =
97  {
101  };
102 
103  for( wxSpinButton* button : spinButtonList )
104  button->SetRange(INT_MIN, INT_MAX );
105 }
wxBitmapButton * m_bpvTop
wxBitmapButton * m_bpvBottom
wxSpinButton * m_spinZoffset
const BITMAP_OPAQUE axis3d_front_xpm[1]
wxSpinButton * m_spinYoffset
wxBitmapButton * m_bpvBack
wxBitmapButton * m_bpvLeft
wxBitmapButton * m_bpUpdate
const BITMAP_OPAQUE ortho_xpm[1]
Definition: ortho.cpp:55
const BITMAP_OPAQUE reload_xpm[1]
Definition: reload.cpp:71
wxBitmapButton * m_bpvRight
wxBitmap KiBitmap(BITMAP_DEF aBitmap)
Construct a wxBitmap from a memory record, held in a BITMAP_DEF.
Definition: bitmap.cpp:79
wxSpinButton * m_spinZrot
wxSpinButton * m_spinXoffset
const BITMAP_OPAQUE axis3d_left_xpm[1]
Definition: axis3d_left.cpp:98
const BITMAP_OPAQUE axis3d_bottom_xpm[1]
wxSpinButton * m_spinYrot
wxSpinButton * m_spinXrot
wxBitmapButton * m_bpvFront
wxSpinButton * m_spinZscale
wxSpinButton * m_spinXscale
const BITMAP_OPAQUE axis3d_top_xpm[1]
Definition: axis3d_top.cpp:94
BOARD holds information pertinent to a Pcbnew printed circuit board.
Definition: class_board.h:160
wxBitmapButton * m_bpvISO
const BITMAP_OPAQUE axis3d_right_xpm[1]
BOARD * m_dummyBoard
const BITMAP_OPAQUE axis3d_back_xpm[1]
Definition: axis3d_back.cpp:97
wxSpinButton * m_spinYscale

References axis3d_back_xpm, axis3d_bottom_xpm, axis3d_front_xpm, axis3d_left_xpm, axis3d_right_xpm, axis3d_top_xpm, KiBitmap(), PANEL_PREV_3D_BASE::m_bpUpdate, PANEL_PREV_3D_BASE::m_bpvBack, PANEL_PREV_3D_BASE::m_bpvBottom, PANEL_PREV_3D_BASE::m_bpvFront, PANEL_PREV_3D_BASE::m_bpvISO, PANEL_PREV_3D_BASE::m_bpvLeft, PANEL_PREV_3D_BASE::m_bpvRight, PANEL_PREV_3D_BASE::m_bpvTop, m_dummyBoard, m_selected, PANEL_PREV_3D_BASE::m_spinXoffset, PANEL_PREV_3D_BASE::m_spinXrot, PANEL_PREV_3D_BASE::m_spinXscale, PANEL_PREV_3D_BASE::m_spinYoffset, PANEL_PREV_3D_BASE::m_spinYrot, PANEL_PREV_3D_BASE::m_spinYscale, PANEL_PREV_3D_BASE::m_spinZoffset, PANEL_PREV_3D_BASE::m_spinZrot, PANEL_PREV_3D_BASE::m_spinZscale, ortho_xpm, and reload_xpm.

Referenced by PANEL_PREV_3D().

◆ loadCommonSettings()

void PANEL_PREV_3D::loadCommonSettings ( )
private

Load 3D relevant settings from the user configuration.

Definition at line 108 of file panel_prev_model.cpp.

109 {
110  wxCHECK_RET( m_previewPane, "Cannot load settings to null canvas" );
111 
112  wxConfigBase& cmnCfg = *Pgm().CommonSettings();
113 
114  {
115  const DPI_SCALING dpi{ &cmnCfg, this };
116  m_previewPane->SetScaleFactor( dpi.GetScaleFactor() );
117  }
118 
119  {
120  bool option;
121  cmnCfg.Read( ENBL_MOUSEWHEEL_PAN_KEY, &option, false );
123  }
124 }
CINFO3D_VISU * m_settings3Dviewer
KIWAY Kiway & Pgm(), KFCTL_STANDALONE
The global Program "get" accessor.
Definition: single_top.cpp:98
Class to handle configuration and automatic determination of the DPI scale to use for canvases.
Definition: dpi_scaling.h:35
EDA_3D_CANVAS * m_previewPane
#define ENBL_MOUSEWHEEL_PAN_KEY
Definition: pgm_base.h:50
void SetScaleFactor(double aFactor)
Set the canvas scale factor, probably for a hi-DPI display.
void SetFlag(DISPLAY3D_FLG aFlag, bool aState)
SetFlag - set the status of a flag.

References ENBL_MOUSEWHEEL_PAN_KEY, FL_MOUSEWHEEL_PANNING, m_previewPane, m_settings3Dviewer, Pgm(), CINFO3D_VISU::SetFlag(), and HIDPI_GL_CANVAS::SetScaleFactor().

Referenced by PANEL_PREV_3D().

◆ onDecrementOffset()

void PANEL_PREV_3D::onDecrementOffset ( wxSpinEvent &  event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREV_3D_BASE.

Definition at line 131 of file panel_prev_model.h.

132  {
133  doIncrementOffset( event, -1.0 );
134  }
void doIncrementOffset(wxSpinEvent &aEvent, double aSign)

References doIncrementOffset().

◆ onDecrementRot()

void PANEL_PREV_3D::onDecrementRot ( wxSpinEvent &  event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREV_3D_BASE.

Definition at line 115 of file panel_prev_model.h.

116  {
117  doIncrementRotation( event, -1.0 );
118  }
void doIncrementRotation(wxSpinEvent &aEvent, double aSign)

References doIncrementRotation().

◆ onDecrementScale()

void PANEL_PREV_3D::onDecrementScale ( wxSpinEvent &  event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREV_3D_BASE.

Definition at line 123 of file panel_prev_model.h.

124  {
125  doIncrementScale( event, -1.0 );
126  }
void doIncrementScale(wxSpinEvent &aEvent, double aSign)

References doIncrementScale().

◆ onIncrementOffset()

void PANEL_PREV_3D::onIncrementOffset ( wxSpinEvent &  event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREV_3D_BASE.

Definition at line 127 of file panel_prev_model.h.

128  {
129  doIncrementOffset( event, 1.0 );
130  }
void doIncrementOffset(wxSpinEvent &aEvent, double aSign)

References doIncrementOffset().

◆ onIncrementRot()

void PANEL_PREV_3D::onIncrementRot ( wxSpinEvent &  event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREV_3D_BASE.

Definition at line 111 of file panel_prev_model.h.

112  {
113  doIncrementRotation( event, 1.0 );
114  }
void doIncrementRotation(wxSpinEvent &aEvent, double aSign)

References doIncrementRotation().

◆ onIncrementScale()

void PANEL_PREV_3D::onIncrementScale ( wxSpinEvent &  event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREV_3D_BASE.

Definition at line 119 of file panel_prev_model.h.

120  {
121  doIncrementScale( event, 1.0 );
122  }
void doIncrementScale(wxSpinEvent &aEvent, double aSign)

References doIncrementScale().

◆ onMouseWheelOffset()

void PANEL_PREV_3D::onMouseWheelOffset ( wxMouseEvent &  event)
overrideprivatevirtual

Reimplemented from PANEL_PREV_3D_BASE.

Definition at line 350 of file panel_prev_model.cpp.

351 {
352  wxTextCtrl* textCtrl = (wxTextCtrl*) event.GetEventObject();
353 
354  double step = OFFSET_INCREMENT_MM;
355 
356  if( event.ShiftDown( ) )
358 
360  {
361  step = OFFSET_INCREMENT_MIL/1000.0;
362  if( event.ShiftDown( ) )
363  step = OFFSET_INCREMENT_MIL_FINE/1000.0;
364  }
365 
366  if( event.GetWheelRotation() >= 0 )
367  step = -step;
368 
369  double curr_value = DoubleValueFromString( m_userUnits, textCtrl->GetValue() ) / IU_PER_MM;
370 
371  curr_value += step;
372  curr_value = std::max( -MAX_OFFSET, curr_value );
373  curr_value = std::min( curr_value, MAX_OFFSET );
374 
375  textCtrl->SetValue( formatOffsetValue( curr_value ) );
376 }
#define OFFSET_INCREMENT_MM_FINE
#define OFFSET_INCREMENT_MM
EDA_UNITS m_userUnits
Index into m_parentInfoList.
wxString formatOffsetValue(double aValue)
#define OFFSET_INCREMENT_MIL_FINE
#define OFFSET_INCREMENT_MIL
#define MAX_OFFSET
double DoubleValueFromString(EDA_UNITS aUnits, const wxString &aTextValue, bool aUseMils)
Function DoubleValueFromString converts aTextValue to a double.
Definition: base_units.cpp:316

References DoubleValueFromString(), formatOffsetValue(), INCHES, m_userUnits, MAX_OFFSET, OFFSET_INCREMENT_MIL, OFFSET_INCREMENT_MIL_FINE, OFFSET_INCREMENT_MM, and OFFSET_INCREMENT_MM_FINE.

◆ onMouseWheelRot()

void PANEL_PREV_3D::onMouseWheelRot ( wxMouseEvent &  event)
overrideprivatevirtual

Reimplemented from PANEL_PREV_3D_BASE.

Definition at line 328 of file panel_prev_model.cpp.

329 {
330  wxTextCtrl* textCtrl = (wxTextCtrl*) event.GetEventObject();
331 
332  double step = ROTATION_INCREMENT_WHEEL;
333 
334  if( event.ShiftDown( ) )
336 
337  if( event.GetWheelRotation() >= 0 )
338  step = -step;
339 
340  double curr_value = DoubleValueFromString( EDA_UNITS::DEGREES, textCtrl->GetValue() ) / 10.0;
341 
342  curr_value += step;
343  curr_value = std::max( -MAX_ROTATION, curr_value );
344  curr_value = std::min( curr_value, MAX_ROTATION );
345 
346  textCtrl->SetValue( formatRotationValue( curr_value ) );
347 }
wxString formatRotationValue(double aValue)
#define ROTATION_INCREMENT_WHEEL_FINE
#define ROTATION_INCREMENT_WHEEL
#define MAX_ROTATION
double DoubleValueFromString(EDA_UNITS aUnits, const wxString &aTextValue, bool aUseMils)
Function DoubleValueFromString converts aTextValue to a double.
Definition: base_units.cpp:316

References DEGREES, DoubleValueFromString(), formatRotationValue(), MAX_ROTATION, ROTATION_INCREMENT_WHEEL, and ROTATION_INCREMENT_WHEEL_FINE.

◆ onMouseWheelScale()

void PANEL_PREV_3D::onMouseWheelScale ( wxMouseEvent &  event)
overrideprivatevirtual

Reimplemented from PANEL_PREV_3D_BASE.

Definition at line 306 of file panel_prev_model.cpp.

307 {
308  wxTextCtrl* textCtrl = (wxTextCtrl*) event.GetEventObject();
309 
310  double step = SCALE_INCREMENT;
311 
312  if( event.ShiftDown( ) )
313  step = SCALE_INCREMENT_FINE;
314 
315  if( event.GetWheelRotation() >= 0 )
316  step = -step;
317 
318  double curr_value = DoubleValueFromString( EDA_UNITS::UNSCALED, textCtrl->GetValue() );
319 
320  curr_value += step;
321  curr_value = std::max( 1/MAX_SCALE, curr_value );
322  curr_value = std::min( curr_value, MAX_SCALE );
323 
324  textCtrl->SetValue( formatScaleValue( curr_value ) );
325 }
#define SCALE_INCREMENT_FINE
wxString formatScaleValue(double aValue)
#define SCALE_INCREMENT
#define MAX_SCALE
double DoubleValueFromString(EDA_UNITS aUnits, const wxString &aTextValue, bool aUseMils)
Function DoubleValueFromString converts aTextValue to a double.
Definition: base_units.cpp:316

References DoubleValueFromString(), formatScaleValue(), MAX_SCALE, SCALE_INCREMENT, SCALE_INCREMENT_FINE, and UNSCALED.

◆ SetSelectedModel()

void PANEL_PREV_3D::SetSelectedModel ( int  idx)

SetModelDataIdx - Sets the currently selected index in the model list so that the scale/rotation/offset controls can be updated.

Definition at line 173 of file panel_prev_model.cpp.

174 {
175  if( m_parentModelList && idx >= 0 && idx < (int) m_parentModelList->size() )
176  {
177  m_selected = idx;
178  const MODULE_3D_SETTINGS& modelInfo = m_parentModelList->at( (unsigned) m_selected );
179 
180  // Use ChangeValue() instead of SetValue(). It's not the user making the change, so we
181  // don't want to generate wxEVT_GRID_CELL_CHANGED events.
182 
183  xscale->ChangeValue( formatScaleValue( modelInfo.m_Scale.x ) );
184  yscale->ChangeValue( formatScaleValue( modelInfo.m_Scale.y ) );
185  zscale->ChangeValue( formatScaleValue( modelInfo.m_Scale.z ) );
186 
187  xrot->ChangeValue( formatRotationValue( modelInfo.m_Rotation.x ) );
188  yrot->ChangeValue( formatRotationValue( modelInfo.m_Rotation.y ) );
189  zrot->ChangeValue( formatRotationValue( modelInfo.m_Rotation.z ) );
190 
191  xoff->ChangeValue( formatOffsetValue( modelInfo.m_Offset.x ) );
192  yoff->ChangeValue( formatOffsetValue( modelInfo.m_Offset.y ) );
193  zoff->ChangeValue( formatOffsetValue( modelInfo.m_Offset.z ) );
194  }
195  else
196  {
197  m_selected = -1;
198 
199  xscale->ChangeValue( wxEmptyString );
200  yscale->ChangeValue( wxEmptyString );
201  zscale->ChangeValue( wxEmptyString );
202 
203  xrot->ChangeValue( wxEmptyString );
204  yrot->ChangeValue( wxEmptyString );
205  zrot->ChangeValue( wxEmptyString );
206 
207  xoff->ChangeValue( wxEmptyString );
208  yoff->ChangeValue( wxEmptyString );
209  zoff->ChangeValue( wxEmptyString );
210  }
211 }
wxString formatRotationValue(double aValue)
std::vector< MODULE_3D_SETTINGS > * m_parentModelList
wxString formatScaleValue(double aValue)
VECTOR3D m_Offset
3D model offset (mm)
Definition: class_module.h:99
wxString formatOffsetValue(double aValue)
VECTOR3D m_Rotation
3D model rotation (degrees)
Definition: class_module.h:98
VECTOR3D m_Scale
3D model scaling factor (dimensionless)
Definition: class_module.h:97

References formatOffsetValue(), formatRotationValue(), formatScaleValue(), MODULE_3D_SETTINGS::m_Offset, m_parentModelList, MODULE_3D_SETTINGS::m_Rotation, MODULE_3D_SETTINGS::m_Scale, m_selected, MODULE_3D_SETTINGS::VECTOR3D::x, PANEL_PREV_3D_BASE::xoff, PANEL_PREV_3D_BASE::xrot, PANEL_PREV_3D_BASE::xscale, MODULE_3D_SETTINGS::VECTOR3D::y, PANEL_PREV_3D_BASE::yoff, PANEL_PREV_3D_BASE::yrot, PANEL_PREV_3D_BASE::yscale, MODULE_3D_SETTINGS::VECTOR3D::z, PANEL_PREV_3D_BASE::zoff, PANEL_PREV_3D_BASE::zrot, and PANEL_PREV_3D_BASE::zscale.

Referenced by DIALOG_FOOTPRINT_FP_EDITOR::select3DModel(), and DIALOG_FOOTPRINT_BOARD_EDITOR::select3DModel().

◆ UpdateDummyModule()

void PANEL_PREV_3D::UpdateDummyModule ( bool  aRelaodRequired = true)

UpdateModelInfoList - copy shapes from the current shape list which are flagged for preview to the copy of module that is on the preview dummy board.

Definition at line 379 of file panel_prev_model.cpp.

380 {
381  m_dummyModule->Models().clear();
382 
383  for( size_t i = 0; i < m_parentModelList->size(); ++i )
384  {
385  if( m_parentModelList->at( i ).m_Preview )
386  {
387  m_dummyModule->Models().insert( m_dummyModule->Models().end(),
388  m_parentModelList->at( i ) );
389  }
390  }
391 
392  if( aReloadRequired )
394 
396 }
std::vector< MODULE_3D_SETTINGS > * m_parentModelList
void Request_refresh(bool aRedrawImmediately=true)
Request_refresh - Schedule a refresh update of the canvas.
void ReloadRequest(BOARD *aBoard=NULL, S3D_CACHE *aCachePointer=NULL)
MODULE * m_dummyModule
EDA_3D_CANVAS * m_previewPane
std::list< MODULE_3D_SETTINGS > & Models()
Definition: class_module.h:205

References m_dummyModule, m_parentModelList, m_previewPane, MODULE::Models(), EDA_3D_CANVAS::ReloadRequest(), and EDA_3D_CANVAS::Request_refresh().

Referenced by DIALOG_FOOTPRINT_FP_EDITOR::Cfg3DPath(), DIALOG_FOOTPRINT_BOARD_EDITOR::Cfg3DPath(), DIALOG_FOOTPRINT_FP_EDITOR::On3DModelCellChanged(), DIALOG_FOOTPRINT_BOARD_EDITOR::On3DModelCellChanged(), DIALOG_FOOTPRINT_FP_EDITOR::OnAdd3DModel(), DIALOG_FOOTPRINT_BOARD_EDITOR::OnAdd3DModel(), DIALOG_FOOTPRINT_FP_EDITOR::OnRemove3DModel(), DIALOG_FOOTPRINT_BOARD_EDITOR::OnRemove3DModel(), DIALOG_FOOTPRINT_BOARD_EDITOR::TransferDataToWindow(), and updateOrientation().

◆ updateOrientation()

void PANEL_PREV_3D::updateOrientation ( wxCommandEvent &  event)
overrideprivatevirtual

updateOrientation - it will receive the events from editing the fields

Parameters
event

Reimplemented from PANEL_PREV_3D_BASE.

Definition at line 214 of file panel_prev_model.cpp.

215 {
216  if( m_parentModelList && m_selected >= 0 && m_selected < (int) m_parentModelList->size() )
217  {
218  // Write settings back to the parent
219  MODULE_3D_SETTINGS* modelInfo = &m_parentModelList->at( (unsigned) m_selected );
220 
221  modelInfo->m_Scale.x = DoubleValueFromString( EDA_UNITS::UNSCALED, xscale->GetValue() );
222  modelInfo->m_Scale.y = DoubleValueFromString( EDA_UNITS::UNSCALED, yscale->GetValue() );
223  modelInfo->m_Scale.z = DoubleValueFromString( EDA_UNITS::UNSCALED, zscale->GetValue() );
224 
225  modelInfo->m_Rotation.x = rotationFromString( xrot->GetValue() );
226  modelInfo->m_Rotation.y = rotationFromString( yrot->GetValue() );
227  modelInfo->m_Rotation.z = rotationFromString( zrot->GetValue() );
228 
229  modelInfo->m_Offset.x = DoubleValueFromString( m_userUnits, xoff->GetValue() ) / IU_PER_MM;
230  modelInfo->m_Offset.y = DoubleValueFromString( m_userUnits, yoff->GetValue() ) / IU_PER_MM;
231  modelInfo->m_Offset.z = DoubleValueFromString( m_userUnits, zoff->GetValue() ) / IU_PER_MM;
232 
233  // Update the dummy module for the preview
234  UpdateDummyModule( false );
235  }
236 }
EDA_UNITS m_userUnits
Index into m_parentInfoList.
void UpdateDummyModule(bool aRelaodRequired=true)
UpdateModelInfoList - copy shapes from the current shape list which are flagged for preview to the co...
std::vector< MODULE_3D_SETTINGS > * m_parentModelList
VECTOR3D m_Offset
3D model offset (mm)
Definition: class_module.h:99
VECTOR3D m_Rotation
3D model rotation (degrees)
Definition: class_module.h:98
VECTOR3D m_Scale
3D model scaling factor (dimensionless)
Definition: class_module.h:97
double DoubleValueFromString(EDA_UNITS aUnits, const wxString &aTextValue, bool aUseMils)
Function DoubleValueFromString converts aTextValue to a double.
Definition: base_units.cpp:316
static double rotationFromString(const wxString &aValue)
rotationFromString Ensure -MAX_ROTATION <= rotation <= MAX_ROTATION aRotation will be normalized betw...

References DoubleValueFromString(), MODULE_3D_SETTINGS::m_Offset, m_parentModelList, MODULE_3D_SETTINGS::m_Rotation, MODULE_3D_SETTINGS::m_Scale, m_selected, m_userUnits, rotationFromString(), UNSCALED, UpdateDummyModule(), MODULE_3D_SETTINGS::VECTOR3D::x, PANEL_PREV_3D_BASE::xoff, PANEL_PREV_3D_BASE::xrot, PANEL_PREV_3D_BASE::xscale, MODULE_3D_SETTINGS::VECTOR3D::y, PANEL_PREV_3D_BASE::yoff, PANEL_PREV_3D_BASE::yrot, PANEL_PREV_3D_BASE::yscale, MODULE_3D_SETTINGS::VECTOR3D::z, PANEL_PREV_3D_BASE::zoff, PANEL_PREV_3D_BASE::zrot, and PANEL_PREV_3D_BASE::zscale.

◆ View3DBack()

void PANEL_PREV_3D::View3DBack ( wxCommandEvent &  event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREV_3D_BASE.

Definition at line 176 of file panel_prev_model.h.

177  {
179  }
EDA_3D_CANVAS * m_previewPane
#define GR_KB_SHIFT
Definition: eda_3d_canvas.h:54
bool SetView3D(int aKeycode)
SetView3D - Helper function to call view commands.

References GR_KB_SHIFT, m_previewPane, and EDA_3D_CANVAS::SetView3D().

◆ View3DBottom()

void PANEL_PREV_3D::View3DBottom ( wxCommandEvent &  event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREV_3D_BASE.

Definition at line 181 of file panel_prev_model.h.

182  {
184  }
EDA_3D_CANVAS * m_previewPane
#define GR_KB_SHIFT
Definition: eda_3d_canvas.h:54
bool SetView3D(int aKeycode)
SetView3D - Helper function to call view commands.

References GR_KB_SHIFT, m_previewPane, and EDA_3D_CANVAS::SetView3D().

◆ View3DFront()

void PANEL_PREV_3D::View3DFront ( wxCommandEvent &  event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREV_3D_BASE.

Definition at line 155 of file panel_prev_model.h.

156  {
157  m_previewPane->SetView3D( 'Y' );
158  }
EDA_3D_CANVAS * m_previewPane
bool SetView3D(int aKeycode)
SetView3D - Helper function to call view commands.

References m_previewPane, and EDA_3D_CANVAS::SetView3D().

◆ View3DISO()

void PANEL_PREV_3D::View3DISO ( wxCommandEvent &  event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREV_3D_BASE.

Definition at line 144 of file panel_prev_model.h.

145  {
147  m_previewPane->Refresh();
148  }
CINFO3D_VISU * m_settings3Dviewer
CCAMERA & CameraGet() const
CameraGet - get current camera in use.
Definition: cinfo3d_visu.h:210
void ToggleProjection()
Definition: ccamera.cpp:447
EDA_3D_CANVAS * m_previewPane

References CINFO3D_VISU::CameraGet(), m_previewPane, m_settings3Dviewer, and CCAMERA::ToggleProjection().

◆ View3DLeft()

void PANEL_PREV_3D::View3DLeft ( wxCommandEvent &  event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREV_3D_BASE.

Definition at line 150 of file panel_prev_model.h.

151  {
153  }
EDA_3D_CANVAS * m_previewPane
#define GR_KB_SHIFT
Definition: eda_3d_canvas.h:54
bool SetView3D(int aKeycode)
SetView3D - Helper function to call view commands.

References GR_KB_SHIFT, m_previewPane, and EDA_3D_CANVAS::SetView3D().

◆ View3DRight()

void PANEL_PREV_3D::View3DRight ( wxCommandEvent &  event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREV_3D_BASE.

Definition at line 171 of file panel_prev_model.h.

172  {
173  m_previewPane->SetView3D( 'X' );
174  }
EDA_3D_CANVAS * m_previewPane
bool SetView3D(int aKeycode)
SetView3D - Helper function to call view commands.

References m_previewPane, and EDA_3D_CANVAS::SetView3D().

◆ View3DTop()

void PANEL_PREV_3D::View3DTop ( wxCommandEvent &  event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREV_3D_BASE.

Definition at line 160 of file panel_prev_model.h.

161  {
162  m_previewPane->SetView3D( 'Z' );
163  }
EDA_3D_CANVAS * m_previewPane
bool SetView3D(int aKeycode)
SetView3D - Helper function to call view commands.

References m_previewPane, and EDA_3D_CANVAS::SetView3D().

◆ View3DUpdate()

void PANEL_PREV_3D::View3DUpdate ( wxCommandEvent &  event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREV_3D_BASE.

Definition at line 165 of file panel_prev_model.h.

166  {
168  m_previewPane->Refresh();
169  }
void ReloadRequest(BOARD *aBoard=NULL, S3D_CACHE *aCachePointer=NULL)
EDA_3D_CANVAS * m_previewPane

References m_previewPane, and EDA_3D_CANVAS::ReloadRequest().

Member Data Documentation

◆ m_bpUpdate

wxBitmapButton* PANEL_PREV_3D_BASE::m_bpUpdate
protectedinherited

◆ m_bpvBack

wxBitmapButton* PANEL_PREV_3D_BASE::m_bpvBack
protectedinherited

◆ m_bpvBottom

wxBitmapButton* PANEL_PREV_3D_BASE::m_bpvBottom
protectedinherited

◆ m_bpvFront

wxBitmapButton* PANEL_PREV_3D_BASE::m_bpvFront
protectedinherited

◆ m_bpvISO

wxBitmapButton* PANEL_PREV_3D_BASE::m_bpvISO
protectedinherited

◆ m_bpvLeft

wxBitmapButton* PANEL_PREV_3D_BASE::m_bpvLeft
protectedinherited

◆ m_bpvRight

wxBitmapButton* PANEL_PREV_3D_BASE::m_bpvRight
protectedinherited

◆ m_bpvTop

wxBitmapButton* PANEL_PREV_3D_BASE::m_bpvTop
protectedinherited

◆ m_dummyBoard

BOARD* PANEL_PREV_3D::m_dummyBoard
private

Definition at line 84 of file panel_prev_model.h.

Referenced by initPanel(), PANEL_PREV_3D(), and ~PANEL_PREV_3D().

◆ m_dummyModule

MODULE* PANEL_PREV_3D::m_dummyModule
private

Definition at line 85 of file panel_prev_model.h.

Referenced by PANEL_PREV_3D(), and UpdateDummyModule().

◆ m_parentModelList

std::vector<MODULE_3D_SETTINGS>* PANEL_PREV_3D::m_parentModelList
private

◆ m_previewPane

◆ m_selected

int PANEL_PREV_3D::m_selected
private

Definition at line 88 of file panel_prev_model.h.

Referenced by initPanel(), SetSelectedModel(), and updateOrientation().

◆ m_settings3Dviewer

CINFO3D_VISU* PANEL_PREV_3D::m_settings3Dviewer
private

Definition at line 82 of file panel_prev_model.h.

Referenced by loadCommonSettings(), PANEL_PREV_3D(), View3DISO(), and ~PANEL_PREV_3D().

◆ m_SizerPanelView

wxBoxSizer* PANEL_PREV_3D_BASE::m_SizerPanelView
protectedinherited

Definition at line 68 of file panel_prev_3d_base.h.

Referenced by PANEL_PREV_3D(), and PANEL_PREV_3D_BASE::PANEL_PREV_3D_BASE().

◆ m_spinXoffset

wxSpinButton* PANEL_PREV_3D_BASE::m_spinXoffset
protectedinherited

◆ m_spinXrot

wxSpinButton* PANEL_PREV_3D_BASE::m_spinXrot
protectedinherited

◆ m_spinXscale

wxSpinButton* PANEL_PREV_3D_BASE::m_spinXscale
protectedinherited

◆ m_spinYoffset

wxSpinButton* PANEL_PREV_3D_BASE::m_spinYoffset
protectedinherited

◆ m_spinYrot

wxSpinButton* PANEL_PREV_3D_BASE::m_spinYrot
protectedinherited

◆ m_spinYscale

wxSpinButton* PANEL_PREV_3D_BASE::m_spinYscale
protectedinherited

◆ m_spinZoffset

wxSpinButton* PANEL_PREV_3D_BASE::m_spinZoffset
protectedinherited

◆ m_spinZrot

wxSpinButton* PANEL_PREV_3D_BASE::m_spinZrot
protectedinherited

◆ m_spinZscale

wxSpinButton* PANEL_PREV_3D_BASE::m_spinZscale
protectedinherited

◆ m_staticText1

wxStaticText* PANEL_PREV_3D_BASE::m_staticText1
protectedinherited

Definition at line 42 of file panel_prev_3d_base.h.

Referenced by PANEL_PREV_3D_BASE::PANEL_PREV_3D_BASE().

◆ m_staticText11

wxStaticText* PANEL_PREV_3D_BASE::m_staticText11
protectedinherited

Definition at line 51 of file panel_prev_3d_base.h.

Referenced by PANEL_PREV_3D_BASE::PANEL_PREV_3D_BASE().

◆ m_staticText12

wxStaticText* PANEL_PREV_3D_BASE::m_staticText12
protectedinherited

Definition at line 60 of file panel_prev_3d_base.h.

Referenced by PANEL_PREV_3D_BASE::PANEL_PREV_3D_BASE().

◆ m_staticText2

wxStaticText* PANEL_PREV_3D_BASE::m_staticText2
protectedinherited

Definition at line 45 of file panel_prev_3d_base.h.

Referenced by PANEL_PREV_3D_BASE::PANEL_PREV_3D_BASE().

◆ m_staticText21

wxStaticText* PANEL_PREV_3D_BASE::m_staticText21
protectedinherited

Definition at line 54 of file panel_prev_3d_base.h.

Referenced by PANEL_PREV_3D_BASE::PANEL_PREV_3D_BASE().

◆ m_staticText22

wxStaticText* PANEL_PREV_3D_BASE::m_staticText22
protectedinherited

Definition at line 63 of file panel_prev_3d_base.h.

Referenced by PANEL_PREV_3D_BASE::PANEL_PREV_3D_BASE().

◆ m_staticText3

wxStaticText* PANEL_PREV_3D_BASE::m_staticText3
protectedinherited

Definition at line 48 of file panel_prev_3d_base.h.

Referenced by PANEL_PREV_3D_BASE::PANEL_PREV_3D_BASE().

◆ m_staticText31

wxStaticText* PANEL_PREV_3D_BASE::m_staticText31
protectedinherited

Definition at line 57 of file panel_prev_3d_base.h.

Referenced by PANEL_PREV_3D_BASE::PANEL_PREV_3D_BASE().

◆ m_staticText32

wxStaticText* PANEL_PREV_3D_BASE::m_staticText32
protectedinherited

Definition at line 65 of file panel_prev_3d_base.h.

Referenced by PANEL_PREV_3D_BASE::PANEL_PREV_3D_BASE().

◆ m_userUnits

EDA_UNITS PANEL_PREV_3D::m_userUnits
private

Index into m_parentInfoList.

Definition at line 90 of file panel_prev_model.h.

Referenced by doIncrementOffset(), formatOffsetValue(), onMouseWheelOffset(), PANEL_PREV_3D(), and updateOrientation().

◆ xoff

wxTextCtrl* PANEL_PREV_3D_BASE::xoff
protectedinherited

◆ xrot

wxTextCtrl* PANEL_PREV_3D_BASE::xrot
protectedinherited

◆ xscale

wxTextCtrl* PANEL_PREV_3D_BASE::xscale
protectedinherited

◆ yoff

◆ yrot

wxTextCtrl* PANEL_PREV_3D_BASE::yrot
protectedinherited

◆ yscale

wxTextCtrl* PANEL_PREV_3D_BASE::yscale
protectedinherited

◆ zoff

wxTextCtrl* PANEL_PREV_3D_BASE::zoff
protectedinherited

◆ zrot

wxTextCtrl* PANEL_PREV_3D_BASE::zrot
protectedinherited

◆ zscale

wxTextCtrl* PANEL_PREV_3D_BASE::zscale
protectedinherited

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