|
KiCad PCB EDA Suite
|
Object to render the board using openGL. More...
#include <render_3d_opengl.h>
Classes | |
| struct | MODELTORENDER |
Public Member Functions | |
| RENDER_3D_OPENGL (EDA_3D_CANVAS *aCanvas, BOARD_ADAPTER &aAdapter, CAMERA &aCamera) | |
| ~RENDER_3D_OPENGL () | |
| void | SetCurWindowSize (const wxSize &aSize) override |
| Before each render, the canvas will tell the render what is the size of its windows, so render can take actions if it changed. | |
| bool | Redraw (bool aIsMoving) override |
| Redraw the view. | |
| int | GetWaitForEditingTimeOut () override |
| Give the interface the time (in ms) that it should wait for editing or movements before (this works for display preview mode). | |
| void | JoinBgWorker () override |
| Block until any in-progress background loading has finished. | |
| void | StopBgWorker () override |
| Request stop and join any in-progress background loading. | |
| void | SetCurrentRollOverItem (BOARD_ITEM *aRollOverItem) |
| void | Load3dModelsIfNeeded () |
| Load footprint models if they are not already loaded, i.e. | |
| void | RebuildHitTestAsync () |
| Rebuild the raytracing hit-test scene in the background after a visibility change. | |
| void | handleGizmoMouseInput (int mouseX, int mouseY) |
| void | updateGizmoSelection (glm::mat4 aCameraRotationMatrix) |
| void | setGizmoViewport (int x, int y, int width, int height) |
| std::tuple< int, int, int, int > | getGizmoViewport () const |
| SPHERES_GIZMO::GizmoSphereSelection | getSelectedGizmoSphere () const |
| void | resetSelectedGizmoSphere () |
| void | ReloadRequest () |
| bool | IsReloadRequestPending () const |
| Query if there is a pending reload request. | |
| void | SetBusyIndicatorFactory (BUSY_INDICATOR::FACTORY aNewFactory) |
| Set a new busy indicator factory. | |
| void | SetReporters (std::shared_ptr< REPORTER > aActivityReporter, std::shared_ptr< REPORTER > aWarningReporter) |
| Set the reporters for activity and warning messages. | |
Protected Member Functions | |
| std::unique_ptr< BUSY_INDICATOR > | CreateBusyIndicator () const |
| Return a created busy indicator, if a factory has been set, else a null pointer. | |
Protected Attributes | |
| BOARD_ADAPTER & | m_boardAdapter |
| Settings reference in use for this render. | |
| CAMERA & | m_camera |
| bool | m_canvasInitialized |
| Flag if the canvas specific for this render was already initialized. | |
| bool | m_reloadRequested |
| wxSize | m_windowSize |
| The window size that this camera is working. | |
| std::shared_ptr< REPORTER > | m_activityReporter |
| std::shared_ptr< REPORTER > | m_warningReporter |
Static Protected Attributes | |
| static const wxChar * | m_logTrace = wxT( "KI_TRACE_3D_RENDER" ) |
| Trace mask used to enable or disable the trace output of this class. | |
Private Member Functions | |
| std::shared_ptr< OPENGL_RENDER_LIST_DEFERRED > | generateHoles (const LIST_OBJECT2D &aListHolesObject2d, const SHAPE_POLY_SET &aPoly, float aZtop, float aZbot, bool aInvertFaces, const BVH_CONTAINER_2D *aThroughHoles=nullptr) |
| std::shared_ptr< OPENGL_RENDER_LIST_DEFERRED > | generateLayerList (const BVH_CONTAINER_2D *aContainer, const SHAPE_POLY_SET *aPolyList, PCB_LAYER_ID aLayer, const BVH_CONTAINER_2D *aThroughHoles=nullptr) |
| std::shared_ptr< OPENGL_RENDER_LIST_DEFERRED > | generateEmptyLayerList (PCB_LAYER_ID aLayer) |
| void | addTopAndBottomTriangles (std::shared_ptr< TRIANGLE_DISPLAY_LIST > aDst, const SFVEC2F &v0, const SFVEC2F &v1, const SFVEC2F &v2, float top, float bot) |
| void | addObjectTriangles (const RING_2D *aRing, std::shared_ptr< TRIANGLE_DISPLAY_LIST > aDstLayer, float aZtop, float aZbot) |
| void | addObjectTriangles (const POLYGON_4PT_2D *aPoly, std::shared_ptr< TRIANGLE_DISPLAY_LIST > aDstLayer, float aZtop, float aZbot) |
| void | addObjectTriangles (const FILLED_CIRCLE_2D *aCircle, std::shared_ptr< TRIANGLE_DISPLAY_LIST > aDstLayer, float aZtop, float aZbot) |
| void | addObjectTriangles (const TRIANGLE_2D *aTri, std::shared_ptr< TRIANGLE_DISPLAY_LIST > aDstLayer, float aZtop, float aZbot) |
| void | addObjectTriangles (const ROUND_SEGMENT_2D *aSeg, std::shared_ptr< TRIANGLE_DISPLAY_LIST > aDstLayer, float aZtop, float aZbot) |
| void | renderSolderMaskLayer (PCB_LAYER_ID aLayerID, float aZPos, bool aShowThickness, bool aSkipRenderHoles) |
| void | renderBoardBody (bool aSkipRenderHoles) |
| void | getLayerZPos (PCB_LAYER_ID aLayerID, float &aOutZtop, float &aOutZbot) const |
| void | generateRing (const SFVEC2F &aCenter, float aInnerRadius, float aOuterRadius, unsigned int aNr_sides_per_circle, std::vector< SFVEC2F > &aInnerContourResult, std::vector< SFVEC2F > &aOuterContourResult, bool aInvertOrder) |
| void | generateCylinder (const SFVEC2F &aCenter, float aInnerRadius, float aOuterRadius, float aZtop, float aZbot, unsigned int aNr_sides_per_circle, std::shared_ptr< TRIANGLE_DISPLAY_LIST > aDstLayer) |
| void | generateInvCone (const SFVEC2F &aCenter, float aInnerRadius, float aOuterRadius, float aZtop, float aZbot, unsigned int aNr_sides_per_circle, std::shared_ptr< TRIANGLE_DISPLAY_LIST > aDstLayer, EDA_ANGLE aAngle) |
| void | generateDisk (const SFVEC2F &aCenter, float aRadius, float aZ, unsigned int aNr_sides_per_circle, std::shared_ptr< TRIANGLE_DISPLAY_LIST > aDstLayer, bool aTop) |
| void | generateDimple (const SFVEC2F &aCenter, float aRadius, float aZ, float aDepth, unsigned int aNr_sides_per_circle, std::shared_ptr< TRIANGLE_DISPLAY_LIST > aDstLayer, bool aTop) |
| void | generateViasAndPads () |
| bool | appendPostMachiningGeometry (std::shared_ptr< TRIANGLE_DISPLAY_LIST > aDstLayer, const SFVEC2F &aHoleCenter, PAD_DRILL_POST_MACHINING_MODE aMode, int aSizeIU, int aDepthIU, float aHoleInnerRadius, float aZSurface, bool aIsFront, float aPlatingThickness3d, float aUnitScale, float *aZEnd) |
| void | generateViaBarrels (float aPlatingThickness3d, float aUnitScale) |
| void | generatePlatedHoleShells (int aPlatingThickness, float aUnitScale) |
| void | generateViaCovers (float aPlatingThickness3d, float aUnitScale) |
| void | load3dModels (std::stop_token aStop=std::stop_token()) |
| Load footprint models from the cache and load it to deferred openGL lists (MODEL_3D_DEFERRED) objects. | |
| void | createPlaceholderModel () |
| void | renderPlaceholderForFootprint (std::list< MODELTORENDER > &aDstRenderList, const glm::mat4 &aFpMatrix, const FOOTPRINT *aFootprint, bool aRenderTransparentOnly, bool aIsSelected, float aOpacity) |
| void | renderExtrudedBodies () |
| void | renderOpaqueModels (const glm::mat4 &aCameraViewMatrix) |
| void | renderExtrudedBodies (bool aTransparentPass) |
| void | renderTransparentModels (const glm::mat4 &aCameraViewMatrix) |
| void | renderModel (const glm::mat4 &aCameraViewMatrix, const MODELTORENDER &aModelToRender, const SFVEC3F &aSelColor, const SFVEC3F *aCameraWorldPos) |
| void | get3dModelsSelected (std::list< MODELTORENDER > &aDstRenderList, bool aGetTop, bool aGetBot, bool aRenderTransparentOnly, bool aRenderSelectedOnly) |
| void | get3dModelsFromFootprint (std::list< MODELTORENDER > &aDstRenderList, const FOOTPRINT *aFootprint, bool aRenderTransparentOnly, bool aIsSelected) |
| void | setLightFront (bool enabled) |
| void | setLightTop (bool enabled) |
| void | setLightBottom (bool enabled) |
| void | generate3dGrid (GRID3D_TYPE aGridType) |
| Create a 3D grid to an OpenGL display list. | |
| void | setupMaterials () |
| void | setCopperMaterial () |
| void | setPlatedCopperAndDepthOffset (PCB_LAYER_ID aLayer_id) |
| void | unsetDepthOffset () |
| void | setLayerMaterial (PCB_LAYER_ID aLayerID) |
| bool | initializeOpenGL () |
| std::shared_ptr< OPENGL_RENDER_LIST_DEFERRED > | createBoard (const SHAPE_POLY_SET &aBoardPoly, const BVH_CONTAINER_2D *aThroughHoles=nullptr, bool aTransparent=false) |
| void | backfillPostMachine () |
| Create ring-shaped plugs for holes that have backdrill or post-machining. | |
| void | reload () |
| void | setArrowMaterial () |
| void | freeAllLists () |
| void | releaseRetiredRenderPtrs () |
| void | startBgWorker () |
| void | bgWorker (std::stop_token aStop) |
| void | runHitTestRebuild (std::stop_token aStop) |
| void | sendRefreshView () |
| template<typename T> | |
| void | assignRenderPtr (std::shared_ptr< T > &aDst, std::shared_ptr< T > aVal) |
| template<typename TMap> | |
| void | assignRenderMap (TMap &aMap, const typename TMap::key_type &aKey, typename TMap::mapped_type aVal) |
| template<typename T> | |
| void | retireRenderPtr (std::shared_ptr< T > &aPtr) |
| void | appendRenderTriangleList (std::shared_ptr< TRIANGLE_DISPLAY_LIST > aTriangles) |
Object to render the board using openGL.
Definition at line 58 of file render_3d_opengl.h.
|
explicit |
Definition at line 48 of file render_3d_opengl.cpp.
References m_3dModelMap, m_antiBoard, m_board, m_boardWithHoles, m_canvas, m_circleTexture, m_currentRollOverItem, m_grid, m_innerLayerHoles, m_lastGridType, m_layers, RENDER_3D_BASE::m_logTrace, m_microviaHoles, m_offboardPadsBack, m_offboardPadsFront, m_outerLayerHoles, m_outerThroughHoleRings, m_outerThroughHoles, m_outerViaThroughHoles, m_padHoles, m_platedPadsBack, m_platedPadsFront, m_postMachinePlugs, m_spheres_gizmo, m_triangles, m_viaBackCover, m_viaFrontCover, NONE, and RENDER_3D_BASE::RENDER_3D_BASE().
| RENDER_3D_OPENGL::~RENDER_3D_OPENGL | ( | ) |
Definition at line 87 of file render_3d_opengl.cpp.
References ORPHANED_GL_OBJECTS::Active(), freeAllLists(), RENDER_3D_BASE::m_canvasInitialized, m_circleTexture, RENDER_3D_BASE::m_logTrace, m_placeholderModel, m_spheres_gizmo, and StopBgWorker().
|
private |
Definition at line 39 of file opengl/create_scene.cpp.
References center, FILLED_CIRCLE_2D::GetCenter(), FILLED_CIRCLE_2D::GetRadius(), radius, and SIZE_OF_CIRCLE_TEXTURE.
|
private |
Definition at line 68 of file opengl/create_scene.cpp.
References addTopAndBottomTriangles(), POLYGON_4PT_2D::GetV0(), POLYGON_4PT_2D::GetV1(), POLYGON_4PT_2D::GetV2(), POLYGON_4PT_2D::GetV3(), v1, v2, and v3.
|
private |
Definition at line 115 of file opengl/create_scene.cpp.
References center, generateRing(), RING_2D::GetCenter(), RING_2D::GetInnerRadius(), RING_2D::GetOuterRadius(), and RENDER_3D_BASE::m_boardAdapter.
Referenced by generateHoles(), and generateLayerList().
|
private |
Definition at line 160 of file opengl/create_scene.cpp.
References end, ROUND_SEGMENT_2D::GetEnd(), ROUND_SEGMENT_2D::GetLeftDir(), ROUND_SEGMENT_2D::GetLeftEnd(), ROUND_SEGMENT_2D::GetLeftStar(), ROUND_SEGMENT_2D::GetRadius(), ROUND_SEGMENT_2D::GetRadiusSquared(), ROUND_SEGMENT_2D::GetRightDir(), ROUND_SEGMENT_2D::GetRightEnd(), ROUND_SEGMENT_2D::GetRightStar(), ROUND_SEGMENT_2D::GetStart(), radius, and SIZE_OF_CIRCLE_TEXTURE.
|
private |
Definition at line 149 of file opengl/create_scene.cpp.
References addTopAndBottomTriangles(), TRIANGLE_2D::GetP1(), TRIANGLE_2D::GetP2(), TRIANGLE_2D::GetP3(), v1, v2, and v3.
|
private |
Definition at line 1240 of file opengl/create_scene.cpp.
Referenced by addObjectTriangles(), addObjectTriangles(), createBoard(), generatePlatedHoleShells(), and renderExtrudedBodies().
|
private |
Definition at line 1409 of file opengl/create_scene.cpp.
References COUNTERBORE, COUNTERSINK, generateCylinder(), generateRing(), RENDER_3D_BASE::m_boardAdapter, and radius.
Referenced by generateViaBarrels().
|
inlineprivate |
Definition at line 320 of file render_3d_opengl.h.
References m_renderMutex, and m_triangles.
Referenced by backfillPostMachine(), generateEmptyLayerList(), generateLayerList(), and renderExtrudedBodies().
|
inlineprivate |
Definition at line 305 of file render_3d_opengl.h.
References m_renderMutex, and retireRenderPtr().
Referenced by bgWorker(), load3dModels(), and renderExtrudedBodies().
|
inlineprivate |
Definition at line 297 of file render_3d_opengl.h.
References m_renderMutex, and retireRenderPtr().
Referenced by backfillPostMachine(), bgWorker(), generatePlatedHoleShells(), generateViaBarrels(), generateViaCovers(), and reload().
|
private |
Create ring-shaped plugs for holes that have backdrill or post-machining.
These plugs represent the board material that remains in the hole where the backdrill or post-machining didn't reach.
Definition at line 420 of file opengl/create_scene.cpp.
References appendRenderTriangleList(), assignRenderPtr(), B_Cu, center, CIRCLE, COUNTERSINK, dummy, F_Cu, generateCylinder(), generateInvCone(), getLayerZPos(), RENDER_3D_BASE::m_boardAdapter, m_circleTexture, m_postMachinePlugs, NOT_POST_MACHINED, pad, PCB_VIA_T, TENTHS_OF_A_DEGREE_T, UNKNOWN, and via.
Referenced by bgWorker().
|
private |
Definition at line 836 of file opengl/create_scene.cpp.
References _, assignRenderMap(), assignRenderPtr(), B_Cu, B_Mask, B_SilkS, backfillPostMachine(), SHAPE_POLY_SET::BooleanAdd(), SHAPE_POLY_SET::BooleanIntersection(), SHAPE_POLY_SET::BooleanSubtract(), SHAPE_POLY_SET::CloneDropTriangulation(), createBoard(), F_Cu, F_Mask, F_SilkS, generateEmptyLayerList(), generateHoles(), generateLayerList(), generateViasAndPads(), getLayerZPos(), GetRunningMicroSecs(), load3dModels(), RENDER_3D_BASE::m_activityReporter, m_antiBoard, m_antiBoardPolys, m_board, RENDER_3D_BASE::m_boardAdapter, m_boardWithHoles, m_canvas, m_hitTestDirty, m_innerLayerHoles, m_layers, m_offboardPadsBack, m_offboardPadsFront, m_outerLayerHoles, m_outerThroughHoleRings, m_outerThroughHoles, m_outerViaThroughHoles, m_platedPadsBack, m_platedPadsFront, LSET::PhysicalLayersMask(), renderExtrudedBodies(), runHitTestRebuild(), and sendRefreshView().
Referenced by startBgWorker().
|
private |
Definition at line 368 of file opengl/create_scene.cpp.
References addTopAndBottomTriangles(), ConvertPolygonToTriangles(), CONTAINER_2D_BASE::GetList(), OBJECT_2D::GetObjectType(), TRIANGLE_2D::GetP1(), TRIANGLE_2D::GetP2(), TRIANGLE_2D::GetP3(), RENDER_3D_BASE::m_boardAdapter, m_circleTexture, SHAPE_POLY_SET::OutlineCount(), TRIANGLE, v1, v2, and v3.
Referenced by bgWorker(), and reload().
|
protectedinherited |
Return a created busy indicator, if a factory has been set, else a null pointer.
Definition at line 65 of file render_3d_base.cpp.
References m_busyIndicatorFactory.
Referenced by RENDER_3D_OPENGL::Redraw(), RENDER_3D_RAYTRACE_GL::Redraw(), and RENDER_3D_RAYTRACE_RAM::Redraw().
|
private |
Definition at line 1728 of file render_3d_opengl.cpp.
References m_placeholderModel, model, and NORMAL.
Referenced by reload().
|
private |
Definition at line 1023 of file render_3d_opengl.cpp.
References ORPHANED_GL_OBJECTS::Active(), DELETE_AND_FREE, DELETE_AND_FREE_MAP, m_3dModelMap, m_3dModelMatrixMap, m_antiBoard, m_board, m_boardWithHoles, RENDER_3D_BASE::m_canvasInitialized, m_extrudedBodyLists, m_extrudedPadLists, m_grid, m_innerLayerHoles, m_layers, m_microviaHoles, m_offboardPadsBack, m_offboardPadsFront, m_outerLayerHoles, m_outerThroughHoleRings, m_outerThroughHoles, m_outerViaThroughHoles, m_padHoles, m_placeholderModel, m_platedPadsBack, m_platedPadsFront, m_postMachinePlugs, m_triangles, m_viaBackCover, and m_viaFrontCover.
Referenced by reload(), and ~RENDER_3D_OPENGL().
|
private |
Create a 3D grid to an OpenGL display list.
A horizontal grid (XY plane and Z = 0, and a vertical grid (XZ plane and Y = 0).
Definition at line 1543 of file render_3d_opengl.cpp.
References DARKGRAY, delta, GRID_10MM, GRID_1MM, GRID_2P5MM, GRID_5MM, KiROUND(), LIGHTBLUE, RENDER_3D_BASE::m_boardAdapter, m_grid, NONE, pcbIUScale, scale, VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by Redraw().
|
private |
Definition at line 1267 of file opengl/create_scene.cpp.
References generateRing().
Referenced by appendPostMachiningGeometry(), backfillPostMachine(), and generateViaBarrels().
|
private |
Definition at line 1385 of file opengl/create_scene.cpp.
References delta.
Referenced by generateViaCovers().
|
private |
Definition at line 1362 of file opengl/create_scene.cpp.
References delta.
Referenced by generateViaCovers().
|
private |
Definition at line 352 of file opengl/create_scene.cpp.
References appendRenderTriangleList(), getLayerZPos(), and m_circleTexture.
Referenced by bgWorker().
|
private |
Definition at line 244 of file opengl/create_scene.cpp.
References addObjectTriangles(), FILLED_CIRCLE, RENDER_3D_BASE::m_boardAdapter, m_circleTexture, SHAPE_POLY_SET::OutlineCount(), and ROUNDSEG.
Referenced by bgWorker().
|
private |
Definition at line 1300 of file opengl/create_scene.cpp.
References EDA_ANGLE::AsRadians(), and generateRing().
Referenced by backfillPostMachine().
|
private |
Definition at line 286 of file opengl/create_scene.cpp.
References addObjectTriangles(), appendRenderTriangleList(), FILLED_CIRCLE, getLayerZPos(), CONTAINER_2D_BASE::GetList(), RENDER_3D_BASE::m_boardAdapter, m_circleTexture, SHAPE_POLY_SET::OutlineCount(), POLYGON4PT, RING, ROUNDSEG, and TRIANGLE.
Referenced by bgWorker().
|
private |
Definition at line 1679 of file opengl/create_scene.cpp.
References addTopAndBottomTriangles(), assignRenderPtr(), B_Cu, SHAPE_POLY_SET::BooleanAdd(), SHAPE_POLY_SET::BooleanSubtract(), CAPPED, ConvertPolygonToTriangles(), dummy, ERROR_INSIDE, F_Cu, getLayerZPos(), CONTAINER_2D_BASE::GetList(), OBJECT_2D::GetObjectType(), TRIANGLE_2D::GetP1(), TRIANGLE_2D::GetP2(), TRIANGLE_2D::GetP3(), m_antiBoardPolys, RENDER_3D_BASE::m_boardAdapter, m_circleTexture, m_padHoles, NPTH, SHAPE_POLY_SET::OutlineCount(), pad, PCB_VIA_T, SHAPE_POLY_SET::RemoveAllContours(), THROUGH, TransformCircleToPolygon(), TRIANGLE, v1, v2, v3, and via.
Referenced by generateViasAndPads().
|
private |
Definition at line 81 of file opengl/create_scene.cpp.
References delta.
Referenced by addObjectTriangles(), appendPostMachiningGeometry(), generateCylinder(), and generateInvCone().
|
private |
Definition at line 1504 of file opengl/create_scene.cpp.
References appendPostMachiningGeometry(), assignRenderPtr(), B_Cu, CIRCLE, dummy, F_Cu, generateCylinder(), getLayerZPos(), RENDER_3D_BASE::m_boardAdapter, m_microviaHoles, NOT_POST_MACHINED, NPTH, pad, PCB_VIA_T, THROUGH, UNKNOWN, and via.
Referenced by generateViasAndPads().
|
private |
Definition at line 1787 of file opengl/create_scene.cpp.
References assignRenderPtr(), B_Cu, B_Mask, CAPPED, center, COVERED, dummy, F_Cu, F_Mask, FILLED, generateDimple(), generateDisk(), getLayerZPos(), RENDER_3D_BASE::m_boardAdapter, m_viaBackCover, m_viaFrontCover, NOT_POST_MACHINED, PCB_VIA_T, PLUGGED, UNKNOWN, and via.
Referenced by generateViasAndPads().
|
private |
Definition at line 1865 of file opengl/create_scene.cpp.
References generatePlatedHoleShells(), generateViaBarrels(), generateViaCovers(), and RENDER_3D_BASE::m_boardAdapter.
Referenced by bgWorker().
|
private |
Definition at line 1181 of file render_3d_opengl.cpp.
References CalcModelMatrix(), EDA_ITEM::IsSelected(), m_3dModelMap, m_3dModelMatrixMap, RENDER_3D_BASE::m_boardAdapter, FOOTPRINT::Models(), renderPlaceholderForFootprint(), and scale.
Referenced by get3dModelsSelected().
|
private |
Definition at line 1135 of file render_3d_opengl.cpp.
References get3dModelsFromFootprint(), EDA_3D_VIEWER_SETTINGS::RENDER_SETTINGS::highlight_on_rollover, RENDER_3D_BASE::m_boardAdapter, and m_currentRollOverItem.
Referenced by renderOpaqueModels(), and renderTransparentModels().
| std::tuple< int, int, int, int > RENDER_3D_OPENGL::getGizmoViewport | ( | ) | const |
Definition at line 171 of file render_3d_opengl.cpp.
References m_spheres_gizmo.
|
private |
Definition at line 1253 of file opengl/create_scene.cpp.
References RENDER_3D_BASE::m_boardAdapter.
Referenced by backfillPostMachine(), bgWorker(), generateEmptyLayerList(), generateLayerList(), generatePlatedHoleShells(), generateViaBarrels(), and generateViaCovers().
| SPHERES_GIZMO::GizmoSphereSelection RENDER_3D_OPENGL::getSelectedGizmoSphere | ( | ) | const |
Definition at line 159 of file render_3d_opengl.cpp.
References m_spheres_gizmo.
|
overridevirtual |
Give the interface the time (in ms) that it should wait for editing or movements before (this works for display preview mode).
Implements RENDER_3D_BASE.
Definition at line 104 of file render_3d_opengl.cpp.
| void RENDER_3D_OPENGL::handleGizmoMouseInput | ( | int | mouseX, |
| int | mouseY ) |
Definition at line 177 of file render_3d_opengl.cpp.
References m_spheres_gizmo.
|
private |
Definition at line 961 of file render_3d_opengl.cpp.
References IMAGE::CircleFilled(), IMAGE::EfxFilter_SkipCenter(), GAUSSIAN_BLUR, IMAGE::GetHeight(), IMAGE::GetWidth(), IMAGE, init_lights(), RENDER_3D_BASE::m_canvasInitialized, m_circleTexture, OglLoadTexture(), and SIZE_OF_CIRCLE_TEXTURE.
Referenced by Redraw().
|
inlineinherited |
Query if there is a pending reload request.
Definition at line 71 of file render_3d_base.h.
References m_reloadRequested.
|
overridevirtual |
Block until any in-progress background loading has finished.
Reimplemented from RENDER_3D_BASE.
Definition at line 1231 of file opengl/create_scene.cpp.
References m_bgWorkerThread, and RENDER_3D_BASE::m_logTrace.
|
private |
Load footprint models from the cache and load it to deferred openGL lists (MODEL_3D_DEFERRED) objects.
This map of models will work as a local cache for this render. (cache based on MODEL_3D_DEFERRED with openGL lists in GPU memory on request)
| aStop | the stop token to allow cancellation of the loading process. |
Definition at line 1889 of file opengl/create_scene.cpp.
References _, assignRenderMap(), PROJECT_PCB::FootprintLibAdapter(), LIBRARY_MANAGER::GetFullURI(), S3D_CACHE::GetModel(), LIBRARY_MANAGER_ADAPTER::GetRow(), m_3dModelMap, RENDER_3D_BASE::m_activityReporter, RENDER_3D_BASE::m_boardAdapter, model, and sendRefreshView().
Referenced by bgWorker(), and Load3dModelsIfNeeded().
| void RENDER_3D_OPENGL::Load3dModelsIfNeeded | ( | ) |
Load footprint models if they are not already loaded, i.e.
if m_3dModelMap is empty
Definition at line 1880 of file opengl/create_scene.cpp.
References load3dModels(), and m_3dModelMap.
Referenced by APPEARANCE_CONTROLS_3D::OnLayerVisibilityChanged().
| void RENDER_3D_OPENGL::RebuildHitTestAsync | ( | ) |
Rebuild the raytracing hit-test scene in the background after a visibility change.
Definition at line 1173 of file opengl/create_scene.cpp.
References m_bgWorkerBusy, m_bgWorkerThread, m_hitTestDirty, and runHitTestRebuild().
Referenced by APPEARANCE_CONTROLS_3D::OnLayerVisibilityChanged().
|
overridevirtual |
Redraw the view.
| aIsMoving | if the user is moving the scene, it should be render in preview mode. |
Implements RENDER_3D_BASE.
Definition at line 523 of file render_3d_opengl.cpp.
References _, B_Cu, B_Mask, B_Paste, B_SilkS, EDA_3D_VIEWER_SETTINGS::RENDER_SETTINGS::clip_silk_on_via_annuli, RENDER_3D_BASE::CreateBusyIndicator(), EDA_3D_VIEWER_SETTINGS::RENDER_SETTINGS::DifferentiatePlatedCopper(), F_Cu, F_Mask, F_Paste, F_SilkS, generate3dGrid(), PGM_BASE::GetGLContextManager(), EDA_3D_VIEWER_SETTINGS::RENDER_SETTINGS::grid_type, EDA_3D_VIEWER_SETTINGS::RENDER_SETTINGS::highlight_on_rollover, initializeOpenGL(), IsCopperLayer(), LAYER_3D_BOARD, LAYER_3D_SOLDERMASK_BOTTOM, LAYER_3D_SOLDERMASK_TOP, RENDER_3D_BASE::m_activityReporter, m_antiBoard, RENDER_3D_BASE::m_boardAdapter, RENDER_3D_BASE::m_camera, RENDER_3D_BASE::m_canvasInitialized, m_circleTexture, m_currentRollOverItem, SMATERIAL::m_Diffuse, m_extrudedPadLists, m_grid, m_lastGridType, m_layers, m_materials, m_microviaHoles, m_offboardPadsBack, m_offboardPadsFront, m_outerLayerHoles, m_outerThroughHoleRings, m_outerThroughHoles, m_padHoles, m_platedPadsBack, m_platedPadsFront, RENDER_3D_BASE::m_reloadRequested, m_renderMutex, SMATERIAL::m_Shininess, SMATERIAL::m_Specular, m_spheres_gizmo, SMATERIAL::m_Transparency, RENDER_3D_BASE::m_windowSize, NONE, OglDrawBackground(), OglResetTextureState(), OglSetMaterial(), EDA_3D_VIEWER_SETTINGS::RENDER_SETTINGS::opengl_AA_disableOnMove, EDA_3D_VIEWER_SETTINGS::RENDER_SETTINGS::opengl_holes_disableOnMove, EDA_3D_VIEWER_SETTINGS::RENDER_SETTINGS::opengl_microvias_disableOnMove, EDA_3D_VIEWER_SETTINGS::RENDER_SETTINGS::opengl_selection_color, EDA_3D_VIEWER_SETTINGS::RENDER_SETTINGS::opengl_thickness_disableOnMove, Pgm(), LSET::PhysicalLayersMask(), premultiplyAlpha(), releaseRetiredRenderPtrs(), reload(), renderBoardBody(), renderExtrudedBodies(), renderOpaqueModels(), renderSolderMaskLayer(), renderTransparentModels(), GL_CONTEXT_MANAGER::RunWithoutCtxLock(), setCopperMaterial(), setLayerMaterial(), setLightBottom(), setLightFront(), setLightTop(), setPlatedCopperAndDepthOffset(), setupMaterials(), EDA_3D_VIEWER_SETTINGS::RENDER_SETTINGS::show_navigator, EDA_3D_VIEWER_SETTINGS::RENDER_SETTINGS::show_off_board_silk, EDA_3D_VIEWER_SETTINGS::RENDER_SETTINGS::subtract_mask_from_silk, and unsetDepthOffset().
|
private |
Definition at line 1082 of file render_3d_opengl.cpp.
References m_renderMutex, and m_retiredRenderPtrs.
Referenced by Redraw().
|
private |
Definition at line 801 of file opengl/create_scene.cpp.
References assignRenderPtr(), createBoard(), createPlaceholderModel(), freeAllLists(), OBJECT_2D_STATS::Instance(), RENDER_3D_BASE::m_activityReporter, m_board, RENDER_3D_BASE::m_boardAdapter, RENDER_3D_BASE::m_camera, m_canvas, RENDER_3D_BASE::m_reloadRequested, RENDER_3D_BASE::m_warningReporter, OBJECT_2D_STATS::ResetStats(), startBgWorker(), and StopBgWorker().
Referenced by Redraw().
|
inlineinherited |
Definition at line 64 of file render_3d_base.h.
References m_reloadRequested.
|
private |
Definition at line 473 of file render_3d_opengl.cpp.
References m_board, RENDER_3D_BASE::m_boardAdapter, m_boardWithHoles, m_materials, m_postMachinePlugs, and OglSetMaterial().
Referenced by Redraw().
|
private |
Definition at line 672 of file opengl/create_scene.cpp.
References addTopAndBottomTriangles(), appendRenderTriangleList(), ApplyExtrusionTransform(), assignRenderMap(), ConvertPolygonToTriangles(), GetExtrusionOutline(), GetExtrusionPinOutline(), CONTAINER_2D_BASE::GetList(), TRIANGLE_2D::GetP1(), TRIANGLE_2D::GetP2(), TRIANGLE_2D::GetP3(), RENDER_3D_BASE::m_boardAdapter, m_circleTexture, m_extrudedBodyLists, m_extrudedPadLists, EXTRUDED_3D_BODY::m_height, EXTRUDED_3D_BODY::m_offset, EXTRUDED_3D_BODY::m_scale, EXTRUDED_3D_BODY::m_show, EXTRUDED_3D_BODY::m_standoff, SHAPE_POLY_SET::OutlineCount(), pcbIUScale, SHAPE_POLY_SET::Simplify(), and VECTOR3< T >::z.
Referenced by bgWorker(), and Redraw().
|
private |
Definition at line 1355 of file render_3d_opengl.cpp.
References KIGFX::COLOR4D::a, KIGFX::COLOR4D::b, KIGFX::COLOR4D::g, EXTRUDED_3D_BODY::GetDefaultColor(), GetMaterialProps(), EDA_3D_VIEWER_SETTINGS::RENDER_SETTINGS::highlight_on_rollover, EXTRUSION_MATERIAL_PROPS::m_Ambient, SMATERIAL::m_Ambient, RENDER_3D_BASE::m_boardAdapter, EXTRUDED_3D_BODY::m_color, m_currentRollOverItem, SMATERIAL::m_Diffuse, SMATERIAL::m_Emissive, m_extrudedBodyLists, EXTRUDED_3D_BODY::m_material, EXTRUSION_MATERIAL_PROPS::m_Shininess, SMATERIAL::m_Shininess, EXTRUSION_MATERIAL_PROPS::m_Specular, SMATERIAL::m_Specular, SMATERIAL::m_Transparency, OglSetMaterial(), EDA_3D_VIEWER_SETTINGS::RENDER_SETTINGS::opengl_selection_color, KIGFX::COLOR4D::r, and KIGFX::COLOR4D::UNSPECIFIED.
|
private |
Definition at line 1503 of file render_3d_opengl.cpp.
References MODEL_3D::Draw(), MODEL_3D::DrawBbox(), MODEL_3D::DrawBboxes(), RENDER_3D_BASE::m_boardAdapter, RENDER_3D_OPENGL::MODELTORENDER::m_isSelected, RENDER_3D_OPENGL::MODELTORENDER::m_isTransparent, RENDER_3D_OPENGL::MODELTORENDER::m_model, RENDER_3D_OPENGL::MODELTORENDER::m_modelWorldMat, RENDER_3D_OPENGL::MODELTORENDER::m_opacity, and EDA_3D_VIEWER_SETTINGS::RENDER_SETTINGS::show_model_bbox.
Referenced by renderOpaqueModels(), and renderTransparentModels().
|
private |
Definition at line 1311 of file render_3d_opengl.cpp.
References MODEL_3D::BeginDrawMulti(), MODEL_3D::EndDrawMulti(), get3dModelsSelected(), RENDER_3D_BASE::m_boardAdapter, EDA_3D_VIEWER_SETTINGS::RENDER_SETTINGS::opengl_selection_color, and renderModel().
Referenced by Redraw().
|
private |
Definition at line 1268 of file render_3d_opengl.cpp.
References std::abs(), CalcPlaceholderLocalBox(), BOX2< Vec >::GetCenter(), BOX2< Vec >::GetHeight(), BOX2< Vec >::GetWidth(), FOOTPRINT::IsFlipped(), EDA_ITEM::IsSelected(), RENDER_3D_BASE::m_boardAdapter, m_extrudedBodyLists, m_placeholderModel, pcbIUScale, VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by get3dModelsFromFootprint().
|
private |
Definition at line 1093 of file render_3d_opengl.cpp.
References B_Mask, F_Mask, m_board, RENDER_3D_BASE::m_boardAdapter, m_layers, m_outerThroughHoles, m_viaBackCover, m_viaFrontCover, and setLayerMaterial().
Referenced by Redraw().
|
private |
Definition at line 1412 of file render_3d_opengl.cpp.
References MODEL_3D::BeginDrawMulti(), MODEL_3D::EndDrawMulti(), get3dModelsSelected(), BBOX_3D::GetCenter(), RENDER_3D_BASE::m_boardAdapter, RENDER_3D_BASE::m_camera, EDA_3D_VIEWER_SETTINGS::RENDER_SETTINGS::opengl_selection_color, and renderModel().
Referenced by Redraw().
| void RENDER_3D_OPENGL::resetSelectedGizmoSphere | ( | ) |
Definition at line 153 of file render_3d_opengl.cpp.
References m_spheres_gizmo.
|
inlineprivate |
Definition at line 314 of file render_3d_opengl.h.
References m_retiredRenderPtrs.
Referenced by assignRenderMap(), and assignRenderPtr().
|
private |
Definition at line 1193 of file opengl/create_scene.cpp.
References m_bgWorkerBusy, m_canvas, and m_hitTestDirty.
Referenced by bgWorker(), and RebuildHitTestAsync().
|
private |
Definition at line 829 of file opengl/create_scene.cpp.
References ID_CUSTOM_EVENT_1, and m_canvas.
Referenced by bgWorker(), and load3dModels().
|
private |
Definition at line 1004 of file render_3d_opengl.cpp.
|
inherited |
Set a new busy indicator factory.
When set, this factory will be used to generate busy indicators when suitable. If not set, no busy indicator will be used.
Definition at line 59 of file render_3d_base.cpp.
References m_busyIndicatorFactory.
|
private |
Definition at line 453 of file render_3d_opengl.cpp.
References m_materials, and OglSetMaterial().
Referenced by Redraw().
|
inline |
Definition at line 73 of file render_3d_opengl.h.
References m_currentRollOverItem.
|
overridevirtual |
Before each render, the canvas will tell the render what is the size of its windows, so render can take actions if it changed.
| aSize | the current size of the render window |
Implements RENDER_3D_BASE.
Definition at line 110 of file render_3d_opengl.cpp.
References RENDER_3D_BASE::m_windowSize, and setGizmoViewport().
| void RENDER_3D_OPENGL::setGizmoViewport | ( | int | x, |
| int | y, | ||
| int | width, | ||
| int | height ) |
Definition at line 165 of file render_3d_opengl.cpp.
References m_spheres_gizmo.
Referenced by SetCurWindowSize().
|
private |
Definition at line 280 of file render_3d_opengl.cpp.
References KIGFX::COLOR4D::b, B_Adhes, B_CrtYd, B_Fab, B_Mask, B_Paste, B_SilkS, Cmts_User, Dwgs_User, Eco1_User, Eco2_User, Edge_Cuts, F_Adhes, F_CrtYd, F_Fab, F_Mask, F_Paste, F_SilkS, KIGFX::COLOR4D::g, IsCopperLayer(), LAYER_3D_USER_1, LAYER_3D_USER_45, RENDER_3D_BASE::m_boardAdapter, m_materials, MapPCBLayerTo3DLayer(), Margin, OglSetMaterial(), and KIGFX::COLOR4D::r.
Referenced by Redraw(), renderSolderMaskLayer(), and setPlatedCopperAndDepthOffset().
|
private |
Definition at line 144 of file render_3d_opengl.cpp.
Referenced by Redraw().
|
private |
Definition at line 126 of file render_3d_opengl.cpp.
Referenced by Redraw().
|
private |
Definition at line 135 of file render_3d_opengl.cpp.
Referenced by Redraw().
|
private |
Definition at line 459 of file render_3d_opengl.cpp.
References setLayerMaterial().
Referenced by Redraw().
|
inlineinherited |
Set the reporters for activity and warning messages.
| aActivityReporter | a shared pointer to the activity reporter. |
| aWarningReporter | a shared pointer to the warning reporter. |
Definition at line 105 of file render_3d_base.h.
References m_activityReporter, and m_warningReporter.
Referenced by PCBNEW_JOBS_HANDLER::JobExportRender().
|
private |
Definition at line 189 of file render_3d_opengl.cpp.
References RENDER_3D_BASE::m_boardAdapter, m_materials, and mapf().
Referenced by Redraw().
|
private |
Definition at line 1153 of file opengl/create_scene.cpp.
References bgWorker(), m_bgWorkerBusy, m_bgWorkerThread, and RENDER_3D_BASE::m_logTrace.
Referenced by reload().
|
overridevirtual |
Request stop and join any in-progress background loading.
Reimplemented from RENDER_3D_BASE.
Definition at line 1214 of file opengl/create_scene.cpp.
References _, RENDER_3D_BASE::m_activityReporter, m_bgWorkerBusy, m_bgWorkerThread, and RENDER_3D_BASE::m_logTrace.
Referenced by reload(), and ~RENDER_3D_OPENGL().
|
private |
Definition at line 467 of file render_3d_opengl.cpp.
Referenced by Redraw().
| void RENDER_3D_OPENGL::updateGizmoSelection | ( | glm::mat4 | aCameraRotationMatrix | ) |
Definition at line 183 of file render_3d_opengl.cpp.
References m_spheres_gizmo.
|
private |
Definition at line 356 of file render_3d_opengl.h.
Referenced by freeAllLists(), get3dModelsFromFootprint(), load3dModels(), Load3dModelsIfNeeded(), and RENDER_3D_OPENGL().
|
private |
Definition at line 357 of file render_3d_opengl.h.
Referenced by freeAllLists(), and get3dModelsFromFootprint().
|
protectedinherited |
Definition at line 131 of file render_3d_base.h.
Referenced by RENDER_3D_OPENGL::bgWorker(), RENDER_3D_OPENGL::load3dModels(), RENDER_3D_RAYTRACE_BASE::postProcessShading(), RENDER_3D_OPENGL::Redraw(), RENDER_3D_RAYTRACE_GL::Redraw(), RENDER_3D_RAYTRACE_RAM::Redraw(), RENDER_3D_RAYTRACE_BASE::Reload(), RENDER_3D_OPENGL::reload(), RENDER_3D_RAYTRACE_BASE::render(), RENDER_3D_RAYTRACE_BASE::renderTracing(), SetReporters(), and RENDER_3D_OPENGL::StopBgWorker().
|
private |
Definition at line 338 of file render_3d_opengl.h.
Referenced by bgWorker(), freeAllLists(), Redraw(), and RENDER_3D_OPENGL().
|
private |
The negative polygon representation of the board outline.
Definition at line 361 of file render_3d_opengl.h.
Referenced by bgWorker(), and generatePlatedHoleShells().
|
private |
Definition at line 290 of file render_3d_opengl.h.
Referenced by RebuildHitTestAsync(), runHitTestRebuild(), startBgWorker(), and StopBgWorker().
|
private |
Definition at line 289 of file render_3d_opengl.h.
Referenced by JoinBgWorker(), RebuildHitTestAsync(), startBgWorker(), and StopBgWorker().
|
private |
Definition at line 335 of file render_3d_opengl.h.
Referenced by bgWorker(), freeAllLists(), reload(), RENDER_3D_OPENGL(), renderBoardBody(), and renderSolderMaskLayer().
|
protectedinherited |
Settings reference in use for this render.
Definition at line 118 of file render_3d_base.h.
Referenced by RENDER_3D_RAYTRACE_BASE::addCounterborePlating(), RENDER_3D_RAYTRACE_BASE::addCountersinkPlating(), RENDER_3D_RAYTRACE_BASE::addExtrudedBodyToRaytracer(), RENDER_3D_RAYTRACE_BASE::addModels(), RENDER_3D_OPENGL::addObjectTriangles(), RENDER_3D_RAYTRACE_BASE::addPadsAndVias(), RENDER_3D_OPENGL::appendPostMachiningGeometry(), RENDER_3D_OPENGL::backfillPostMachine(), RENDER_3D_RAYTRACE_BASE::backfillPostMachine(), RENDER_3D_OPENGL::bgWorker(), RENDER_3D_OPENGL::createBoard(), RENDER_3D_RAYTRACE_BASE::createItemsFromContainer(), RENDER_3D_OPENGL::generate3dGrid(), RENDER_3D_OPENGL::generateHoles(), RENDER_3D_OPENGL::generateLayerList(), RENDER_3D_OPENGL::generatePlatedHoleShells(), RENDER_3D_OPENGL::generateViaBarrels(), RENDER_3D_OPENGL::generateViaCovers(), RENDER_3D_OPENGL::generateViasAndPads(), RENDER_3D_OPENGL::get3dModelsFromFootprint(), RENDER_3D_OPENGL::get3dModelsSelected(), RENDER_3D_OPENGL::getLayerZPos(), RENDER_3D_RAYTRACE_BASE::getModelMaterial(), RENDER_3D_RAYTRACE_BASE::insertHole(), RENDER_3D_RAYTRACE_BASE::insertHole(), RENDER_3D_RAYTRACE_BASE::load3DModels(), RENDER_3D_OPENGL::load3dModels(), RENDER_3D_RAYTRACE_BASE::postProcessBlurFinish(), RENDER_3D_RAYTRACE_BASE::postProcessShading(), RENDER_3D_OPENGL::Redraw(), RENDER_3D_RAYTRACE_GL::Redraw(), RENDER_3D_RAYTRACE_BASE::Reload(), RENDER_3D_OPENGL::reload(), RENDER_3D_RAYTRACE_BASE::render(), RENDER_3D_BASE(), RENDER_3D_RAYTRACE_BASE::renderAntiAliasPackets(), RENDER_3D_RAYTRACE_BASE::renderBlockTracing(), RENDER_3D_OPENGL::renderBoardBody(), RENDER_3D_OPENGL::renderExtrudedBodies(), RENDER_3D_OPENGL::renderExtrudedBodies(), RENDER_3D_OPENGL::renderModel(), RENDER_3D_OPENGL::renderOpaqueModels(), RENDER_3D_OPENGL::renderPlaceholderForFootprint(), RENDER_3D_RAYTRACE_BASE::renderPreview(), RENDER_3D_OPENGL::renderSolderMaskLayer(), RENDER_3D_RAYTRACE_BASE::renderTracing(), RENDER_3D_OPENGL::renderTransparentModels(), RENDER_3D_OPENGL::setLayerMaterial(), RENDER_3D_OPENGL::setupMaterials(), RENDER_3D_RAYTRACE_BASE::setupMaterials(), and RENDER_3D_RAYTRACE_BASE::shadeHit().
|
private |
Definition at line 336 of file render_3d_opengl.h.
Referenced by bgWorker(), freeAllLists(), RENDER_3D_OPENGL(), and renderBoardBody().
|
privateinherited |
Factory that returns a suitable busy indicator for the context.
Definition at line 144 of file render_3d_base.h.
Referenced by CreateBusyIndicator(), and SetBusyIndicatorFactory().
|
protectedinherited |
Definition at line 120 of file render_3d_base.h.
Referenced by RENDER_3D_OPENGL::Redraw(), RENDER_3D_RAYTRACE_GL::Redraw(), RENDER_3D_RAYTRACE_RAM::Redraw(), RENDER_3D_RAYTRACE_BASE::Reload(), RENDER_3D_OPENGL::reload(), RENDER_3D_RAYTRACE_BASE::render(), RENDER_3D_BASE(), RENDER_3D_RAYTRACE_BASE::renderBlockTracing(), RENDER_3D_RAYTRACE_BASE::renderPreview(), and RENDER_3D_OPENGL::renderTransparentModels().
|
private |
Definition at line 288 of file render_3d_opengl.h.
Referenced by bgWorker(), reload(), RENDER_3D_OPENGL(), runHitTestRebuild(), and sendRefreshView().
|
protectedinherited |
Flag if the canvas specific for this render was already initialized.
Definition at line 123 of file render_3d_base.h.
Referenced by RENDER_3D_OPENGL::freeAllLists(), RENDER_3D_OPENGL::initializeOpenGL(), RENDER_3D_OPENGL::Redraw(), RENDER_3D_RAYTRACE_GL::Redraw(), RENDER_3D_RAYTRACE_RAM::Redraw(), RENDER_3D_BASE(), and RENDER_3D_OPENGL::~RENDER_3D_OPENGL().
|
private |
Definition at line 345 of file render_3d_opengl.h.
Referenced by backfillPostMachine(), createBoard(), generateEmptyLayerList(), generateHoles(), generateLayerList(), generatePlatedHoleShells(), initializeOpenGL(), Redraw(), RENDER_3D_OPENGL(), renderExtrudedBodies(), and ~RENDER_3D_OPENGL().
| SMATERIAL RENDER_3D_OPENGL::m_Copper |
Definition at line 283 of file render_3d_opengl.h.
|
private |
Definition at line 359 of file render_3d_opengl.h.
Referenced by get3dModelsSelected(), Redraw(), RENDER_3D_OPENGL(), renderExtrudedBodies(), and SetCurrentRollOverItem().
| SMATERIAL RENDER_3D_OPENGL::m_EpoxyBoard |
Definition at line 281 of file render_3d_opengl.h.
|
private |
Definition at line 366 of file render_3d_opengl.h.
Referenced by freeAllLists(), renderExtrudedBodies(), renderExtrudedBodies(), and renderPlaceholderForFootprint().
|
private |
Definition at line 367 of file render_3d_opengl.h.
Referenced by freeAllLists(), Redraw(), and renderExtrudedBodies().
| SMATERIAL RENDER_3D_OPENGL::m_GrayMaterial |
Definition at line 285 of file render_3d_opengl.h.
|
private |
oGL list that stores current grid
Definition at line 347 of file render_3d_opengl.h.
Referenced by freeAllLists(), generate3dGrid(), Redraw(), and RENDER_3D_OPENGL().
|
private |
Definition at line 291 of file render_3d_opengl.h.
Referenced by bgWorker(), RebuildHitTestAsync(), and runHitTestRebuild().
|
private |
Definition at line 334 of file render_3d_opengl.h.
Referenced by bgWorker(), freeAllLists(), and RENDER_3D_OPENGL().
|
private |
Stores the last grid type.
Definition at line 348 of file render_3d_opengl.h.
Referenced by Redraw(), and RENDER_3D_OPENGL().
|
private |
Definition at line 328 of file render_3d_opengl.h.
Referenced by bgWorker(), freeAllLists(), Redraw(), RENDER_3D_OPENGL(), and renderSolderMaskLayer().
| struct { ... } RENDER_3D_OPENGL::m_materials |
Referenced by Redraw(), renderBoardBody(), setCopperMaterial(), setLayerMaterial(), and setupMaterials().
|
private |
Definition at line 350 of file render_3d_opengl.h.
Referenced by freeAllLists(), generateViaBarrels(), Redraw(), and RENDER_3D_OPENGL().
| SMATERIAL RENDER_3D_OPENGL::m_NonPlatedCopper |
Definition at line 282 of file render_3d_opengl.h.
|
private |
Definition at line 332 of file render_3d_opengl.h.
Referenced by bgWorker(), freeAllLists(), Redraw(), and RENDER_3D_OPENGL().
|
private |
Definition at line 331 of file render_3d_opengl.h.
Referenced by bgWorker(), freeAllLists(), Redraw(), and RENDER_3D_OPENGL().
|
private |
Definition at line 333 of file render_3d_opengl.h.
Referenced by bgWorker(), freeAllLists(), Redraw(), and RENDER_3D_OPENGL().
|
private |
Definition at line 341 of file render_3d_opengl.h.
Referenced by bgWorker(), freeAllLists(), Redraw(), and RENDER_3D_OPENGL().
|
private |
Definition at line 339 of file render_3d_opengl.h.
Referenced by bgWorker(), freeAllLists(), Redraw(), RENDER_3D_OPENGL(), and renderSolderMaskLayer().
|
private |
Definition at line 340 of file render_3d_opengl.h.
Referenced by bgWorker(), freeAllLists(), and RENDER_3D_OPENGL().
|
private |
Definition at line 351 of file render_3d_opengl.h.
Referenced by freeAllLists(), generatePlatedHoleShells(), Redraw(), and RENDER_3D_OPENGL().
| SMATERIAL RENDER_3D_OPENGL::m_Paste |
Definition at line 277 of file render_3d_opengl.h.
|
private |
Definition at line 364 of file render_3d_opengl.h.
Referenced by createPlaceholderModel(), freeAllLists(), renderPlaceholderForFootprint(), and ~RENDER_3D_OPENGL().
| SMATERIAL RENDER_3D_OPENGL::m_Plastic |
Definition at line 284 of file render_3d_opengl.h.
|
private |
Definition at line 330 of file render_3d_opengl.h.
Referenced by bgWorker(), freeAllLists(), Redraw(), and RENDER_3D_OPENGL().
|
private |
Definition at line 329 of file render_3d_opengl.h.
Referenced by bgWorker(), freeAllLists(), Redraw(), and RENDER_3D_OPENGL().
|
private |
Board material plugs for backdrill/counterbore/countersink.
Definition at line 337 of file render_3d_opengl.h.
Referenced by backfillPostMachine(), freeAllLists(), RENDER_3D_OPENGL(), and renderBoardBody().
|
protectedinherited |
Definition at line 126 of file render_3d_base.h.
Referenced by IsReloadRequestPending(), RENDER_3D_OPENGL::Redraw(), RENDER_3D_RAYTRACE_GL::Redraw(), RENDER_3D_RAYTRACE_RAM::Redraw(), RENDER_3D_RAYTRACE_BASE::Reload(), RENDER_3D_OPENGL::reload(), ReloadRequest(), and RENDER_3D_BASE().
|
private |
Definition at line 292 of file render_3d_opengl.h.
Referenced by appendRenderTriangleList(), assignRenderMap(), assignRenderPtr(), Redraw(), and releaseRetiredRenderPtrs().
|
private |
Definition at line 342 of file render_3d_opengl.h.
Referenced by releaseRetiredRenderPtrs(), and retireRenderPtr().
| SMATERIAL RENDER_3D_OPENGL::m_SilkSBot |
Definition at line 278 of file render_3d_opengl.h.
| SMATERIAL RENDER_3D_OPENGL::m_SilkSTop |
Definition at line 279 of file render_3d_opengl.h.
| SMATERIAL RENDER_3D_OPENGL::m_SolderMask |
Definition at line 280 of file render_3d_opengl.h.
|
private |
Definition at line 363 of file render_3d_opengl.h.
Referenced by getGizmoViewport(), getSelectedGizmoSphere(), handleGizmoMouseInput(), Redraw(), RENDER_3D_OPENGL(), resetSelectedGizmoSphere(), setGizmoViewport(), updateGizmoSelection(), and ~RENDER_3D_OPENGL().
|
private |
store pointers so can be deleted latter
Definition at line 344 of file render_3d_opengl.h.
Referenced by appendRenderTriangleList(), freeAllLists(), and RENDER_3D_OPENGL().
|
private |
Definition at line 353 of file render_3d_opengl.h.
Referenced by freeAllLists(), generateViaCovers(), RENDER_3D_OPENGL(), and renderSolderMaskLayer().
|
private |
Definition at line 352 of file render_3d_opengl.h.
Referenced by freeAllLists(), generateViaCovers(), RENDER_3D_OPENGL(), and renderSolderMaskLayer().
|
protectedinherited |
Definition at line 132 of file render_3d_base.h.
Referenced by RENDER_3D_RAYTRACE_BASE::Reload(), RENDER_3D_OPENGL::reload(), and SetReporters().
|
protectedinherited |
The window size that this camera is working.
Definition at line 129 of file render_3d_base.h.
Referenced by RENDER_3D_RAYTRACE_BASE::initializeBlockPositions(), RENDER_3D_OPENGL::Redraw(), RENDER_3D_RAYTRACE_GL::Redraw(), RENDER_3D_RAYTRACE_RAM::Redraw(), RENDER_3D_BASE(), RENDER_3D_RAYTRACE_BASE::renderBlockTracing(), RENDER_3D_RAYTRACE_BASE::renderPreview(), RENDER_3D_OPENGL::SetCurWindowSize(), RENDER_3D_RAYTRACE_GL::SetCurWindowSize(), and RENDER_3D_RAYTRACE_RAM::SetCurWindowSize().