Commit Graph

113 Commits

Author SHA1 Message Date
c5a7128626 Fixed gcode toolpaths data for export to obj file when taken from cpu 2019-08-20 12:10:15 +02:00
170b1b1fa2 Check for existence of gcode toolpaths that can be exported to obj file 2019-08-20 11:33:58 +02:00
9c96fe4243 Export to obj file only toolpaths visible in 3D scene 2019-08-20 09:51:25 +02:00
709ac9bb3f 1st installment of export of gcode toolpaths to obj file 2019-08-20 09:01:09 +02:00
0fcc6cb159 Merge remote-tracking branch 'origin' into ys_printable_property 2019-08-06 10:31:17 +02:00
b0fc0cf49f Fixed a regression issue where excessive memory was allocated
for the GLVolumes before sending to the GPU driver. The following commits
were partially reverted:

4269c8b23c Removed GLVolume non-VBO rendering
d15698e21e GLVolume and GLIndexedVertexArray refactored to send data to gpu at the first render call

Namely, the GLVolume buffers are "shrink to size"'d before sending their
content to the OpenGL driver, and the vertex buffers are populated
as quickly as possible from the GLVolume, so that the same buffer is not
kept twice in RAM on systems, where the RAM is shared with the graphics
card.

Also the memory allocation reporting was improved for the GLVolumes.
2019-08-05 14:30:32 +02:00
fcb95df738 Code cleanup 2019-07-31 11:12:50 +02:00
adf64d9d23 Render non printable instances with a darker color 2019-07-31 11:01:50 +02:00
990df25df9 Fixed positioning of bed model into the scene and changed bundled bed models 2019-07-25 08:43:21 +02:00
12eeedcbca Fixed reset of bed 3d model 2019-07-09 08:24:23 +02:00
eb4aba5365 Refactoring of functions thick_lines_to_indexed_vertex_array() to reduce the amount of produced vertices while reducing visual artifacts in gcode toolpaths due to averaged normals 2019-07-08 15:30:59 +02:00
c1491920ae GLVolume and GLIndexedVertexArray refactored to send data to gpu at the first render call 2019-07-02 12:55:55 +02:00
e22181e2c1 Added member BoundingBoxf3 m_bounding_box to GLIndexedVertexArray and removed member BoundingBoxf3 bounding_box from GLVolume 2019-07-01 13:26:06 +02:00
e9909eb95e Removed GLVolume non-VBO rendering 2019-07-01 12:28:16 +02:00
66f59c3bef Modified function thick_lines_to_indexed_vertex_array() to remove visual artifacts on paths in gcode preview 2019-07-01 08:33:40 +02:00
9ec4fdb682 ENABLE_TEXTURES_MAXSIZE_DEPENDENT_ON_OPENGL_VERSION set as default 2019-06-24 09:27:19 +02:00
2153ace61e Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_experiments 2019-06-24 08:15:41 +02:00
c1fed74010 Sharing TriangleMesh objects between the front end (UI) and back end
(background processing)
2019-06-11 17:08:47 +02:00
15edeb87f5 Max texture size dependent on OpenGL version on Win and Linux and on retina monitors on Mac 2019-05-23 13:49:57 +02:00
f14a203953 Merge branch 'lm_arrange_wipe_tower' of https://github.com/prusa3d/Slic3r 2019-05-10 11:14:42 +02:00
8f7907c9a0 Detection of sla supports out of printbed in Preview and when sla gizmo is active 2019-05-10 10:43:39 +02:00
0b4c7125b7 Arrange is accounting for the wipe tower now 2019-05-06 08:14:45 +02:00
5fa55fc51f Allow wipe tower rotation by the rotation gizmo 2019-05-06 08:14:45 +02:00
a7868d45f1 Merge remote-tracking branch 'remotes/origin/master' into vb_wold_object_manipulation 2019-05-03 12:37:43 +02:00
50758c4cd0 Changed the "non-uniform scaling is not possible" message. 2019-05-03 12:36:26 +02:00
908d8ed5be Rectangle selection -> Lighter color for deselect hover 2019-04-29 10:01:28 +02:00
b0830d062b WIP: Transformation of instances in world coordinate space:
Ulocking the "anisotropic" scaling checkbox will bake the transformation
into meshes to allow for scaling in world axes.

Optimized and templated the stl_transform functions, now also available for 3x3 matrices.
The Canvas3D::reload_scene() now maintains selection even if all volumes of an instance changed their IDs.
2019-04-26 17:28:31 +02:00
0b351692d7 Attempt to fix build on Linux 2019-04-25 13:35:24 +02:00
8163b5d238 Rectangle selection in 3D scene -> refactored GLVolume member varialbe for hovering 2019-04-25 10:21:24 +02:00
c0b3cf452a Rectangle selection in 3D scene -> hovering detection 2019-04-25 09:46:26 +02:00
1f6d671abb Fixed conflicts after merge with master 2019-04-12 08:41:59 +02:00
fd4ddf56e7 Render selected objects first 2019-04-11 08:36:00 +02:00
ba1bfa9e66 Merge branch 'master' into lm_sla_gizmo_clipping_plane 2019-04-10 13:43:02 +02:00
fccab8e195 Render picking pass renders volumes in the same order as the regular render pass 2019-04-10 11:20:09 +02:00
03fa2f8f95 A little refactoring of loading meshes in VBO / non VBO case. 2019-04-08 18:11:36 +02:00
e2d6ce9bc5 Finished SLA print / material correction visualization. 2019-04-08 18:09:31 +02:00
0a963c1768 Merge branch 'master' into lm_sla_gizmo_clipping_plane 2019-04-08 10:50:10 +02:00
6bd7749192 SLA gizmo clipping plane logic moved to fragment shader
This means the clipping now works again with both legacy and modern OpenGL
2019-04-08 10:31:16 +02:00
8f1d9b7703 Fixed conflicts after merge with master 2019-04-02 15:13:26 +02:00
99f0207578 Handling of left hand oriented coordinate systems:
is_left_handed() method on transformations and volumes
rendering of GLVolumes in left handed coordinate systems by glFrontFace(GL_CW);
SLA slicing on left hand oriented instances by flipping the mesh for SLAPrintObject in X.
rendering of the SLA cutting plane in left handed systems
resetting the SLA clipping planes on 3D preview invalidation
2019-04-02 13:47:49 +02:00
0f657b772b Camera refactoring
1) All camera related OpenGL calls moved into class

2) The Camera class now stores the view matrix, the projection matrix and the viewport

3) The Camera class now exposes methods to get the camera orientation vectors, the camera position, the view matrix, the projection matrix and the viewport

4) All the code operating on the camera or requiring camera data has been modified to use the new methods
2019-04-01 10:00:10 +02:00
910605864a Added glsafe() around OpenGL calls where missing 2019-03-27 14:42:09 +01:00
d3ac8f9322 Merge branch 'master' of https://github.com/prusa3d/Slic3r into et_canvas_gui_refactoring 2019-03-27 12:51:59 +01:00
69614c17f5 Improved glsafe macro to print out file name, line number and function
name on OpenGL assert.
2019-03-27 10:26:55 +01:00
0794518945 Renamed private methods of Selection 2019-03-21 11:02:10 +01:00
3043c72c73 SLA gizmo now forces objects to use their normal color (not SELECTED_COLOR) 2019-03-20 14:04:20 +01:00
5867c337b6 Merge remote-tracking branch 'remotes/origin/ys_buttons' 2019-03-12 09:01:17 +01:00
f760dfed36 Refactoring - Shared members of GLCanvas3D as references instead of pointers 2019-03-08 12:03:37 +01:00
d5efdecb6c Implemented another behavior of the "Slice Now" / "Export/Send G-code" buttons (SPE-831) 2019-03-01 11:00:34 +01:00
93a3b3b054 Merge branch 'master' of https://github.com/prusa3d/Slic3r into et_multivolume_models 2019-02-20 13:16:39 +01:00