Commit Graph

4233 Commits

Author SHA1 Message Date
jmespadero 97a521fd23
Edge orientation coherence
Sort edges in output of IntersectionPlaneMesh() to remove duplicate vertex and maintain orientation coherence in the edges.

Before this change, the vertex list contains duplicates and the edge list is not sorted, so there is no easy way to build the polylines of the cut. Calling RemoveDuplicateVertex() will produce a edge list with no coherence, like this example:

```
edge [0 1] goes from [0.12843863 0.38690682 0.1] to [0.13383933 0.3839188  0.1]
edge [2 3] goes from [0.14307424 0.38100217 0.1] to [0.13592989 0.38318165 0.1]
edge [3 1] goes from [0.13592989 0.38318165 0.1] to [0.13383933 0.3839188  0.1]
```

The output is correct, but somehow confusing because edges in the polyline(s) are not in order. After the proposed change, the output will be: 

```
edge [0 1] goes from [0.12843863 0.38690682 0.1] to [0.13383933 0.3839188  0.1]
edge [1 3] goes from [0.13383933 0.3839188  0.1] to [0.13592989 0.38318165 0.1]
edge [3 2] goes from [0.13592989 0.38318165 0.1] to [0.14307424 0.38100217 0.1]
```
2021-11-05 10:43:29 +01:00
alemuntoni 08487711d6 better copy in simple temporary data 2021-10-20 18:36:34 +02:00
alemuntoni 412c904a17 remove fscanf from outline2_packer.h 2021-10-20 10:29:25 +02:00
alemuntoni 4d6c87c579 remove sprintf from meshtree and perfect_sparial_hashing 2021-10-20 09:38:07 +02:00
alemuntoni 875d659719 remove sprintf from edge collapse algorithms 2021-10-20 08:48:06 +02:00
Paolo Cignoni feb2f2c3bc removed memset from isosurfacing classes 2021-10-19 18:56:48 +02:00
alemuntoni 10e8502717 remove sprintf from hole.h, plymc.h and volume.h 2021-10-19 18:25:28 +02:00
alemuntoni 78cad04cb9 remove sprintf from plymc.h 2021-10-19 17:44:19 +02:00
alemuntoni 9dccb764ed remove memcpy on simple_temporary_data.h 2021-10-19 15:46:14 +02:00
alemuntoni 9353836106 remove memcpy on allocate.h 2021-10-19 15:31:06 +02:00
alemuntoni b8bb88063e remove memcpy from point_matching_scale.h 2021-10-19 15:06:28 +02:00
alemuntoni 9cb1a267fa fix octree.h, char -> unsigned char 2021-10-19 14:37:57 +02:00
alemuntoni 0bb69855d9 removed other memset 2021-10-19 14:33:26 +02:00
alemuntoni 341148b961 fix matrix44, remove memset from octree.h 2021-10-19 14:16:53 +02:00
alemuntoni da77800d02 remove memset from simple_temporary_data and matrix44, remove old_matrix 2021-10-19 12:45:05 +02:00
alemuntoni 5e17997b37 remove memset from meshtree.h 2021-10-19 12:14:31 +02:00
alemuntoni 70ac3d8248 remove memset from align_pair.h and marching_cubes.h 2021-10-19 11:57:02 +02:00
Paolo Cignoni cdd0a520a9 Update curvature_fitting.h
updated curvature local, added callback
2021-10-14 23:02:13 +02:00
alemuntoni 3bb6cfc71a missing include in complex/base.h 2021-10-14 17:06:30 +02:00
alemuntoni 9bdcf887f2 fix eigen compile error on curvature_fitting.h 2021-10-05 16:57:17 +02:00
Alessandro Muntoni bda3161f46
Merge pull request #177 from gabryon99/devel
Devel: Add MeshTree and OccupancyGrid classes for Global Alignment
2021-09-17 14:05:37 +02:00
gabryon99 b98261e29f fix meshtree params 2021-09-16 18:58:41 +02:00
gabryon99 3cd68269fd replaced for with smart ones 2021-09-15 23:48:59 +02:00
gabryon99 6d7eeb4908 format occupancy_grid.h 2021-09-15 23:47:42 +02:00
alemuntoni 1980f1a775 curvature ocf const correctness 2021-09-15 15:15:28 +02:00
gabryon99 30f0383fc6 add ScalarType to OccupancyGrid and MeshTree 2021-09-14 17:47:56 +02:00
gabryon99 2b507b5540 add align_global.h 2021-09-14 15:37:52 +02:00
gabryon99 cfc21cd8d2 remove ScalarType from MeshTree 2021-09-14 15:37:48 +02:00
gabryon99 16de5d341c add meshtree.h 2021-09-14 15:37:35 +02:00
gabryon99 4595f32202 uncommented the include of plystuff to avoid duplicate symbols 2021-09-14 15:37:28 +02:00
gabryon99 2a5c9bfb61 fix typos 2021-09-14 15:37:21 +02:00
gabryon99 8928fbbe6b fixes 2021-09-14 15:36:49 +02:00
gabryon99 6f38a1adc6 removed tri namespace from OccupancyGrid 2021-09-14 15:36:42 +02:00
gabryon99 02c4e32a1f add OccupancyGrid class 2021-09-14 15:36:31 +02:00
nico fea0a33575 added std namespace for max function on line 281 2021-08-31 21:40:01 +10:00
nico 4e3f08e134 corrected some simple warning and avoided collapse of edges of triangular faces for polygons 2021-08-31 21:38:59 +10:00
nico bd05cf0932 Checked to not collapse triangular faces in Function RemoveValence2Vertices 2021-08-24 09:28:03 +10:00
nico 78d98b2577 Fixed 2 more instances of the Marsienne Twister 2021-08-24 09:26:28 +10:00
alemuntoni b1c1d03215 fix MarsenneTwisterURBG class 2021-08-23 17:35:50 +02:00
alemuntoni e3731ec7f5 fix MarsenneTwisterURBG class 2021-08-23 17:26:47 +02:00
alemuntoni aec8880e85 restore deterministic poisson sampling 2021-08-23 16:24:23 +02:00
alemuntoni 95b376b648 apply #19, #78, #84, #157, #159 2021-08-23 11:07:40 +02:00
Luigi Malomo eca8c51255 another const access fix 2021-08-16 17:36:01 +02:00
alemuntoni cfe0511f35 const getFovFromFocal in shot.h 2021-07-13 12:36:04 +02:00
alemuntoni fdabe1aead TriMesh virtual destructor and fix TriMesh clean 2021-07-09 12:23:20 +02:00
alemuntoni a282947a72 get birth faces indices in ImportFromPolyMesh function 2021-07-07 16:45:15 +02:00
alemuntoni 0f320aa671 fix off polygon export 2021-07-06 16:43:22 +02:00
alemuntoni 094918662b fix append texcoords 2021-07-05 13:02:13 +02:00
Luigi Malomo b2727b1394 warnings fixed 2021-06-25 19:29:46 +02:00
alemuntoni ab3b3b3c5a code cleanups - remove unneeded semicolons 2021-06-21 11:25:51 +02:00