Enrico Turri
41c51d7614
3DScene's char event handler moved to c++
2018-05-15 16:09:04 +02:00
Enrico Turri
2b4829a4b9
3DScene bed variables moved to c++
2018-05-15 15:38:25 +02:00
Enrico Turri
f0d1888ca9
3DScene select_view() function moved to c++
2018-05-15 11:30:11 +02:00
Enrico Turri
75f1f832aa
3DScene bed origin moved to c++
2018-05-15 11:07:32 +02:00
Enrico Turri
7519e34507
3DScene zoom functions moved to c++
2018-05-15 10:32:38 +02:00
Enrico Turri
f4303ebdb8
1st attempt of perl callback from c++ for 3DScene
2018-05-15 09:50:01 +02:00
Enrico Turri
e31244e8a5
Merge branch 'master' of https://github.com/prusa3d/Slic3r into scene_manipulators
2018-05-15 09:46:57 +02:00
Enrico Turri
328eba5610
Removed auto zoom to volumes when changing view
2018-05-15 09:41:58 +02:00
Enrico Turri
986630c2dc
3DScene's idle even handler moved to c++
2018-05-14 14:47:13 +02:00
Enrico Turri
0c1655b884
3DScene::Resize() method moved to c++
2018-05-14 14:14:19 +02:00
Enrico Turri
a73cb45792
Camera angle clamping moved to c++
2018-05-14 12:08:23 +02:00
Enrico Turri
1fd59144c7
Camera data moved to c++ - WIP
2018-05-14 11:31:58 +02:00
Enrico Turri
5024fc4be7
OpenGL to c++ 1st installment - WIP
2018-05-09 10:47:04 +02:00
Enrico Turri
6d88d0d39b
Merge branch 'master' of https://github.com/prusa3d/Slic3r into scene_manipulators
2018-05-03 16:13:22 +02:00
Enrico Turri
dd4669d1a0
Fixed crash when reducing objects from 2D/preview/layers tabs
2018-05-03 16:08:41 +02:00
Enrico Turri
97ea02d974
Merge branch 'master' of https://github.com/prusa3d/Slic3r into scene_manipulators
2018-05-03 09:11:26 +02:00
Enrico Turri
a02bfdd2bc
Initial zoom set to bed extent
2018-05-03 09:10:12 +02:00
Enrico Turri
81636abaa9
Merge branch 'master' of https://github.com/prusa3d/Slic3r into scene_manipulators
2018-05-02 14:45:42 +02:00
Enrico Turri
e2e4310322
Removed unneeded scene reloads when selecting objects
2018-05-02 13:55:04 +02:00
Enrico Turri
a208639ce7
Fixed initial view on Linux Ubuntu
2018-04-30 08:57:41 +02:00
Enrico Turri
b67064ef81
Keyboard capture by 3D view on Linux
2018-04-27 14:08:22 +02:00
Enrico Turri
a4df0bdcc3
Fixed division by zero in get_zoom_to_bounding_box_factor on Linux
2018-04-26 12:14:49 +02:00
Enrico Turri
fd16357b6e
Increase z buffer range to avoid clipping while panning/rotating the 3D view
2018-04-26 11:03:15 +02:00
Enrico Turri
e93391e0f8
Fixed get_zoom_to_bounding_box_factor on linux
2018-04-25 13:55:45 +02:00
Enrico Turri
71d9500b2e
More robust fix for 3D view and GUI buttons not in synch when object's size is almost identical to print volume's size
2018-04-24 09:00:33 +02:00
Enrico Turri
f8b1dc5506
Tweaks to zooming logic
2018-04-23 08:44:24 +02:00
Enrico Turri
ad4cd05850
Fixed hovering while panning/rotating camera
2018-04-19 13:31:50 +02:00
Enrico Turri
c9e4c831c2
Axes with fixed size in 3D previews
2018-04-18 10:17:22 +02:00
Enrico Turri
2ef164eeef
Fixed cut contours in cut dialog 3D view
2018-04-18 09:44:49 +02:00
Enrico Turri
61ee633cd2
Fixed color specular component in shaders
2018-04-17 16:16:25 +02:00
Enrico Turri
acd8d2df98
Fixed layer height profile editing for multipart objects
2018-04-13 09:01:48 +02:00
Enrico Turri
a3fc49ee76
Fixed hovering not shown on out of print bed objects
2018-04-12 13:54:26 +02:00
Enrico Turri
76beaa6421
Objects colored by extruder color
2018-04-05 12:52:29 +02:00
bubnikv
00324a14b8
Merge remote-tracking branch 'origin/scene_manipulators'
2018-04-04 11:06:45 +02:00
Enrico Turri
c6623bb258
Increased camera theta max to 180 degrees. Fixes #666
2018-03-23 15:40:26 +01:00
Enrico Turri
f99aaa1191
Out of bed detection - New colors for out of bed state
2018-03-20 13:01:50 +01:00
Enrico Turri
6298a28494
Disabled back face culling to show broken geometry
2018-03-20 11:59:33 +01:00
bubnikv
ab654f6319
Merge branch 'scene_manipulators'
2018-03-14 16:15:26 +01:00
Enrico Turri
523b297738
Out of bed detection - Volume colors changed while dragging them
2018-03-13 14:37:59 +01:00
Enrico Turri
d91e35f820
Shaders tweaking
2018-03-13 14:21:41 +01:00
Enrico Turri
79dc862498
Out of bed detection - Shaders refactoring
2018-03-12 09:23:59 +01:00
Enrico Turri
7a2df9f54f
Out of bed detection - Volumes' layer texture rendering moved to cpp
2018-03-09 14:33:44 +01:00
Enrico Turri
bdd2d725c8
Out of bed detection - 1st installment
2018-03-09 10:40:42 +01:00
YuSanka
c52f51b1e4
Fixed bug with resizing 3DScene
2018-03-06 14:45:03 +01:00
bubnikv
8fb443522b
Merge remote-tracking branch 'remotes/origin/gcode_preview'
2018-02-23 14:33:16 +01:00
bubnikv
acce8dbff6
A workaround of the dreaded Intel HD Graphics driver issue at least
...
on the laptop of @roesel.
fixes https://github.com/prusa3d/Slic3r/issues/672
The Intel HD Graphics hangs on the glFinish() call for some reason
with one particular graphics driver revision. Also the glFinish() call
was superfluous and it only may have had negative effect over the performance.
Both glFinish() and glFlush() were removed for performance reasons
where they were not needed, see
https://www.khronos.org/opengl/wiki/Common_Mistakes
2018-02-22 18:56:37 +01:00
Enrico Turri
81eff20ad1
GCode Preview - Added Custom extrusion role + extended layers range for GCode preview
2018-02-22 08:59:47 +01:00
Enrico Turri
7375f6a6f5
Fixed camera shifting after generating gcode
2018-02-19 11:28:56 +01:00
bubnikv
f9cdda7bfd
Delayed loading of the opengl texture for the G-code preview legend,
...
as the opengl context may not be ready on some platforms (Linux)
at the time the window gets its focus for the first time.
Changed the G-code preview invalidation to trigger when the print
gets invalidated. At that time the 3D path preview switches to the old
preview, if there is anything valid left.
2018-02-15 14:37:53 +01:00
bubnikv
b1f5e7e8fa
Removed the GCodePreviewData from the Print class, it does not belong here,
...
as the GCode is generated outside of the Print class.
Exported the GCodePreviewData as GCode::PreviewData to Perl.
When exporting the G-code with a command line Slic3r,
the GCodeAnalyzer is now supressed for performance reasons.
Removed obsolete Perl module Slic3r::GUI::Plater::3DToolpaths.
2018-02-14 20:35:59 +01:00
Enrico Turri
0d6a013658
GCode Preview - Coloring by tool
2018-02-07 09:07:37 +01:00
Enrico Turri
6ff9021e04
GCode Preview - Legend texture shown only when gcode is available
2018-02-06 12:43:25 +01:00
Enrico Turri
a417cf955d
GCode Preview - Code cleanup
2018-01-17 10:39:05 +01:00
Enrico Turri
c63e6b74fa
GCode Preview - Added legend texture
2018-01-16 14:59:06 +01:00
Enrico Turri
0f4bec8af0
gcode preview - first installment - wip
2018-01-08 13:44:10 +01:00
bubnikv
673e98bc83
When the legacy OpenGL 1.2 is enforced, suppress anti aliasing as well.
...
Let's hope it will be a valid workaround for the reoccuring
buggy Intel HD Graphics driver issue.
2017-12-12 20:47:36 +01:00
bubnikv
743fc9dbd0
Workaround for buggy Intel HD Graphics OpenGL drivers:
...
Fall back to OpenGL 1.1 by a "use_legacy_opengl" preferences switch.
https://github.com/prusa3d/Slic3r/issues/233
https://github.com/prusa3d/Slic3r/issues/268
https://github.com/prusa3d/Slic3r/issues/619
2017-12-11 18:00:51 +01:00
bubnikv
ee645007f2
Another step towards C++ presets.
2017-10-25 12:53:31 +02:00
bubnikv
6d4ec5c989
Further fix of https://github.com/alexrj/Slic3r/issues/4085
...
making it safe in case wxWidgets do not report supporting multisampling,
but the OpenGL context actually does and it leaves the multi-sampling enabled.
This then may in theory lead to incorrect picking by color.
2017-09-12 10:14:24 +02:00
bubnikv
888a904c9b
Workaround of
...
"GL_MULTISAMPLE and GL_ARRAY_BUFFER_ARB messages on failed launch"
https://github.com/alexrj/Slic3r/issues/4085
Also fixes
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=872273
2017-09-12 10:03:10 +02:00
bubnikv
ed46cfa19d
Simplified the code base by requiring wxWidgets >= 3.0
2017-08-03 17:47:18 +02:00
bubnikv
3b51f64411
Fixing https://github.com/prusa3d/Slic3r/issues/432
...
Slic3r GUI not starting, error when using --gui (on linux)
Implements https://github.com/prusa3d/Slic3r/issues/407
Shortcuts: Movement in 3D Space
Assignment of the camera shortcuts is clear from the menu accelerators.
Implements https://github.com/prusa3d/Slic3r/issues/406
Shortcuts: Rotate +/- 45 degrees
l/r keys rotate the object
Also changed the accelerators for adding / removing duplicates from
Ctrl++/- to plain +/-, from Ctrl-Del to plain Del,
and added an 's' key accelerator for uniform scaling.
2017-07-21 16:29:40 +02:00
bubnikv
fdb5ed1fcb
Fix for "Crash when deleting all objects"
...
https://github.com/prusa3d/Slic3r/issues/193
2017-06-13 13:42:38 +02:00
bubnikv
5cae4cc614
Fix of https://github.com/prusa3d/Slic3r/issues/285
...
Refactored Model.cpp/hpp to C++x11 loops,
simplified the mesh / bbox handling.
2017-06-13 11:35:24 +02:00
bubnikv
02ab92ea65
Little improvements of the 3D manipulation usablility:
...
Limit zoom out to 3x the "scene fit" amount.
Disable wheel scrolling when the middle button is pressed.
2017-06-09 15:02:11 +02:00
bubnikv
958c6553e7
Hopefully a fix of
...
"Layer editing does not trigger reslicing with Background Processing enabled"
https://github.com/prusa3d/Slic3r/issues/293
2017-06-09 13:27:35 +02:00
bubnikv
6ce832e439
The OpenGL Z-bufer has low precision, therefore a bounding box test
...
had to be relaxed.
2017-06-08 20:50:24 +02:00
bubnikv
27003dc0fd
Possible fix of
...
https://github.com/prusa3d/Slic3r/issues/260
https://github.com/prusa3d/Slic3r/issues/272
by disabling opengl blending when picking.
Also the limiting region for object movement has been rounded smoothly.
2017-06-08 12:23:50 +02:00
bubnikv
fe409a76a6
Fixed panning issues when the camera is parallel to the bed plane.
2017-06-08 12:01:35 +02:00
bubnikv
8b5f7f0fb2
Limit the object movement to the vincinity of the print bed.
2017-06-08 11:02:29 +02:00
bubnikv
88c9ae6ca6
Fix of
...
https://github.com/prusa3d/Slic3r/issues/315
a crash if the max_layer_height is left to a default value of zero.
2017-06-05 12:02:26 +02:00
bubnikv
efb1fd2066
Fixed order of loading the configs into Print / PrintObjects
...
and loading the 3d print path preview.
2017-05-30 17:24:50 +02:00
bubnikv
e000b22578
Implemented wipe tower print path preview.
2017-05-25 22:27:53 +02:00
bubnikv
7d64c465c0
New config field extruder_color for preview of extruder assignment.
2017-05-24 15:20:20 +02:00
bubnikv
6fa280be0b
Finished the wipe tower UI.
2017-05-19 21:48:32 +02:00
bubnikv
cb0a66b743
Initial implementation of a wipe tower preview UI.
2017-05-17 16:53:40 +02:00
bubnikv
8040ef8efb
Fixing a bug in the layer editor for high diameter nozzles.
...
https://github.com/prusa3d/Slic3r/issues/247
2017-04-11 11:16:47 +02:00
bubnikv
36416d77b8
Fixes of VBO rendering on Linux with wxWidgets & GTK
2017-03-30 10:25:52 +02:00
bubnikv
95b45da57c
Fixed 3D view of the Cut dialog.
2017-03-28 14:18:13 +02:00
bubnikv
6b99cbdc02
Had the vertex buffer objects disabled for debugging purposes by mistake.
2017-03-21 08:59:48 +01:00
bubnikv
d8f0c0bdff
Fixed bug in variable layer height editing: Make the OpenGL context
...
current.
2017-03-20 15:55:22 +01:00
bubnikv
045de596e2
Use OpenGL 2.0 shaders for the layer height rendering.
...
Use OpenGL 2.0 shaders for the print path rendering for performance reasons.
2017-03-20 12:05:20 +01:00
bubnikv
7f7d2da5fe
Use Vertex Buffer Objects for rendering of 3D volumes if possible.
2017-03-16 14:02:28 +01:00
bubnikv
93cab990c7
Fixed some memory allocation issues of the new C++ 3d path preview
...
(reserved memory has to be shrank around the collected data).
Initial implementation of the vertex buffer objects for the 3d path preview.
2017-03-15 20:45:03 +01:00
bubnikv
d18e10c7c9
Rewrote the OpenGL object rendering to indexed triangle / quad sets
...
for lower memory consumption.
Rewrote the print path 3D preview to generate these indexed triangle / quad
sets, possibly with at least as possible duplication of vertices,
with a crease angle of 45 degrees, leading to maximum 8% overshoots
at the corners.
2017-03-15 16:33:25 +01:00
bubnikv
e7a920fe16
Fixed some picking issues after porting GLVolumes to C++.
...
Initial interface for print paths visualization by VBOs.
2017-03-14 10:11:08 +01:00
bubnikv
e6fddd364d
Volume rewritten from Perl to C++,
...
generation of vertex arrays from paths rewritten from Perl to C++,
parallelized.
2017-03-13 16:02:17 +01:00
bubnikv
d02ee5cf80
By @lordofhyphens:
...
only re-zoom if we have a valid bounding box, avoid a divide by 0 error.
2017-02-21 17:43:28 +01:00
bubnikv
8aae5bdb28
The variable layer editing shader was made OpenGL 2.0 compatible.
...
Fixed a bug in the scaling of colors for the variable layer editing.
2017-02-21 09:39:28 +01:00
bubnikv
8cfdc28f2b
Implemented a level of detail on the variable layer height editing tool.
2017-02-20 21:54:53 +01:00
bubnikv
898deb48c4
Error reporting on initialization of the Layer Editing OpenGL shaders.
...
The shaders are initialized when the layer editing button is pressed
for the first time. If the initialization fails, a message box
is shown and the layer editing will stay disabled.
2017-02-19 18:01:03 +01:00
bubnikv
70229be9bc
Added SystemInfo dialog,
...
a new SLIC3R_BUILD define to be replaced by the build script,
a menu item to open the "New Issue" github page.
2017-02-19 16:04:57 +01:00
bubnikv
89702a5b4e
Fixing an update of the "Export G-code, Send to printer" and similar buttons.
...
It is a bug, which was lingering around for a long time, only now
the buggy function is called at a time point, where it really hurts.
https://github.com/prusa3d/Slic3r/issues/137
2017-02-17 15:11:59 +01:00
bubnikv
61f9414b09
Fixed a bug in manipulation of multi-component bodies.
2017-02-10 11:24:54 +01:00
bubnikv
db30cee6a9
Fixed the 'iso' camera orientation.
2017-02-09 21:40:07 +01:00
bubnikv
88e34ff5de
Store / retrieve layer height profile from the AMF file.
...
Reset the layer height profile when changing a print profile to an incompatible one.
Reset button on the layer height bar.
Fixed an update issue on zooming by a scroll wheel.
Fixed an issue when loading an AMF file: Object names are now retained.
2017-02-09 14:56:13 +01:00
bubnikv
43ac693900
Added a tooltip overlay for the variable layer height edit tool.
...
Short methods of PrintState made inline.
Added layer height profile to a Model class.
2017-02-07 18:17:12 +01:00
bubnikv
8474f77db4
Enabled the variable layer height in the builds by default.
2017-02-03 15:53:31 +01:00
bubnikv
081c1d681c
Fixed preview of ExtrusionMultiPath instances.
2017-01-20 20:20:41 +01:00
bubnikv
c0b3de6248
Hopefully fixes https://github.com/prusa3d/Slic3r/issues/90
...
Latest master segfaults with perl 5.24.1 #90
The fix achives similar goal to https://github.com/alexrj/Slic3r/pull/3575
but it is simpler.
2017-01-20 16:56:37 +01:00