Paolo Cignoni
cca62803d4
added a missing include (according to vstudio)
2017-08-30 17:09:00 +02:00
Paolo Cignoni
e0b7a64b04
Refactored curve on manifold
2017-08-30 16:03:46 +02:00
Paolo Cignoni
42f25c825b
factored out old implementation of foreach
2017-08-30 15:58:56 +02:00
Paolo Cignoni
b52734115a
Added first version of foreach helpers
2017-08-30 15:57:50 +02:00
Luigi Malomo
fbd29ab314
additional parameter added to remesher
2017-07-31 15:01:22 +02:00
Paolo Cignoni
3d47dc1273
Added a missing init bbox
2017-07-27 15:59:09 +02:00
Paolo Cignoni
8b8d9844b1
Cleaned up a bit the poisson solver
2017-07-27 15:58:41 +02:00
Paolo Cignoni
4b9480e2df
header cleanup
2017-07-27 15:55:22 +02:00
Paolo Cignoni
c2f0aee10d
slight change to ExtractPolygon to do not need anything for purely triangular meshes
2017-07-23 09:34:23 +02:00
Paolo Cignoni
005adde169
Cleaned up BuildMeshFromCoordVectorIndexVector
2017-07-23 09:32:51 +02:00
Paolo Cignoni
77c0240737
Stupid useless normalization inserted by error.
2017-07-22 08:03:27 +02:00
Luigi Malomo
75eca5e231
fix for voronoi remesher, again
2017-07-17 20:39:04 +02:00
Luigi Malomo
30dcc87c1a
fixed voronoi remesher
2017-07-13 08:38:33 +02:00
Luigi Malomo
aaea34f882
reimplemented and fixed edge mesh split
2017-07-12 20:14:33 +02:00
Luigi Malomo
014edf0e05
fixed bug in crease_cut.h + minor changes
2017-07-12 11:59:39 +02:00
nico
c9194ae005
added bool SmoothSelected in VertexCoordScaleDependentLaplacian_Fujiwara
2017-07-05 23:52:38 +02:00
nico
1990de4809
rewritten InitQualityVertVoronoiArea function
2017-06-21 15:14:03 +02:00
Paolo Cignoni
8b49a7803a
Added management of selection in laplacian smoothing for remeshing
2017-06-16 11:51:26 +02:00
Paolo Cignoni
59270c3023
Corrected orthographic error in function name. IsFeaseable -> IsFeasible
2017-06-16 11:33:35 +02:00
Paolo Cignoni
ed54491d10
Corrected the error in selection.h that broke the build....
2017-06-16 11:29:38 +02:00
Paolo Cignoni
f8c6030b2a
Added the possibility of restoring a selection with an Or or an And wrt to the current selection (quite useful to preserve something and combine multiple selections)
2017-06-16 01:37:37 +02:00
nico
0ea869a843
changed the handling of valence 2 vertices
2017-05-22 19:28:07 +02:00
Luigi Malomo
f9d20fad7d
warnings fixed
2017-05-18 18:27:37 +02:00
Paolo Cignoni
4bb8528f68
Renamed parameters for better understanding
...
Always disambiguate radians and degree!
2017-05-12 16:23:12 +02:00
Luigi Malomo
64a40f10c6
removed unnecessary edge mesh template from remesher
2017-05-09 14:08:35 +02:00
Luigi Malomo
f74a877891
removed debug option from voronoi remesher
2017-05-09 12:18:32 +02:00
nico
a79feac57b
added Triangulate Method
2017-05-07 22:23:01 +02:00
nico
581acc3d2e
corrected some bug on CollapseBorderSmallEdgesStep function
2017-05-04 03:13:59 +02:00
nico
aada1502e4
added the possibility of preserving corners of the triangle mesh during
...
the quadrangulation
2017-05-04 03:13:08 +02:00
nico
573253bafb
added InterpolateQualityVertFormFaces and ClosestPoint functions
2017-05-01 01:54:36 +02:00
Marco Callieri
ffd8d320e2
corrected bug in appending models with textures
...
fl.ImportData(*fi) should happen BEFORE doing the textureOffset
correction
2017-04-21 15:17:00 +02:00
Luigi Malomo
066762521a
removed harmless warnings
2017-04-16 16:24:00 +02:00
Paolo Cignoni
cc447ec73f
Added a implicit parameter and corrected a bug in the management of selection in remeshing
2017-04-12 07:44:28 +02:00
Paolo Cignoni
db0a01af70
Corrected missing return value in SelectIntersectingFaces
2017-04-12 07:38:19 +02:00
Paolo Cignoni
65c847fede
Added option to work only on selected faces to remeshing
...
added also handy shortcut to avoid creating the projection mesh copy
2017-04-11 19:11:51 +02:00
Paolo Cignoni
717a183097
Added SelectIntersectingFaces function that works for two different meshes (instead of self intersecting)
2017-04-11 19:10:53 +02:00
Paolo Cignoni
37f8ea9643
Added Option to compute average edge length only on selected faces
2017-04-11 19:10:13 +02:00
Luigi Malomo
5c2843b6a9
adapted connected components functions to polygonal meshes
2017-04-05 18:54:53 +02:00
Luigi Malomo
0b7528ee7d
removed warnings
2017-04-05 18:54:53 +02:00
Luigi Malomo
f2b92b6484
adapted some functions to polygonal meshes
2017-04-05 18:54:53 +02:00
Paolo Cignoni
4860a27a15
Added various missing RequireXXX
2017-04-05 07:47:53 +02:00
Paolo Cignoni
d4293c7d78
Minimal refactoring of mesh intersection
2017-04-05 07:40:17 +02:00
Paolo Cignoni
e7161dfa56
Cleaning type mismatch in update quality (quality has its own type!)
2017-04-03 17:23:25 +02:00
nico
cc5ed5f4c3
corrected one compilation issue about cast to scalar type
2017-04-03 12:33:49 +02:00
nico
c2cd4dfccb
corrected one Bug for the usage of a threshold in VertexSaturate
...
function
2017-04-03 11:00:35 +02:00
nico
788292d06c
templates some functions on ScalarType instead of float
2017-04-03 10:58:41 +02:00
nico
bb0e2950e2
solved several Issues to make it works with double
2017-04-03 10:58:09 +02:00
Paolo Cignoni
012c6f6d50
Small changes required for windows compilation of all the samples
2017-04-02 19:52:16 +02:00
Paolo Cignoni
2793be26f6
better comments and corrected SelectVertexCornerBorder -> VertexCornerBorder
2017-04-02 17:40:12 +02:00
Paolo Cignoni
bc07762ab5
Moved and refactored SelectVertexCornerBorder from UpdateFlags to UpdateSelection
...
Added also erode and dilate
2017-04-02 01:27:06 +02:00
Paolo Cignoni
235d03935e
harmless warning issued only on release (assert involving variables)
2017-04-01 18:19:51 +02:00
nico
872448ecba
added ComputePerVertQualityAvg function
2017-03-30 13:06:33 +02:00
nico
f81d5c7ed5
cleaned a bit the commented functions and added Area and Quality as
...
Voronoi Area
2017-03-30 13:06:04 +02:00
Paolo Cignoni
ff7711147e
added some casts for importing curvature types
2017-03-24 15:17:54 +01:00
Luigi Malomo
22afe8170b
comments cleaned
2017-03-24 14:47:50 +01:00
Luigi Malomo
b4779b7151
minor changes to voronoi remesher
2017-03-24 14:43:30 +01:00
Luigi Malomo
9eb6610f34
added arap distortion + class template for UV paramertization
2017-03-24 14:43:30 +01:00
Luigi Malomo
48092ff9b9
fixed types
2017-03-24 14:43:30 +01:00
Marco Callieri
77bbf1d70c
avoid crashing if vn<100
2017-03-23 14:51:20 +01:00
Paolo Cignoni
79f2fc9e73
Added Isotropic remeshing.
...
And the correspondent sample
2017-03-22 14:12:40 +01:00
Paolo Cignoni
8ac9680253
Small optimisation in the edge collapse.
...
One of the two sets of faces computed during the collapse was useless.
2017-03-22 14:12:06 +01:00
Paolo Cignoni
da8b1825c6
Small refactoring
2017-03-22 07:33:34 +01:00
Paolo Cignoni
aef47c18de
Better documentation of meshassert
2017-03-21 23:18:22 +01:00
Paolo Cignoni
6c8cba901d
Added a missing include (requested by gcc to compile unused code)
2017-03-14 22:58:18 +01:00
nico
7674ae4061
added Laplacian filter and some minor changes
2017-03-14 12:55:34 +01:00
Paolo Cignoni
c4d97c2c03
Huge reordering of header file inclusion order
2017-03-14 07:48:48 +01:00
Paolo Cignoni
97e4c0d23b
Promoted the pos.h and topology.h include files to the standard inclusion.
2017-03-13 15:50:19 +01:00
Paolo Cignoni
18d070f9eb
yet another small refactoring
2017-03-13 15:47:55 +01:00
Paolo Cignoni
ebb747ecf5
Added a meshassert in the uniform edge sampling
2017-03-13 15:47:33 +01:00
Paolo Cignoni
610e8e49c8
Added a needed Require Normal Components
2017-03-13 15:46:58 +01:00
Paolo Cignoni
781c333821
Added a few meshassert exception throwing check functions
2017-03-13 15:41:16 +01:00
Paolo Cignoni
4a80b019ac
First commit of the voronoi based remesher
...
Still to be checked…
2017-03-13 13:28:46 +01:00
Luigi Malomo
a75dbdc05d
added function to retrieve the parametrization in matrix form
2017-03-07 14:34:36 +01:00
Luigi Malomo
155806f53e
splitted compactness requirements
2017-03-07 14:32:28 +01:00
Paolo Cignoni
5a29812d7b
Corrected harmless warnings
2017-03-02 10:11:00 +01:00
Paolo Cignoni
4046f82f75
Corrected harmless Warnings
2017-03-02 10:10:18 +01:00
nico
73a89349da
refactored a bit the code and cleaned some commented function
2017-02-24 18:21:21 +01:00
Paolo Cignoni
0478f436b4
Cleaning unused stuff and better comments
2017-02-21 17:47:29 +01:00
Paolo Cignoni
82ddb476a4
Heavy refactoring. Closing #12
...
Many changes, improved general robustness and added more options to
customise the behaviour.
Added control on quality quadric, Hard normal flipping check,
SVDPlacement that find better optimal position and many other small
optimizations.
2017-02-21 17:46:46 +01:00
Paolo Cignoni
95da297c18
Better Comment and a bit of refactoring
2017-02-21 17:15:05 +01:00
Paolo Cignoni
bdd25079ac
Added evaluation of Koenderink's Shape Index and Curvedness from curvature
2017-01-29 18:20:07 +01:00
nico
c858faab65
corrected template parameter of VertexBorderCorner function
2017-01-27 12:20:31 +01:00
nico
7ddf4d27eb
removed some commented code
2017-01-27 12:18:46 +01:00
Paolo Cignoni
3df00a5ffe
Corrected small bug in Smooth VertexCoordPlanarLaplacian
2017-01-26 19:01:43 +01:00
Paolo Cignoni
4529d09e58
Removed hard coded eigenlib path from the include. So you are free to use the version of eigen you prefer.
...
Note that since this commit in your projects you must add also the
eigen folder to the include path.
2017-01-26 15:31:53 +01:00
nico
8eda1c1d2f
added ComputePerFaceQualityAvg function
2017-01-25 17:27:46 +01:00
nico
555fd55b35
added VertexValence function
2017-01-25 17:27:25 +01:00
nico
2e3e2d5194
moved VertexBorderCorner function in updating flags
2017-01-25 17:26:57 +01:00
nico
4b29ec5ef6
first release version of polygonal algorithms methods
2017-01-25 17:25:26 +01:00
nico
b482aa3cbe
first version of Dual meshing with sample application
2017-01-23 17:22:44 +01:00
nico
84913a7d54
added expectedValence function and solved minor bugs
2017-01-23 16:24:29 +01:00
nico
8c2dcdffe8
added VertexQualityTaubin function
2017-01-23 16:17:19 +01:00
Paolo Cignoni
ee9c389418
Rewrote the RemoveUnreferenceVertex to not use bit flags.
2017-01-22 00:32:44 +01:00
Paolo Cignoni
611341b754
Refactoring of the voronoi processing framework
...
factored out the point sampled distance computation and the approximate
skeleton
2016-12-20 09:12:50 +01:00
Paolo Cignoni
32680eac28
Function Name Change FaceGrid -> SparseFaceGrid
2016-12-20 09:12:50 +01:00
Paolo Cignoni
6e63061a5a
Improved documentation, templates a point3f as coordtype, added a function for returning the sampled vector
2016-12-20 09:12:50 +01:00
Paolo Cignoni
3742fcef2b
Heavily commented, restructured and debugged the basic hole filling code
2016-12-12 15:33:34 +01:00
Paolo Cignoni
5e03df37b7
Corrected bug in the BuildMeshFromCoordVectorIndexVector
...
And improved comment on usage
2016-12-05 13:04:51 +01:00
Paolo Cignoni
a850722639
changed a */* into a * /* to avoid a warning
2016-12-04 12:08:29 +01:00
Paolo Cignoni
2a31fb8201
added include<time .h>
...
it is included only in files that make use of timings functions
2016-12-04 12:07:19 +01:00
Paolo Cignoni
4f34f2d78e
harmless clang warning
...
format specifies type 'unsigned long' but the argument has type
'size_t' (aka 'unsigned int')
2016-12-02 15:36:36 +01:00
Paolo Cignoni
831639d819
Refactoring and cleaning of the plymc surface reconstruction algorithm
2016-11-24 17:13:35 +01:00
Paolo Cignoni
cff044ca38
Header and namespace cleaning
2016-11-24 17:13:35 +01:00
Paolo Cignoni
22b633c9c2
Corrected bug of trivial walker when used on a sub volume
2016-11-24 17:13:35 +01:00
Marco Callieri
c21c89b35c
symmetry: added FaceMark to plane-generating sphere
...
if the parametric sphere used for plane geenration does not have
FaceMark, the votation function throws an exception of missing
component.
2016-11-10 09:46:49 +01:00
nico
102a211728
Updated Face face Topology before Quadrangulation
2016-11-02 12:14:39 +01:00
nico
5a12a2899a
Generalized FaceFromVertex to works on polyhedral faces
2016-11-02 12:14:39 +01:00
Paolo Cignoni
f9169b8ec2
Refactored a number of cleaning algorithms
...
Issues resolved:
- removed assert and used the correct meshassert exceptions
- removed wrong use of selection instead of visiting flag (various
filters destroyed selection when called)
- rewrote a totally clumsy count hole.
2016-11-02 12:11:18 +01:00
Paolo Cignoni
0b135dbc01
Stupid me. Wrong braces in previous commit
2016-11-02 11:44:06 +01:00
Paolo Cignoni
e7a5c27693
Added OnlyEdgeMesh precondition in MeshAssert
2016-11-02 11:23:25 +01:00
Gianpaolo Palma
48818b4e40
Added functions for FaceType in the EmptyTMark class
2016-10-18 13:38:10 +02:00
Guido Ranzuglia
20fa52181f
- fixed "if there is color both vertex/face colors are enabled even if there is just one of them" bug
2016-10-13 04:28:00 +02:00
Gianpaolo Palma
8b90ba72a3
Bug fixed by removing the deferencing of the end() iterator of the container
2016-10-07 17:01:39 +02:00
Guido Ranzuglia
5e89a6a5f7
- roll back
2016-09-12 09:01:40 +02:00
Guido Ranzuglia
cb4f24383f
- various bugs fixed
2016-09-12 08:58:29 +02:00
Guido Ranzuglia
01787cad96
- rolled back to previous github version of the file
2016-09-08 05:25:43 +02:00
Guido Ranzuglia
16879ec6ca
- removed "no texture binded with per points vertex texture modality" bug
2016-09-08 05:22:53 +02:00
Paolo Cignoni
f2731fccff
Removed useless preserveSelection flag
...
it is meaningless to have this option in a function that start from
current selection…
2016-07-31 12:37:51 +02:00
Guido Ranzuglia
92eec412a5
- the DeletePerMeshAttribute signature (and semantics...) has been consistent with the other DeletePerXXXAttribute functions
...
I discussed with Fabio about it
2016-07-28 12:32:13 +02:00
Paolo Cignoni
f20540d563
Corrected a Meshlab leftover (Scalarm->ScalarType
2016-07-17 16:48:29 +02:00
nico
b4c76bc03c
fixed bug
2016-07-15 14:36:08 +02:00
Marco Callieri
bdec7f527c
added new Perlin coloring function
...
New function ot mix two input colors according to perlin noise
2016-07-14 18:37:08 +02:00
Paolo Cignoni
78254e94af
First version of the plymc vcg surface reconstructor
2016-06-14 22:46:23 +02:00
Paolo Cignoni
95f6acd9fa
moving plymc core from meshlab to vcglib
2016-06-14 19:30:34 +02:00
Paolo Cignoni
32333eba24
Huge copyright sanitization of the header files of vcg folder.
2016-06-13 05:29:25 +00:00
Paolo Cignoni
a690c99fee
Updated copyright disclaimer of the mc lookup table file after the explicit copyright transfer allowed by the original author of the file (Thomas Lewiner)
2016-06-13 05:28:31 +00:00
Paolo Cignoni
05f1e10d19
Removed unsupported emc
2016-06-13 05:23:20 +00:00
Paolo Cignoni
7cea7b7bfc
small refactoring
2016-06-13 04:53:48 +00:00
Paolo Cignoni
f250e7fcd7
Improved distance field volume reconstruction.
2016-06-13 04:48:23 +00:00
Paolo Cignoni
682586d0fa
small change to refactor the use of viewpoint for normal disambiguation
2016-06-12 21:09:13 +00:00
mtarini
9c310f6ab4
Made AllocateEdge correctly compute per-edge border flag (whenever edges have flags)
2016-06-09 14:32:40 +00:00
Nico Pietroni
aeffdc1090
minor changes on defaults parameters
2016-06-09 12:13:11 +00:00
Nico Pietroni
c87a7105d6
changed DifferenceLineField to measeure the angle instead of the dot product
2016-06-09 12:10:41 +00:00
Nico Pietroni
ae92d06e4e
minor warning resolved
2016-06-09 12:09:12 +00:00
Paolo Cignoni
751a4ae261
corrected syntax error in use fo IsValidPointer
2016-05-11 10:55:28 +00:00
granzuglia
a5f3b19d9d
fixed compiler error (added a double cast)
2016-05-06 09:13:09 +00:00
granzuglia
673be536c4
added missing include
2016-05-06 02:16:24 +00:00
Nico Pietroni
15cd436f90
Added the possibility of smoothing the Quality
2016-05-01 15:34:53 +00:00
Nico Pietroni
e091e22735
indented and minor changes
2016-05-01 15:34:32 +00:00
Nico Pietroni
d91e861ab5
changed float to ScalarType in VertexSaturate function
2016-05-01 15:32:57 +00:00
mtarini
5c37e87b06
SetQasDistorsion now: (1) returns the total per-mesh distortion, properly aggregated (2) can compute L2 and L-inf energies
2016-04-13 11:46:38 +00:00
mtarini
480af9d03d
fixed compile-time compatibility toward meshes without Tangent Dirs
2016-04-13 11:33:59 +00:00
Paolo Cignoni
e4fce70f35
Temporary Commit. Still to be improved the CurveOnManifold framework...
2016-04-12 08:35:21 +00:00
Paolo Cignoni
a8bfaef6b6
corrected/completed some HasVEAdjacency HasEEAdjacency etc
2016-04-11 21:12:26 +00:00
Paolo Cignoni
45881efd75
Added TestVertexEdge to check correctness of vertex edge adjacency relation
2016-04-11 20:37:05 +00:00
Paolo Cignoni
71ae65fde7
Modified according to the changes of edge::VVStarVE
2016-04-11 20:34:56 +00:00
Paolo Cignoni
6f0d5cb168
Added very useful "IsValidPointer" functions that check that a given pointer is within the reasonable bounds for a given mesh (eg. given a vertex pointer it checks that it is between begin and end of the vertex vector)
2016-04-11 20:31:56 +00:00
Paolo Cignoni
298714ccea
Refactored and commented. Now can also cut along non faux edges
2016-04-02 08:30:24 +00:00
Paolo Cignoni
9720d0c5a6
better comments
2016-04-02 05:42:28 +00:00
Paolo Cignoni
f4686b3e0f
Added Parula-like color map
...
removed bug on un-clamped set gray
2016-03-31 13:48:45 +00:00