Commit Graph

30 Commits

Author SHA1 Message Date
Vojtech Bubnik
8a2a9dba2f Eradicated admesh from TriangleMesh:
TriangleMesh newly only holds indexed_triangle_set and
TriangleMeshStats. TriangleMeshStats contains an excerpt of stl_stats.
TriangleMeshStats are updated when initializing with indexed_triangle_set.

Admesh triangle mesh fixing is newly only used when loading an STL.
AMF / 3MF / OBJ file formats are already indexed triangle sets, thus
they are no more converted to admesh stl_file format, nor fixed
through admesh repair machinery. When importing AMF / 3MF / OBJ files,
volume is calculated and if negative, all faces are flipped. Also
a bounding box and number of open edges is calculated.

Implemented its_number_of_patches(), its_num_open_edges()
Optimized its_split(), its_is_splittable() using a visitor pattern.

Reworked QHull integration into TriangleMesh:
    1) Face normals were not right.
    2) Indexed triangle set is newly emitted instead of duplicating
       vertices for each face.

Fixed cut_mesh(): Orient the triangulated faces correctly.
2021-09-20 17:12:22 +02: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
tamasmeszaros
19e1d877aa Don't use sla::EncodedRaster in SLAImport, revive opencsg sandbox 2020-08-27 23:14:42 +02:00
tamasmeszaros
70ecb634b7 fix gui artifacts on Windows 2020-01-16 15:38:59 +01:00
tamasmeszaros
a1dc7a5c41 Fix build issues on Windows 2020-01-16 14:25:01 +01:00
tamasmeszaros
402ae12db2 Fix algorithm switching 2020-01-15 12:54:30 +01:00
tamasmeszaros
3ab246df6b Remove completely redundant code 2020-01-15 12:45:01 +01:00
tamasmeszaros
a36c7c76cc Fix scene not being centered 2020-01-15 10:39:07 +01:00
tamasmeszaros
e159344ce5 further fixes for X window crashes. 2020-01-09 11:22:24 +01:00
tamasmeszaros
7d55df052f repaint causes crash on linux 2020-01-08 09:39:48 +01:00
tamasmeszaros
451f04b590 Fix linux assertion 2019-12-20 20:18:23 +01:00
tamasmeszaros
3a185d7f57 fix windows widgets while playback 2019-12-20 19:57:34 +01:00
tamasmeszaros
083b557ec2 Display switching 2019-12-20 18:30:24 +01:00
tamasmeszaros
93d0bbd7ef Add boilerplate for shader based csg 2019-12-20 12:25:44 +01:00
tamasmeszaros
4f97a7122f Fix closing while playback 2019-12-20 01:21:25 +01:00
tamasmeszaros
d3925abb13 Add some comments. 2019-12-19 16:10:34 +01:00
tamasmeszaros
bb8a6b898f Save and load window size. Add fps average output. 2019-12-19 15:26:04 +01:00
tamasmeszaros
8126cdd507 Add command line options. Rename GLScene to Engine 2019-12-19 14:51:38 +01:00
tamasmeszaros
bf44da0e37 Make it work with mesa sw renderer 2019-12-19 01:55:46 +01:00
tamasmeszaros
fafc2a3510 Recording and playback works 2019-12-18 16:24:41 +01:00
tamasmeszaros
472c4c885d Separate fps counter and remove glut dependency 2019-12-18 12:00:28 +01:00
tamasmeszaros
acfaff3741 Dont use glut for fps measure. 2019-12-17 18:39:01 +01:00
tamasmeszaros
558529146c Fix opencsg example on Win32 2019-12-17 16:28:38 +01:00
tamasmeszaros
695950b2e6 further simplification 2019-12-17 10:19:46 +01:00
tamasmeszaros
bb3b39016f Add ctl and fix applying opencsg params on the fly. 2019-12-16 18:49:44 +01:00
tamasmeszaros
47ec708c3a Fix event dispatching to handlers 2019-12-16 15:55:49 +01:00
tamasmeszaros
5aaddd82a4 Remove bloat, add some clipping plane functionality. 2019-12-16 15:36:43 +01:00
tamasmeszaros
878f8a8ead Add convexity to csgsettings. Defer all rendering to Display. 2019-12-16 14:04:26 +01:00
tamasmeszaros
b1186e339d Added opencsg parameter console 2019-12-16 12:36:44 +01:00
tamasmeszaros
66759e10e3 Add opencsg demo sandbox 2019-12-16 11:13:20 +01:00