40 Commits

Author SHA1 Message Date
enricoturri1966
f8ce187262 Tech ENABLE_LEGACY_OPENGL_REMOVAL - Refactoring of GLModel to automatically detect the data type to use into the index buffer in dependence of vertices count 2022-03-09 11:51:02 +01:00
enricoturri1966
46283cfde3 Tech ENABLE_GLBEGIN_GLEND_SHADERS_ATTRIBUTES renamed as ENABLE_GL_SHADERS_ATTRIBUTES 2022-03-09 08:22:07 +01:00
enricoturri1966
5ffe010a9d Tech ENABLE_GLINDEXEDVERTEXARRAY_REMOVAL merged into ENABLE_LEGACY_OPENGL_REMOVAL 2022-03-08 14:50:32 +01:00
enricoturri1966
31013fb6df Tech ENABLE_GLBEGIN_GLEND_SHADERS_ATTRIBUTES - Use vertex attributes and matrices in shaders.
Refactoring of flat vertex shader
2022-03-04 08:54:23 +01:00
enricoturri1966
d766627099 Tech ENABLE_GLBEGIN_GLEND_SHADERS_ATTRIBUTES - Use vertex attributes and matrices in shaders.
Shader: flat - Gizmo Place on face
2022-02-28 15:11:14 +01:00
Filip Sykala
0d48cf5ab9 Merge branch 'master' into fs_mouse 2022-02-23 14:43:42 +01:00
enricoturri1966
fa1ff1c357 Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Another refactoring to simplify client code of GLModel::Geometry 2022-02-10 14:39:02 +01:00
Filip Sykala
74cf6649f3 Merge branch 'master' into fs_mouse 2022-02-10 10:26:04 +01:00
enricoturri1966
4d2d77e99c Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Adapt GLModel::Geometry index format in dependence of data size, where possible 2022-02-09 10:05:49 +01:00
enricoturri1966
ffa3a1d8fc Tech ENABLE_GLINDEXEDVERTEXARRAY_REMOVAL - Replace GLIndexedVertexArray with GLModel - GLGizmoFlatten::PlaneData::vbo 2022-02-09 09:08:37 +01:00
Filip Sykala
f23c356507 Merge branch 'dev' into fs_mouse
# Conflicts:
#	src/slic3r/GUI/GLCanvas3D.cpp
#	src/slic3r/GUI/Gizmos/GLGizmoBase.cpp
#	src/slic3r/GUI/Gizmos/GLGizmoBase.hpp
#	src/slic3r/GUI/Gizmos/GLGizmoScale.cpp
#	src/slic3r/GUI/Gizmos/GLGizmoScale.hpp
2022-01-20 09:25:06 +01:00
enricoturri1966
6201dad245 Tech ENABLE_COLOR_CLASSES set as default 2022-01-14 08:19:00 +01:00
enricoturri1966
a2dc1cd446 Fixed conflicts after merge with dev branch 2022-01-12 15:54:48 +01:00
Lukas Matena
a554f1fb08 One more speedup of place on face 2022-01-03 16:29:26 +01:00
Lukas Matena
b034402912 Fix of slow place on face on complex models #7587 2022-01-03 15:20:14 +01:00
enricoturri1966
cd4094743e Tech ENABLE_COLOR_CLASSES - 1st installment -> Introduction of classes ColorRGB and ColorRGBA to unify color data definition and manipulation 2021-12-22 10:45:35 +01:00
Filip Sykala
553102c4ee Fix reselect in flattening 2021-12-16 15:57:32 +01:00
Filip Sykala
123903f317 Clean up GLGizmoManagaer
Clean up GLGizmoBase
2021-12-10 14:58:06 +01:00
Filip Sykala
c751d6327d Separate GizmoManager on_move into gizmo itself 2021-12-10 09:09:53 +01:00
Vojtech Bubnik
cc44089440 New BuildVolume class was created, which detects build volume type (rectangular,
circular, convex, concave) and performs efficient collision detection agains these build
volumes. As of now, collision detection is performed against a convex
hull of a concave build volume for efficency.

GCodeProcessor::Result renamed out of GCodeProcessor to GCodeProcessorResult,
so it could be forward declared.

Plater newly exports BuildVolume, not Bed3D. Bed3D is a rendering class,
while BuildVolume is a purely geometric class.

Reduced usage of global wxGetApp, the Bed3D is passed as a parameter
to View3D/Preview/GLCanvas.

Convex hull code was extracted from Geometry.cpp/hpp to Geometry/ConvexHulll.cpp,hpp.
New test inside_convex_polygon().
New efficent point inside polygon test: Decompose convex hull
to bottom / top parts and use the decomposition to detect point inside
a convex polygon in O(log n). decompose_convex_polygon_top_bottom(),
inside_convex_polygon().

New Circle constructing functions: circle_ransac() and circle_taubin_newton().

New polygon_is_convex() test with unit tests.
2021-11-16 10:15:51 +01:00
Vojtech Bubnik
58d8ab3dea Removed the PRUS format parser. WIP: admesh eradication:
stl_stats are newly only accessed by TriangleMesh::stats(),
most of the direct access to TriangleMesh::stl is gone with the exception
of parsing input files (3MF, AMF, obj).
2021-09-14 11:58:14 +02:00
Lukas Matena
a4300b8e64 Naming of the entering/leaving snapshots is now more generic,
it uses the actual name of the gizmo. Also, the keyboard shortcut
is now appended to the name, instead of being duplicated in it.
2021-09-03 13:53:07 +02:00
Lukas Matena
021688fe50 Fix place on bed and sinking instances:
all sinking objects were incorrectly shifted to bed when
'place on face' was applied to any object.
2021-08-12 10:17:59 +02:00
enricoturri1966
b24488ce51 Tech ENABLE_SINKING_CONTOURS -> Sinking contours shown while dragging Move/Rotate/Scale gizmos and show contours for gizmo cut 2021-07-27 13:02:06 +02:00
enricoturri1966
844ec8447d ENABLE_PAN_ROTATE_SCENE_IN_GIZMOS set as default 2020-10-22 11:01:30 +02:00
enricoturri1966
d31da5bbe0 Follow-up of 68a7e5ce41217a123758996bc145350339922473 -> Disable GLGizmoFlatten markers when CTRL is pressed 2020-10-21 10:30:25 +02:00
Lukas Matena
2cc1dffc82 Fix of several issues related to gizmos updating and undo/redo
Common gizmos data cannot be used in on_set_state method
Also prevented calling render on empty GLVertexArrays
2020-06-03 15:33:39 +02:00
Lukas Matena
94b0ab603f Include cleanup: Selection.hpp
It does not need 3DScene.hpp and Model.hpp
And it does not to be included by GLGizmoBase.hpp
2020-05-26 13:46:59 +02:00
Lukas Matena
ae7bb123a9 Fix win build 2020-05-21 11:27:47 +02:00
Lukas Matena
9c365da828 Removed immediate OpenGL mode calls in place on face gizmo 2020-05-21 10:25:31 +02:00
Lukas Matena
593e7a1546 Flattening gizmo now uses the new CommonDataPool to store pointer to active object 2020-04-07 16:35:52 +02:00
bubnikv
2d7f478dac Finished picking by color with a checksum in the alpha channel
to guard against unwanted alpha blending and / or multi sampling.
2019-08-07 14:15:38 +02:00
bubnikv
a0ea96968d Storing the active printer technology onto the Undo / Redo stack,
remembering the last selected Printer profile for the SLA and FDM
technologies separately, and activating them on Undo / Redo.

When switching the technologies, user is asked whether to discard
the modified profiles or not.
2019-07-18 17:41:47 +02:00
Lukas Matena
2b9d285a16 'Place on face' gizmo fix (it used invalid pointer after undo/redo was implemented) 2019-07-17 15:39:58 +02:00
Enrico Turri
da1fa0b6e3 Refactoring of GLGizmosXX classes to cleanup their interface 2019-07-17 12:06:23 +02:00
Enrico Turri
cc70c8dff9 Tech ENABLE_SVG_ICONS set as default 2019-07-12 10:13:35 +02:00
bubnikv
8126ec33fc Fixed localization of 3D scene toolbar tips. 2019-05-09 17:18:03 +02:00
Enrico Turri
d795f07e7b Added glsafe() around OpenGL calls where missing 2019-03-27 14:42:09 +01:00
Enrico Turri
80c1a8d8e4 GLCanvas3D::Selection as a standalone class 2019-03-19 13:30:21 +01:00
Lukas Matena
d3c8e3166e Separated gizmos into individual files 2019-03-18 11:45:15 +01:00