26#ifndef PANEL_PREVIEW_3D_MODEL_H
27#define PANEL_PREVIEW_3D_MODEL_H
39#define MAX_SCALE 10000.0
40#define MAX_ROTATION 180.0
41#define MAX_OFFSET 1000.0
43#define SCALE_INCREMENT_FINE 0.02
44#define SCALE_INCREMENT 0.1
46#define ROTATION_INCREMENT 90
47#define ROTATION_INCREMENT_WHEEL 90
48#define ROTATION_INCREMENT_WHEEL_FINE 1
50#define OFFSET_INCREMENT_MM 0.5
51#define OFFSET_INCREMENT_MM_FINE 0.1
53#define OFFSET_INCREMENT_MIL 25.0
54#define OFFSET_INCREMENT_MIL_FINE 5.0
69 std::vector<FP_3DMODEL>* aParentModelList );
Helper class to handle information needed to display 3D board.
Information pertinent to a Pcbnew printed circuit board.
A class used to derive camera objects from.
Implement a canvas based on a wxGLCanvas.
bool SetView3D(int aKeycode)
Helper function to call view commands.
void ReloadRequest(BOARD *aBoard=nullptr, S3D_CACHE *aCachePointer=nullptr)
Provide an extensible class to resolve 3D model paths.
Class PANEL_PREVIEW_3D_MODEL_BASE.
void View3DTop(wxCommandEvent &event) override
wxString formatOffsetValue(double aValue)
CAMERA & GetCurrentCamera() override
void onMouseWheelRot(wxMouseEvent &event) override
void onOpacitySlider(wxCommandEvent &event) override
void View3DFront(wxCommandEvent &event) override
void onDecrementRot(wxSpinEvent &event) override
void onIncrementScale(wxSpinEvent &event) override
BOARD_ADAPTER & GetAdapter() override
void onMouseWheelScale(wxMouseEvent &event) override
void UpdateDummyFootprint(bool aRelaodRequired=true)
Copy shapes from the current shape list which are flagged for preview to the copy of footprint that i...
~PANEL_PREVIEW_3D_MODEL()
wxString formatScaleValue(double aValue)
UNIT_BINDER m_boardThickness
Index into m_parentInfoList.
void doIncrementRotation(wxSpinEvent &aEvent, double aSign)
void loadSettings()
Load 3D relevant settings from the user configuration.
void View3DBack(wxCommandEvent &event) override
void OnMenuEvent(wxMenuEvent &aEvent)
The TOOL_DISPATCHER needs these to work around some issues in wxWidgets where the menu events aren't ...
void onUnitsChanged(wxCommandEvent &aEvent)
void doIncrementOffset(wxSpinEvent &aEvent, double aSign)
wxWindow * GetToolCanvas() const override
Canvas access.
BOARD_ADAPTER m_boardAdapter
void onIncrementOffset(wxSpinEvent &event) override
void onDecrementOffset(wxSpinEvent &event) override
EDA_3D_CANVAS * m_previewPane
void doIncrementScale(wxSpinEvent &aEvent, double aSign)
void View3DLeft(wxCommandEvent &event) override
void updateOrientation(wxCommandEvent &event) override
It will receive the events from editing the fields.
void View3DISO(wxCommandEvent &event) override
wxString formatRotationValue(double aValue)
void onMouseWheelOffset(wxMouseEvent &event) override
FOOTPRINT * m_dummyFootprint
void View3DBottom(wxCommandEvent &event) override
TRACK_BALL m_trackBallCamera
void onDecrementScale(wxSpinEvent &event) override
void onIncrementRot(wxSpinEvent &event) override
void SetSelectedModel(int idx)
Set the currently selected index in the model list so that the scale/rotation/offset controls can be ...
void updateBoardThickness(wxCommandEvent &event) override
void View3DRight(wxCommandEvent &event) override
std::vector< FP_3DMODEL > * m_parentModelList
void View3DUpdate(wxCommandEvent &event) override
Base PCB main window class for Pcbnew, Gerbview, and CvPcb footprint viewer.
Cache for storing the 3D shapes.
A modified version of the wxInfoBar class that allows us to:
Declaration for a track ball camera.