Commit Graph

6416 Commits

Author SHA1 Message Date
T.Alderighi 3a15e94e95 improvements to smoothing step 2020-01-08 11:04:09 +01:00
T.Alderighi 9af4312450 minor tweaks on isotropic remesher 2020-01-07 14:26:44 +01:00
T.Alderighi 662950a347 small mods to isotropic remeshing 2020-01-04 17:03:30 +01:00
Luigi Malomo 1d082b7fbe fixed bug in perimeter computation 2019-12-20 17:21:38 +01:00
T.Alderighi 1f75de3df3 fixed creases handling problems on non manifold edges 2019-12-20 14:40:52 +01:00
alemuntoni 50165d7b03 solved bug non-referenced vertices in hc laplacian smoothing 2019-12-18 15:47:29 +01:00
Luigi Malomo 73efe508d0 fixed VFAdjacencyIsInitialized in MeshAssert 2019-12-13 16:08:05 +01:00
T.Alderighi 795f5473d6 complete rework of the crease preserving strategy for isotropic_remeshing & removed manifoldness constraint.
Small patch in edge_collapse adding a parameter to do (default=false) for crease information preservation after collapse
Added refineMidpoint in refine to perform midpoint refinement without manifoldness constraints
2019-12-11 16:33:07 +01:00
T.Alderighi 1b1023179f adding reserve on vectors causes huge speedup, especially for algorithms that heavily rely on these subroutines 2019-12-11 10:25:48 +01:00
T.Alderighi 7e6c7c71b3 fix a bug that causing heap priority to be inconsistent after updating vertex quality [using windows runtime this would cause an assertion to fail] 2019-12-11 10:23:26 +01:00
Luigi Malomo 2cb784264e fixed wrong asserts in texcoord2 2019-12-10 18:52:09 +01:00
Luigi Malomo 93abca0369 fixed import of vertex texcoord component 2019-12-10 17:02:24 +01:00
Luigi Malomo 7f5ebbd2c5 added import function to TexCoord2 and fixed inconsistencies with Point2 2019-12-10 17:01:20 +01:00
Paolo Cignoni cfbece0e98
typo 2019-12-10 11:55:55 +01:00
Andrea Maggiordomo 9eb8672ba9 added RasterizedOutline2Packer::PackBestEffort() sample 2019-12-10 10:14:10 +01:00
Andrea Maggiordomo 6c02f53fb1 tweaked rasterized packer 2019-12-10 10:13:38 +01:00
Paolo Cignoni acf2331c70
Update ContributorLicenseAgreement.md 2019-12-06 07:44:12 +01:00
Paolo Cignoni 8a3d91fa42
Update ContributorLicenseAgreement.md 2019-12-06 07:24:18 +01:00
T.Alderighi 2f45aae20c updates to isotropic remeshing 2019-11-27 17:15:09 +01:00
Luigi Malomo 2fca22fc4e added missing cstring include 2019-11-21 18:42:25 +01:00
Luigi Malomo 01943cf591 minor fix for windows 2019-11-21 17:27:46 +01:00
T.Alderighi 0cfeda19c1 fix bug on rotationmatrix computation corner case 2019-11-21 17:14:34 +01:00
Luigi Malomo 95f793a6cd fixed nanoply build 2019-11-21 17:09:32 +01:00
Luigi Malomo 9c1fbc085c fixed nanoply build 2019-11-21 17:09:05 +01:00
Luigi Malomo 303c4d14b5 minor changes 2019-11-21 17:08:15 +01:00
Paolo Cignoni 9fe918ca37
Merge pull request #63 from norbertwenzel/issue-42
Remove unused functions failing to compile in GCC
2019-11-06 19:14:39 +01:00
Norbert Wenzel d1c9bd68a0 Remove unused overloads that do not compile
The `ReadHeader()` overloads taking a character pointer (filename) as a
first parameter instead of a `FILE*` directly do not compile, as they
are calling an overload of `ReadHeader(FILE*)` which does not exist.
Clang does not seem to care as these functions are unused when compiling
MeshLab (and therefore also VCGLib) but GCC tries to compile these
(unused) functions and rightly fails.

This commit simply removes the overloads taking a filename (`char*`).
They are in a header, but since they should fail to compile on *any*
platform I guess it is safe to remove these overloads, as I do not
expect them to be used anywhere successfully.
2019-10-27 08:59:57 +01:00
Norbert Wenzel d0c135e0e0 Mark internal class as `final`
The internal `Element` class implements the pure virtual interface
`IElement` which has no virtual destructor. `Element` has data members
but is deleted through an `Element*` so all members are destructed
correctly.
To convince the compiler this is all fine and to prevent the (unlikely)
case of someone inheriting from `Element` mark the class as `final`.
2019-10-25 00:02:09 +02:00
Norbert Wenzel 30f05d8fc9 Add virtual default dtor to base class
TrivialEar has data members and virtual functions, but no virtual destructor.
Two subclasses  (MinimalWeightEar & SelfIntersectionEar) exist, but they do
not add any new data members. So deleting through any pointer should be okay,
but to be sure and silence compiler warnings add the virtual dtor to the base
class.
This ensures all subclasses are theoretically allowed to add new data members
that will get destructed, regardless of the pointer type used for destruction.
2019-10-24 23:45:25 +02:00
T.Alderighi 910da4c3e3 fixed bug when opening ply files containing float scalartype on a double scalartype mesh and viceversa 2019-09-19 17:56:55 +02:00
T.Alderighi ca65cf2162 added support for face normals export and import and face (double precision) quality export and import for ply format 2019-09-10 15:42:41 +02:00
Luigi Malomo d46c581ffb implemented least squares rigid motion 2019-06-10 12:09:48 +02:00
Luigi Malomo 50939143f5 temporarily reverted ClearAttributes in mesh destructor 2019-05-15 18:32:44 +02:00
nico 8147097df8 avoided computing curvature if not needed 2019-05-15 11:53:12 +10:00
nico b81e2e98bc solved one template problem 2019-05-15 11:52:54 +10:00
Luigi Malomo 3b5464e4a0 improved precision for a closest point in SegmentPointDistance 2019-05-13 12:06:08 +02:00
Paolo Cignoni b619a09508 Simple example for mesh uniform resampling class 2019-05-08 11:28:54 +02:00
nico 565f4c4f53 added k-neighbors instead of radius to make it more stable 2019-05-06 18:17:17 +10:00
nico eab154fca5 solved one numerical issue in RotationMatrix 2019-05-04 22:28:28 +10:00
nico 67cb231cc3 added one flag in Triangulate to modify only selected faces 2019-04-26 16:54:43 +10:00
nico 02e04e901a added define to compile without comiso and use only polyvector field 2019-04-24 11:51:08 +10:00
nico 42b17bf904 corrected one bug in SmoothIterative 2019-04-24 11:50:48 +10:00
nico 289fa731b9 correctd one bug added flag to keep some vertex fixed 2019-04-24 11:50:15 +10:00
Andrea Maggiordomo 60ea359ec4 Fixed integer overflow occurring in fillChunk() if mesh had a single face with wedge texcoords 2019-04-12 09:38:00 +02:00
Andrea Maggiordomo 011764d5b2 Added delete[] to VectorNBW<bool> destructor 2019-03-25 13:01:44 +01:00
Andrea Maggiordomo 624c15e390 Added call to ClearAttributes() in Trimesh destructor 2019-03-25 12:58:54 +01:00
nico ed63e3f7ee Update tangent_field_operators.h
added functions InitBorderField , SmoothIterative  and PropagateFromSelF
2019-03-21 16:49:17 +11:00
Luigi Malomo ce75b4e68f updated polygon triangulate funnction + corrected Dijkstra spelling 2019-02-28 12:37:01 +01:00
Andrea Maggiordomo 5ab1b189a0 Added function to pack at fixed scale into a given number of container 2019-02-01 10:53:31 +01:00
Andrea Maggiordomo 19adc39387 Updated RasterizedOutline2Packer
Added parameters to control the gutter size of the outlines, the
possibility to track space between previously placed polygons when
evaluating new moves (inner horizons), and the possibility to try a
small number of permutations of the packing sequence in order to
improve the overall efficiency.

Cleaned up QtOutline2Rasterizer.

Updated the relevant samples.
2019-01-31 14:28:24 +01:00