ganovelli
d3682195ca
replaced a "3" with a f->VN()
2008-12-18 17:53:42 +00:00
ganovelli
db04989f13
added support for meshes with holes
2008-12-18 17:52:48 +00:00
Paolo Cignoni
20b46e3122
added the default use of a safe random generator for shuffling vectors (mingw rand seems really bad...)
2008-12-18 00:30:52 +00:00
Paolo Cignoni
0b15c9b4b4
added a few const, and a default value for the generate(int) call
2008-12-18 00:29:03 +00:00
Paolo Cignoni
c2c940338e
added a missing PerFaceFromCurrentVertexNormal mode
2008-12-18 00:27:47 +00:00
Marco Callieri
7548c5e2ac
corrected a pow argument casting
2008-12-16 09:52:04 +00:00
Paolo Cignoni
0f0ac756e4
Polar Functor is now templatized
2008-12-15 13:16:00 +00:00
Paolo Cignoni
a9a17a0713
Aligned with current implementation of RandomGenerator
2008-12-15 08:49:02 +00:00
ganovelli
ca3f973398
added unsupported to deprecated in the warning
2008-12-12 18:11:42 +00:00
ganovelli
76eefc7fb8
added unsupported to deprecated in the warning
2008-12-12 18:10:36 +00:00
Paolo Cignoni
8ef495be20
added test to skip degenerate triangles in curvature computation
2008-12-12 15:08:36 +00:00
Paolo Cignoni
4e2808a64e
added assert for avoiding to put trash into a histogram
2008-12-12 15:06:27 +00:00
Paolo Cignoni
46cc8c7327
Removed harmless warnings
2008-12-11 13:56:37 +00:00
Paolo Cignoni
85dc63a154
moved here from meshlab. Long time due.
2008-12-11 13:52:25 +00:00
Paolo Cignoni
3485b76d8f
Added explicit casts
2008-12-09 11:36:34 +00:00
Paolo Cignoni
8f591655f3
added comment on the two critical asserts
2008-12-09 07:52:27 +00:00
Paolo Cignoni
2143a5138a
corrected bug in PerVertexFromCurrentFaceNormal (wrong use of Construct() )
2008-12-09 07:51:33 +00:00
Paolo Cignoni
a37e44cff1
Made create:box working. Current version was plain wrong. Thanks to Lorenzo Marchi
2008-12-08 14:56:28 +00:00
Paolo Cignoni
0047c70cae
Translated comments, added various notes, removed some dead code, changed a bit the interface of the default edgelen predicate
2008-12-05 22:57:20 +00:00
Paolo Cignoni
0e13472efb
corrected a wrong assert in grid creation function
2008-12-05 22:55:36 +00:00
Paolo Cignoni
e744ca1c0e
added the missing HasPerVertexMark
2008-12-05 22:45:05 +00:00
Paolo Cignoni
f6388be600
added VertexSet, the dual of UpdateFlags::VertexClear(bitmask);
2008-12-05 22:44:03 +00:00
Paolo Cignoni
007d6b94f5
added two const to the next and prev index returning functions
2008-12-05 22:42:55 +00:00
Paolo Cignoni
cca3b3ad5f
cleaned up a lot of typename gcc compilation issues
2008-12-02 10:04:16 +00:00
Paolo Cignoni
928c8dd997
Removed harmless warnings
2008-11-28 14:55:45 +00:00
Paolo Cignoni
62c3f721aa
Added missing include trimesh/allocate.h
2008-11-28 13:45:39 +00:00
Paolo Cignoni
13e5060688
Re-added the original constructor with the seed. Very useful for using custom static generators.
2008-11-27 21:04:17 +00:00
ganovelli
3cbdda3232
added EmptyEEAdj to the type holder
2008-11-27 18:21:01 +00:00
ganovelli
1d263ec3ff
added the possibility to include a container of edges as a third parameter.
...
This mod should be fully backward compatible (tested .net 2005 and gcc 4.2.4)
2008-11-27 18:01:07 +00:00
Massimiliano Corsini
b73fba8706
refactoring
2008-11-27 16:39:05 +00:00
Paolo Cignoni
46b3024de6
Changed as to include new Random methods
2008-11-27 15:05:36 +00:00
Massimiliano Corsini
c13722fd54
minor changes
2008-11-27 11:49:17 +00:00
Massimiliano Corsini
67d185c384
other bugs fixed
2008-11-27 11:37:23 +00:00
Massimiliano Corsini
7b8d3a07f0
first fixes
2008-11-27 11:31:01 +00:00
Massimiliano Corsini
50a436594e
re-styled and improved uniform random number generator
2008-11-27 11:27:54 +00:00
ganovelli
9d8e452e65
added Alloc to support polygon meshes
2008-11-26 17:58:15 +00:00
ganovelli
01750729b6
missing checks on deleted simplex added
2008-11-26 17:57:09 +00:00
ganovelli
faeef173e8
added AddEdge and RemoveEdge (still much ongoing)
2008-11-26 17:56:00 +00:00
ganovelli
4cae6b5107
added the update of the pointers related to the AddEdges
2008-11-26 17:46:31 +00:00
ganovelli
a00abdc73c
added EmptyHEData in EdgeBase
2008-11-26 17:43:28 +00:00
ganovelli
cb547de5ec
removed a few bugs, added EmptyHEData class
2008-11-26 17:42:55 +00:00
ganovelli
327874865a
removed a few bugs on calls to Alloc()
2008-11-26 17:41:47 +00:00
Massimiliano Corsini
992a808685
2008-11-20 17:00:30 +00:00
Paolo Cignoni
8e23847cab
Distance functor is now a template parameter
2008-11-20 16:24:42 +00:00
Paolo Cignoni
c7719d7d35
Corrected wrong max_band
2008-11-20 13:29:26 +00:00
Paolo Cignoni
5ee16ee977
Removed unused static field max_band
2008-11-20 13:27:50 +00:00
Paolo Cignoni
619f3f69ef
Addedd missing include
2008-11-20 13:26:59 +00:00
Paolo Cignoni
42709146e6
Addedd missing std namespace befor make_pair
2008-11-20 13:26:26 +00:00
Massimiliano Corsini
99e6ea5dd6
add fake poisson-disk sampling
2008-11-17 12:52:17 +00:00
Paolo Cignoni
5c6c7cafd5
changed the interface of the texel sampling function. Now width and height of the sampling texture can be different
2008-11-14 15:12:02 +00:00
Paolo Cignoni
360da1dd58
small changes (this-> disambiguations) and a type hack to grant compilation on mac gcc
2008-11-13 09:44:46 +00:00
ganovelli
2dfa6976ac
[EDGE_SUPPORT] first working draft. It contains a class with two static function to compute indexed data structure from half edges and viceversa
2008-11-12 17:09:26 +00:00
ganovelli
f80c878644
[EDGE SUPPORT] Added template parameter to query function to comply mods in vcg/complex/trimesh/base.h
2008-11-12 16:21:30 +00:00
ganovelli
81a4a5b4f5
added missing cC() access to color
2008-11-12 16:20:53 +00:00
ganovelli
62ff8885c0
Added missing Prev and Next to PolyInfo
...
[EDGE SUPPORT] Added PFEAdj (pointer to edge)
2008-11-12 16:19:52 +00:00
ganovelli
d3ba33039b
[EDGE SUPPORT] Added template parameter to qyery function to comply mods in vcg/complex/trimesh/base.h
2008-11-12 16:18:28 +00:00
ganovelli
085d51edfa
[EDGE SUPPORT] added FEAdj component
2008-11-12 16:17:07 +00:00
ganovelli
896e0edc04
minor - just identation
2008-11-12 16:15:52 +00:00
ganovelli
be05277504
added the components to implement the half edge data structure:
...
HEOppAdj : pointer to the opposite half edge
HEVAdj : pointer to the vertex
HENextAdj : pointer to the next half edge
HEPrevAdj : pointe to the previous half edge
EFAdj : pointer to the face
HEdgeData : groups all previous except (HEPrevAdj)
2008-11-12 16:14:13 +00:00
ganovelli
b6f21780dc
added workaround for std::vector<bool> bitwise implementation.
...
The workaround is a rough reimplementation of std::vector.
If you can, use "char" as temporary data and cast it when you need.
2008-11-12 16:10:04 +00:00
ganovelli
274e20b3df
changed m.HasFFTopology to HasFFTopology(m)
2008-11-12 16:06:59 +00:00
ganovelli
122f0412c8
made compliant to polygon_support
2008-11-12 16:03:24 +00:00
ganovelli
c7e86ab57a
remove unreferenced variable
2008-11-12 16:01:11 +00:00
ganovelli
a5cbc8c7f8
added return to RemoveNonManifoldVertex
2008-11-12 16:00:27 +00:00
ganovelli
e37cca54a3
[EDGE SUPPORT]
...
Added default template to TriMesh to include the edges.
Added peredge attributes.
These modification do not require any change to the code using TriMesh, but it allows
to specify a real type of edge in case you want to use it.
2008-11-12 15:51:01 +00:00
ganovelli
1aa88e635b
added update of newEnd in AddFaces
...
Added [de]allocation of edges and per-edges attributes.
2008-11-12 15:46:16 +00:00
Paolo Cignoni
d124cae6fb
added a missing include
2008-11-07 15:37:46 +00:00
Paolo Cignoni
2e7c97e90e
Corrected the update cycle in the AddFace. Thanks to Michele Vannoni for pointing out this bug!
2008-11-07 15:36:19 +00:00
Paolo Cignoni
df84db769c
Rewrote the function for the selection and counting of non manifold vertices. Now it does not require VF topology, just FF.
2008-11-07 10:12:39 +00:00
Federico Ponchio
a9e5756eda
Distortion parameter zeroed on creation!
2008-11-06 15:36:44 +00:00
Paolo Cignoni
0927eaf2fb
sounds like I forgot to commit the addition of Transpose compatibility + fix related to recent Eigen change
2008-11-04 12:33:47 +00:00
Paolo Cignoni
cb22994ef5
Restored TMARKER as a copied, not referenced, class
2008-11-03 16:21:52 +00:00
mtarini
b3620bb320
implemented ToEulerAngles + minor changes and fixes.
2008-11-01 15:54:13 +00:00
Paolo Cignoni
336de84d19
Added an unbiased montecarlo and a revised (still to be improved) stratified sampling
2008-11-01 07:22:29 +00:00
Paolo Cignoni
4e46ff3be6
Added HasPerVertexRadius(mesh)
2008-10-31 12:27:37 +00:00
Paolo Cignoni
dfc6417426
Changed IPToP calls into IPiToPf, Markers passed by reference
2008-10-31 10:40:06 +00:00
Paolo Cignoni
dfc97ba1f2
fix Matrix44 infinite product, make glGetv not allocate temporary
2008-10-30 10:47:08 +00:00
Paolo Cignoni
49c72bc54e
Disambiguated some grid utility names (IPtoTP into IPfToPf and IPiToPf) in order to avoid ambiguities (due to automatic cast?)
2008-10-30 09:01:03 +00:00
Paolo Cignoni
6627c21d43
added a missing dot() product for the conservative people still using deprecated stuff...
2008-10-30 07:39:33 +00:00
Paolo Cignoni
60eb470c6c
of course fixing msvc breaked gcc... not anymore... spoke too fast gcc 4.0.1 had troubles
2008-10-29 15:52:07 +00:00
Paolo Cignoni
e90fd9ca16
of course fixing msvc breaked gcc... not anymore
2008-10-29 15:36:08 +00:00
Paolo Cignoni
0414cbc2f3
Fixed includes, new interface to specify polar functions
2008-10-29 15:26:45 +00:00
Paolo Cignoni
c8506daaff
fixed a couple of MSVC issues, meshlab compile, the plugins soon...
2008-10-29 14:01:44 +00:00
Paolo Cignoni
7b075b3905
mvsc does not like #warning
2008-10-29 13:17:32 +00:00
Paolo Cignoni
69a82d6174
fix the is "inaccessible" issue with g++-4.0.1 - more fixes ;)
2008-10-29 11:29:57 +00:00
Paolo Cignoni
696f763c3d
fix the is "inaccessible" issue with g++-4.0.1
2008-10-29 11:28:51 +00:00
Paolo Cignoni
e587581275
add transposeInPlace and duplicate V(int)
2008-10-29 11:17:11 +00:00
Paolo Cignoni
07f2e976ea
* change all remaining Transpose to transpose,
...
* update the gl/math wrappers to make them more Eigen friendly
(and remove the useless, and not used, and somehow dangerous
*Direct and *E functions)
* add automatic reinterpret_casting from Eigen::Matrix to vcg
specialized types
2008-10-29 00:05:44 +00:00
Paolo Cignoni
0361427bc0
big cleaning in Point* and Matrix*, now they are very closed to be simple typedef of
...
Eigen's Matrix. Now the dilema is how to mimic those typedefs, using inheritence ?
or using the classic workaround: typename Point3<float>::Type; with Point3<T>::Type defined
to Eigen::Matrix<T,3,1>. Anyway currently I support both (and the inheritence scheme has
to be preserved for compatibility). The advantage of the second approach is that when
eigen has to evaluate an expression it uses an Eigen::Matrix<>, so it is probably better
to only use Eigen::Matrix but I'm not 100% sure that makes a big difference especially if
we add some automatic reinterpret_cast between Eigen::Matrix and vcg::Point*....
2008-10-28 20:06:17 +00:00
Paolo Cignoni
6e0b8fe1aa
added import vector
2008-10-28 15:00:16 +00:00
Paolo Cignoni
c1551eddfd
make Point derive Eigen's Matrix and some cleanning
2008-10-28 11:47:37 +00:00
ganovelli
949637c795
added private copy constructor and assignment operator to prevent people from doing those things
...
added empty constructors to attribute handles
2008-10-28 11:00:30 +00:00
Paolo Cignoni
977ddb9623
some cleaning
2008-10-28 10:16:43 +00:00
Paolo Cignoni
7befff7bec
make point2 derived Eigen's Matrix, and a set of minimal fixes to make meshlab compile
...
with both old and new version. The fixes include:
- dot product: vec0 * vec1 => vec0.dot(vec1) (I added .dot() to the old Point classes too)
- Transpose: Transpose is an Eigen type, so we cannot keep it if Eigen is used. Therefore
I added a .tranpose() to old matrix classes, and modified most of the Transpose() to transpose()
both in vcg and meshlab. In fact, transpose() are free with Eigen, it simply returns a transpose
expression without copies. On the other be carefull: m = m.transpose() won't work as expected,
here me must evaluate to a temporary: m = m.transpose().eval(); However, this operation in very
rarely needed: you transpose at the same sime you set m, or you use m.transpose() directly.
- the last issue is Normalize which both modifies *this and return a ref to it. This behavior
don't make sense anymore when using expression template, e.g., in (a+b).Normalize(), the type
of a+b if not a Point (or whatever Vector types), it an expression of the addition of 2 points,
so we cannot modify the value of *this, since there is no value. Therefore I've already changed
all those .Normalize() of expressions to the Eigen's version .normalized().
- Finally I've changed the Zero to SetZero in the old Point classes too.
2008-10-28 00:59:46 +00:00
Paolo Cignoni
393ec38d54
quick fix in color4
2008-10-27 19:38:52 +00:00
Paolo Cignoni
ab200fc950
Port to eigen2: state of the mess:
...
* curently nothing change if you don't define VCG_USE_EIGEN
* make Matrix*, Point3 and Point4 derive Eigen::Matrix (still ugly)
* now catching all the dot products to replace them by .dot()
note that most of meshlab already compile
2008-10-27 19:35:17 +00:00
ganovelli
69ebba04b9
Created.
...
PolygonSupport provides the functions to import a trimesh from a polygonal mesh and viceversa.
2008-10-27 16:54:32 +00:00
ganovelli
4002b9a706
created as a first working draft.
...
Tessellates a simple polygon with the earcut algorithm
assuming the polygon is almost planar
2008-10-27 16:50:45 +00:00
Paolo Cignoni
4db69febbe
big replacement .Zero => .SetZero, and start of Eigen's compatibilities (currently disabled by default)
2008-10-27 14:48:14 +00:00
ganovelli
c0a5159672
changed member Zero() to SetZero()
2008-10-27 12:52:22 +00:00
Federico Ponchio
5394003338
Fixed small error in documentation
2008-10-24 18:49:40 +00:00
Paolo Cignoni
8a8eb6fb65
add the possiblity to sort eigenvalues/vectors according to their absolute values
2008-10-24 17:21:53 +00:00
Paolo Cignoni
57fe4376a2
fix a few warnings
2008-10-24 12:45:02 +00:00
Paolo Cignoni
64fcbc961a
compilation fix for 64bits systems
2008-10-24 12:41:50 +00:00
Paolo Cignoni
24ea4251a9
Matrix33: make const the binary operators
2008-10-24 12:20:44 +00:00
ganovelli
4783ac9a62
added an assertion
2008-10-24 10:26:28 +00:00
ganovelli
d5113f6204
added missing functions
...
IsCurvatureDirEnabled
EnableCurvatureDir
and debugged CurvatureDirTypeOcf, which
returned wrong values and [MAJOR] wasted
8 floats per vertex every time it was included in the type (enabled or not)
2008-10-24 09:54:23 +00:00
ganovelli
3a5b6ed2f3
added missing checks in ImportLocal
2008-10-24 09:50:55 +00:00
ganovelli
cba885edbe
missing (unreachable) return added
2008-10-24 09:49:47 +00:00
Paolo Cignoni
64ce68dac0
* make EmptyRadius::HasRadius returns false
...
* make gl/Shader and gl/Program* a bit easier to use:
- automatic object creation
- add Uniform() overloads for vcg::Point*f types
2008-10-15 08:02:14 +00:00
ganovelli
79ef95435a
Compacted EmptyCurvature and EmptyCurvatureDir in EmptyCurvatureData and added EmptyRadius
2008-10-14 16:47:02 +00:00
ganovelli
c454c38e60
added EmptyCurvatureData and EmptyRadius
2008-10-14 16:45:36 +00:00
ganovelli
8198cf4c8b
added HasFaceQualityOcf() to EmptyColorMarkQuality
2008-10-14 16:42:29 +00:00
Paolo Cignoni
fc98a34972
Add an optional per vertex radius property in occ, ocf, and IO mask.
...
Extend derivation_chain from 10 to 12
2008-10-14 14:58:09 +00:00
Paolo Cignoni
c5ec73d0f7
Added IntersectionRayMesh overload function who return hit point, baricentric's coordinates and a pointer of intersected face.
2008-10-14 14:31:35 +00:00
Paolo Cignoni
9b0875d19e
added a missing std::
2008-10-14 14:28:33 +00:00
Paolo Cignoni
6f1e8d0641
Added UpdateColor::VertexFromFace and UpdateColor::FaceFromVertex
2008-10-14 13:41:37 +00:00
ganovelli
dddce06a72
use of NextFE (of the jumping_pos) instead of NextE
2008-10-14 09:47:16 +00:00
ganovelli
699ca34f0c
added missing HasFaceQualityOcf() in InfoOcf
2008-10-14 09:23:36 +00:00
Paolo Cignoni
f15dcf5536
compacted the EmptyMark componenet into the EmptyColorMarkQuality component, to shorten the derivation.
2008-10-14 06:41:46 +00:00
Paolo Cignoni
94178d7128
Added optional per face quality
2008-10-14 06:40:29 +00:00
Paolo Cignoni
ae6f7fee0f
Added FaceQualityGray() and changed (for sake of symmetry) FaceQuality() to FaceQualityRamp()
2008-10-14 06:37:36 +00:00
Paolo Cignoni
de8504ba3e
Added ComputePerFaceQualityMinMax()
2008-10-14 06:36:25 +00:00
ganovelli
d7920e1cc4
Added principal curvatures direction computation with by means of normal cycles:
...
Restricted delaunay triangulations and normal cycle
Cohen-Steiner, David and Morvan, Jean-Marie SCG '03
2008-10-13 14:55:05 +00:00
ganovelli
56857ecdb7
some cleanup of the Taubin tensor estimator (still not working properly)
2008-10-10 14:58:33 +00:00
Paolo Cignoni
78501226de
Removed a few warnings and added a template keyword in the call of a templated function member.
2008-10-09 13:50:45 +00:00
granzuglia
5d25249427
removed a stupid reference (&) from function VN's return type
2008-10-08 15:11:38 +00:00
Paolo Cignoni
413001c79b
The fr parameter is now declared as const in local function ImportFace
2008-10-08 14:44:56 +00:00
Paolo Cignoni
f30376e18d
Added const qualifier to method cC() in Color class
2008-10-08 14:43:15 +00:00
Paolo Cignoni
39e2cf2b3e
Spherical Harmonics are templatized on the number of coefficients
2008-10-08 14:01:34 +00:00
ganovelli
75a7b0a846
[Polygon modification]
...
Added components to the face to handle generic polygons.
(compiled with .net and gcc)
This commit includes the following files:
vcg/complex/trimesh/base.h
Added deallocation of polygon data in the destructor
vcg/complex/trimesh/allocate.h
generalization from 3 to VN() vertices
vcg/complex/trimesh/update/topology.h
generalization from 3 to VN() vertices
vcg/complex/trimesh/update/flags.h
generalization from 3 to VN() vertices
vcg/simplex/face/pos.h
generalization from 3 to VN() vertices
vcg/simplex/faceplus/base.h
Added the method VN() to query the number of vertices
of the polygon (deafult 3) and methods Prev and Next
vcg/simplex/faceplus/component.h
added Alloc and Dealloc calls along the hierarchies
2008-10-08 10:19:07 +00:00
ganovelli
0455dda283
corrected include path
2008-10-08 09:54:24 +00:00
ganovelli
23f7fc2bc3
added component for the spherical harmonics (by Daniele Bernabei)
2008-10-08 09:47:26 +00:00
ganovelli
0d4b3fbed0
[Polygon modification]
...
Added components to the face to handle generic polygons.
(compiled with .net and gcc)
This commit includes the following files:
vcg/complex/trimesh/base.h
Added deallocation of polygon data in the destructor
vcg/complex/trimesh/allocate.h
generalization from 3 to VN() vertices
vcg/complex/trimesh/update/topology.h
generalization from 3 to VN() vertices
vcg/complex/trimesh/update/flags.h
generalization from 3 to VN() vertices
vcg/simplex/face/pos.h
generalization from 3 to VN() vertices
vcg/simplex/faceplus/base.h
Added the method VN() to query the number of vertices
of the polygon (deafult 3) and methods Prev and Next
vcg/simplex/faceplus/component.h
added Alloc and Dealloc calls along the hierarchies
2008-10-08 09:10:53 +00:00
ganovelli
d0d580c4ae
Changed GetIntrinsics into:
...
GetExtrinsicsToWorldMatrix and
GetWorldToExtrinsicsMatrix
2008-10-07 10:57:09 +00:00
Paolo Cignoni
b58cabc1b6
better comment at the begininning explaing a bit the Refine templated mechanism.
2008-10-07 07:02:01 +00:00
Paolo Cignoni
9fc4f7d36f
added a missing const to grid Create
2008-10-07 06:56:26 +00:00
ganovelli
a0cdf71abf
found a bug in PrincipaDirections, clean up of the function and better comments (thanks E.Puppo)
2008-10-02 14:25:54 +00:00
Paolo Cignoni
4f2be6a4ba
a forgotten trimesh -> tri (See previous commits of Fabio Ganovelli)
2008-09-30 12:38:34 +00:00
ganovelli
e16d065e93
[Namespaces changes]
...
vert->vertex
clean up of some namespaces to comply the following naming:
Complexes (3 letters namespaces):
order 0 (point cloud ) :vrt
order 1 (edge meshes) :edg
order 2 (triangle meshes) :tri
order 3 (triangle meshes) :tet
Simplexes (extended namespaces):
order 0 (vertex) :vertex
order 1 (edge) :edge
order 2 (triangle) :triangle (temporarily it remains "face")
order 3 (tetrahedron) :tetrahedron
2008-09-30 11:41:58 +00:00
ganovelli
bb741600ca
<limits.h> to <limit>
2008-09-30 11:41:04 +00:00
ganovelli
7f399c7515
[Namespaces changes]
...
vert->vertex
trimesh->tri
clean up of some namespaces to comply the following naming:
Complexes (3 letters namespaces):
order 0 (point cloud ) :vrt
order 1 (edge meshes) :edg
order 2 (triangle meshes) :tri
order 3 (triangle meshes) :tet
Simplexes (extended namespaces):
order 0 (vertex) :vertex
order 1 (edge) :edge
order 2 (triangle) :triangle (temporarily it remains "face")
order 3 (tetrahedron) :tetrahedron
2008-09-30 11:38:05 +00:00
ganovelli
7defccba1b
getclosest update for \the new definition of distance functor
2008-09-30 11:01:09 +00:00
ganovelli
3831d9716f
[Namespaces changes]
...
vert->vrt
clean up of some namespaces to comply the following naming:
Complexes (3 letters namespaces):
order 0 (point cloud ) :vrt
order 1 (edge meshes) :edg
order 2 (triangle meshes) :tri
order 3 (triangle meshes) :tet
Simplexes (extended namespaces):
order 0 (vertex) :vertex
order 1 (edge) :edge
order 2 (triangle) :triangle (temporarily it remains "face")
order 3 (tetrahedron) :tetrahedron
2008-09-30 10:59:29 +00:00
ganovelli
b96b375d64
[Namespaces changes]
...
vert->vrt
clean up of some namespaces to comply the following naming:
Complexes (3 letters namespaces):
order 0 (point cloud ) :vrt
order 1 (edge meshes) :edg
order 2 (triangle meshes) :tri
order 3 (triangle meshes) :tet
Simplexes (extended namespaces):
order 0 (vertex) :vertex
order 1 (edge) :edge
order 2 (triangle) :triangle (temporarily it remains "face")
order 3 (tetrahedron) :tetrahedron
2008-09-30 10:57:42 +00:00
ganovelli
beb57b487c
[Namespaces changes]
...
vert->vrt
clean up of some namespaces to comply the following naming:
Complexes (3 letters namespaces):
order 0 (point cloud ) :vrt
order 1 (edge meshes) :edg
order 2 (triangle meshes) :tri
order 3 (triangle meshes) :tet
Simplexes (extended namespaces):
order 0 (vertex) :vertex
order 1 (edge) :edge
order 2 (triangle) :triangle (temporarily it remains "face")
order 3 (tetrahedron) :tetrahedron
2008-09-30 10:57:09 +00:00
ganovelli
abd367ac3f
[Namespaces changes]
...
vert->vrt
clean up of some namespaces to comply the following naming:
Complexes (3 letters namespaces):
order 0 (point cloud ) :vrt
order 1 (edge meshes) :edg
order 2 (triangle meshes) :tri
order 3 (triangle meshes) :tet
Simplexes (extended namespaces):
order 0 (vertex) :vertex
order 1 (edge) :edge
order 2 (triangle) :triangle (temporarily it remains "face")
order 3 (tetrahedron) :tetrahedron
2008-09-30 10:56:35 +00:00
ganovelli
e5d28ed8b5
[Namespaces changes]
...
trimesh->tri
clean up of some namespaces to comply the following naming:
Complexes (3 letters namespaces):
order 0 (point cloud ) :vrt
order 1 (edge meshes) :edg
order 2 (triangle meshes) :tri
order 3 (triangle meshes) :tet
Simplexes (extended namespaces):
order 0 (vertex) :vertex
order 1 (edge) :edge
order 2 (triangle) :triangle (temporarily it remains "face")
order 3 (tetrahedron) :tetrahedron
2008-09-30 10:55:18 +00:00
ganovelli
ece2df9202
[Namespaces changes]
...
trimesh->tri
clean up of some namespaces to comply the following naming:
Complexes (3 letters namespaces):
order 0 (point cloud ) :vrt
order 1 (edge meshes) :edg
order 2 (triangle meshes) :tri
order 3 (triangle meshes) :tet
Simplexes (extended namespaces):
order 0 (vertex) :vertex
order 1 (edge) :edge
order 2 (triangle) :triangle (temporarily it remains "face")
order 3 (tetrahedron) :tetrahedron
2008-09-30 10:53:28 +00:00
ganovelli
682865bf25
[Namespaces changes]
...
trimesh->tri
clean up of some namespaces to comply the following naming:
Complexes (3 letters namespaces):
order 0 (point cloud ) :vrt
order 1 (edge meshes) :edg
order 2 (triangle meshes) :tri
order 3 (triangle meshes) :tet
Simplexes (extended namespaces):
order 0 (vertex) :vertex
order 1 (edge) :edge
order 2 (triangle) :triangle (temporarily it remains "face")
order 3 (tetrahedron) :tetrahedron
2008-09-30 10:52:37 +00:00
ganovelli
ac3321980c
[Namespaces changes]
...
vert->vertex
trimesh->tri
clean up of some namespaces to comply the following naming:
Complexes (3 letters namespaces):
order 0 (point cloud ) :vrt
order 1 (edge meshes) :edg
order 2 (triangle meshes) :tri
order 3 (triangle meshes) :tet
Simplexes (extended namespaces):
order 0 (vertex) :vertex
order 1 (edge) :edge
order 2 (triangle) :triangle (temporarily it remains "face")
order 3 (tetrahedron) :tetrahedron
2008-09-30 10:52:09 +00:00
ganovelli
13c853509e
[Namespaces changes]
...
trimesh->tri
clean up of some namespaces to comply the following naming:
Complexes (3 letters namespaces):
order 0 (point cloud ) :vrt
order 1 (edge meshes) :edg
order 2 (triangle meshes) :tri
order 3 (triangle meshes) :tet
Simplexes (extended namespaces):
order 0 (vertex) :vertex
order 1 (edge) :edge
order 2 (triangle) :triangle (temporarily it remains "face")
order 3 (tetrahedron) :tetrahedron
2008-09-30 10:51:38 +00:00
ganovelli
7e579b7895
[Namespaces changes]
...
edge->edg
clean up of some namespaces to comply the following naming:
Complexes (3 letters namespaces):
order 0 (point cloud ) :vrt
order 1 (edge meshes) :edg
order 2 (triangle meshes) :tri
order 3 (triangle meshes) :tet
Simplexes (extended namespaces):
order 0 (vertex) :vertex
order 1 (edge) :edge
order 2 (triangle) :triangle (temporarily it remains "face")
order 3 (tetrahedron) :tetrahedron
2008-09-30 10:50:43 +00:00
ganovelli
9143a0d389
[Namespaces changes]
...
edge->edg
trimesh->tri
clean up of some namespaces to comply the following naming:
Complexes (3 letters namespaces):
order 0 (point cloud ) :vrt
order 1 (edge meshes) :edg
order 2 (triangle meshes) :tri
order 3 (triangle meshes) :tet
Simplexes (extended namespaces):
order 0 (vertex) :vertex
order 1 (edge) :edge
order 2 (triangle) :triangle (temporarily it remains "face")
order 3 (tetrahedron) :tetrahedron
2008-09-30 10:49:09 +00:00
ganovelli
cec96ba260
addded template parameter to comply the new definition of functor and
...
[Namespaces changes]
vert->vertex
clean up of some namespaces to comply the following naming:
Complexes (3 letters namespaces):
order 0 (point cloud ) :vrt
order 1 (edge meshes) :edg
order 2 (triangle meshes) :tri
order 3 (triangle meshes) :tet
Simplexes (extended namespaces):
order 0 (vertex) :vertex
order 1 (edge) :edge
order 2 (triangle) :triangle (temporarily it remains "face")
order 3 (tetrahedron) :tetrahedron
2008-09-30 10:48:41 +00:00
ganovelli
970c388277
[Namespaces changes]
...
edge->edg
clean up of some namespaces to comply the following naming:
Complexes (3 letters namespaces):
order 0 (point cloud ) :vrt
order 1 (edge meshes) :edg
order 2 (triangle meshes) :tri
order 3 (triangle meshes) :tet
Simplexes (extended namespaces):
order 0 (vertex) :vertex
order 1 (edge) :edge
order 2 (triangle) :triangle (temporarily it remains "face")
order 3 (tetrahedron) :tetrahedron
2008-09-30 10:47:09 +00:00
ganovelli
e15127934c
[Namespaces changes]
...
edge->edg
clean up of some namespaces to comply the following naming:
Complexes (3 letters namespaces):
order 0 (point cloud ) :vrt
order 1 (edge meshes) :edg
order 2 (triangle meshes) :tri
order 3 (triangle meshes) :tet
Simplexes (extended namespaces):
order 0 (vertex) :vertex
order 1 (edge) :edge
order 2 (triangle) :triangle (temporarily it remains "face")
order 3 (tetrahedron) :tetrahedron
2008-09-30 10:46:18 +00:00
ganovelli
e652cc5a38
[Namespaces changes]
...
vert->vertex
clean up of some namespaces to comply the following naming:
Complexes (3 letters namespaces):
order 0 (point cloud ) :vrt
order 1 (edge meshes) :edg
order 2 (triangle meshes) :tri
order 3 (triangle meshes) :tet
Simplexes (4 letters namespaces):
order 0 (vertex) :vert
order 1 (edge) :edge
order 2 (triangle) :triangle
order 3 (tetrahedron) :tetrahedron
2008-09-30 10:42:55 +00:00
ganovelli
de35204e95
[Namespaces changes]
...
vert->vertex
clean up of some namespaces to comply the following naming:
Complexes (3 letters namespaces):
order 0 (point cloud ) :vrt
order 1 (edge meshes) :edg
order 2 (triangle meshes) :tri
order 3 (triangle meshes) :tet
Simplexes (4 letters namespaces):
order 0 (vertex) :vert
order 1 (edge) :edge
order 2 (triangle) :triangle
order 3 (tetrahedron) :tetrahedron
2008-09-30 10:42:16 +00:00
ganovelli
ea7b394eb3
[Namespaces changes]
...
vert->vertex
clean up of some namespaces to comply the following naming:
Complexes (3 letters namespaces):
order 0 (point cloud ) :vrt
order 1 (edge meshes) :edg
order 2 (triangle meshes) :tri
order 3 (triangle meshes) :tet
Simplexes (4 letters namespaces):
order 0 (vertex) :vert
order 1 (edge) :edge
order 2 (triangle) :triangle
order 3 (tetrahedron) :tetrahedron
2008-09-30 10:41:41 +00:00
ganovelli
811b263e33
[Namespaces changes]
...
vert->vertex
clean up of some namespaces to comply the following naming:
Complexes (3 letters namespaces):
order 0 (point cloud ) :vrt
order 1 (edge meshes) :edg
order 2 (triangle meshes) :tri
order 3 (triangle meshes) :tet
Simplexes (4 letters namespaces):
order 0 (vertex) :vert
order 1 (edge) :edge
order 2 (triangle) :triangle
order 3 (tetrahedron) :tetrahedron
2008-09-30 10:40:42 +00:00
ganovelli
cdb021e821
added typenames to compile with gcc
2008-09-30 10:38:58 +00:00
ganovelli
5d1bd20c33
added warning for deprecation of this way to define the simplex
2008-09-30 10:38:04 +00:00
ganovelli
7021c9af38
added warning for deprecation
2008-09-30 10:35:44 +00:00
ganovelli
4697eb936f
typenames and definition added to compile with gcc. THe aprt of type querying temporarily commented out (to fix)
2008-09-30 10:34:27 +00:00
ganovelli
8fd3eecf80
added version on IntersectionBallMesh that take a grid. It's a draft, to be refactored. And
...
[Namespaces changes]
edge->edg
clean up of some namespaces to comply the following naming:
Complexes (3 letters namespaces):
order 0 (point cloud ) :vrt
order 1 (edge meshes) :edg
order 2 (triangle meshes) :tri
order 3 (triangle meshes) :tet
Simplexes (4 letters namespaces):
order 0 (vertex) :vert
order 1 (edge) :edge
order 2 (triangle) :triangle
order 3 (tetrahedron) :tetrahedron
2008-09-30 10:18:24 +00:00
ganovelli
4fc9dd2639
added edgeSimp definition
2008-09-30 09:47:25 +00:00
Paolo Cignoni
8143b27315
added missing include callback.h
2008-09-29 10:12:38 +00:00
ganovelli
b5bca977a7
added pragma message to deprecate this way to define the simplex
2008-09-28 14:30:09 +00:00
ganovelli
a2e3e5b725
Removed Similarity from Shot
...
Problem: Shot was using similarity merely to store
rotation and translation.
There was an incompatibility in that Similarity::ToMatrix
gives scale*rotation*translation while in Shot
the translation stores the viewpoint and the rotation the orientation of the Shot.
In this version, a small class ReferenceFrame was done to play the role of similarity and MultMatrix and MultSimilarity functions were added to transform the frame by multiplying it for a Matrix44 (or applying a similarity).
NOTE: the file export_ply.ply and import_ply.h must also be updated.
-- only compiled with .net ---
2008-09-26 17:07:32 +00:00
Federico Ponchio
e5258c6aa3
Attempting to make similarity compatible with both quaternions and matrix44
2008-09-26 15:37:53 +00:00
Paolo Cignoni
f3bddee157
gcc compiling issues (again using template keyword to disambiguate templated functions in templated classes)
2008-09-25 16:10:47 +00:00
ganovelli
a097ef4df9
automatic rough alignment by using 4pcs (4-points congruent sets for Robust pairwise surface registration, Mitra et al. SIGGREAPH 08). First working draft
2008-09-24 16:17:33 +00:00
ganovelli
41bc27e33e
Changed the type of query type. Made it dependend on distance functor
2008-09-24 09:28:53 +00:00
ganovelli
68d900ec7e
changes to compile previous commit with gcc
2008-09-24 09:15:38 +00:00
ganovelli
f7da79d507
Add template parameter to PointDistanceFunctor
2008-09-24 08:56:06 +00:00
ganovelli
6a649ee257
changes to comply the templatization of distance functor on the query type
2008-09-24 08:45:31 +00:00
ganovelli
a952bb1801
DistanceFunctor templated on the type of the query
...
Added PointNormalDistanceFunctor
2008-09-24 08:42:17 +00:00
ganovelli
f6da3d936d
DistanceFunctor templated on the type of the query
2008-09-24 08:41:04 +00:00
ganovelli
d52199f64c
DistanceFunctor templated on the type of the query
...
Added GetClosestVertexNormal which uses Vertex Position and Normal (see PointNormalDistanceFunctor)
2008-09-24 08:37:42 +00:00
ganovelli
3d8400f86e
added a missing templatization od Point3 in Decompose (thanks Oscar Barney)
2008-09-22 13:49:15 +00:00
ganovelli
efd69c8291
qualifier Camera<S>:: removed in inline definition (thanks Oscar Barney)
2008-09-22 13:42:49 +00:00
ganovelli
b2960231ca
corrected bug on PointBase class (thanks Oscar Barney)
2008-09-22 13:40:53 +00:00
ganovelli
889b2ddaa3
chamged " to < in the #include
2008-09-22 09:35:01 +00:00
ganovelli
f2ed76753c
added inclusion of functional
2008-09-22 09:10:58 +00:00
Paolo Cignoni
7473170272
Improved robustness of FF adj from texture coords adjacency.
...
Now faces with degenerated tex coords are more correctly managed.
2008-09-15 10:08:41 +00:00
ganovelli
4971b69b13
corrected wrong constant in Covariance (thanks F.Ponchio)
...
and minor calculation simplifications
2008-09-10 16:18:32 +00:00
granzuglia
b9ce07204e
Minor changes according to new Point<N,S> definition.
2008-09-10 14:06:13 +00:00
granzuglia
728a9020c4
The class PointBase has been renamed as Point.
...
An empty class PointBase has been added for backward compatibility.
Mathematical operation (+,+=,*,etc) in class Point<N,S> has been implemented.
2008-09-10 14:04:09 +00:00
Paolo Cignoni
e8c7472dca
Corrected name of template type S in UndistortedToDistorted() to avoid the shadowing between S as type and S as variable name.
2008-09-09 17:41:33 +00:00
matteodelle
c94dbdfdaf
2008-09-09 09:22:55 +00:00
matteodelle
0c2491e1b4
new functions to handle distortion: should not affect previous stuff. tested but still error prone...
2008-09-09 09:20:48 +00:00
Paolo Cignoni
e7c9656219
Corrected the ImportLocal function for most of the optional classess. Previous version did not check for the availability of the optional component before trying to import it.
2008-08-28 07:19:04 +00:00
Federico Ponchio
12d5a0e322
Removed compile warning by initializing imax to 0 in Decompose().
2008-08-27 14:33:20 +00:00
Federico Ponchio
696941893d
Translated some italian comments... many more to translate.
2008-08-25 12:33:06 +00:00
Paolo Cignoni
201313a5de
Changed the name of the pointer to edge Ep into the more standard VEp (like vertex plus and the other vertex to simplex adjacencies VFp and VTp)
2008-08-20 20:35:29 +00:00
Paolo Cignoni
559161beda
Changed the name of the pointer to edge Ep into the more standard VEp (like vertex plus and the other vertex to simplex adjacencies VFp and VTp)
2008-08-20 20:34:01 +00:00
ganovelli
a00da7b3f3
minor type changes to compile with gcc
...
removed debug include to export_ply.h
2008-08-19 11:09:52 +00:00
ganovelli
1185e2ab96
minor type changes to compile with gcc
2008-08-19 11:03:39 +00:00
ganovelli
6bda668af8
missing include added
2008-08-19 10:22:31 +00:00
ganovelli
3cb29c805b
changed template from vcg::Triangle to generic class to allow to pass a vcg::FaceSimpX (recall: the disambiguation was done in the function name exactly for this reason)
2008-08-19 10:21:01 +00:00
ganovelli
3c69c98cd8
some clean up PrincipalDirections (not working well)
...
added PrincipalDirectionsPCA
added VertexCurvature that takes a mesh (the name has to be changed)
2008-08-19 10:15:32 +00:00
ganovelli
4e81e65145
added Covariance to to compute the covariance of a generic mesh (without the use of divergence theorem)
2008-08-19 09:43:24 +00:00
ganovelli
1ac5c66e78
added IntersectionBallMesh
...
added some to the functions
2008-08-19 09:40:52 +00:00
ganovelli
4ac273db73
corrected bug in the number of added vertices
2008-08-19 09:09:44 +00:00
Paolo Cignoni
5843045302
Added missing VEAdj (adjacency vertex-edge used in EdgeMesh)
2008-08-17 20:29:23 +00:00
ganovelli
7a03d966d3
corrected small bug in FaceSimilar
2008-08-14 14:19:29 +00:00
Paolo Cignoni
19b903e34b
added a basic Function computing the intersection between a trimesh and a plane that does not require a spatial search structure (useful if you want to make a small number of slices)
2008-08-14 10:04:01 +00:00
Paolo Cignoni
7c66288207
changed a RotateRad to the new SetRotateRad
2008-08-14 10:02:07 +00:00
ganovelli
3462f6a8c2
changed from Rotate (in degrees) to SetRotateRad and SetRotateDeg (the same as in Matrix44.h)
...
Added return type to the functions SetXXX
2008-08-12 17:31:11 +00:00
Paolo Cignoni
eb307140bb
Renamed (and refactored to use Stat::MinMax function) method for ramp-coloring a mesh according to its Quality from UpdateColor::VertexQuality to UpdateColor::VertexQualityRamp.
...
Added UpdateColor::VertexQualityGray.
2008-08-12 08:02:53 +00:00
Paolo Cignoni
9e214da6ff
Re-inserted the return statement in the Invert() function that was erroneously removed with the previous commit.
2008-08-11 12:56:37 +00:00
Paolo Cignoni
65320e40a7
Added a clarifying comment on the Invert versus Inverse issue
2008-08-11 08:04:19 +00:00
ganovelli
1e94f7cf46
Add covariance matrix of a set of points
2008-08-07 18:33:23 +00:00
ganovelli
82d9dec26a
aadded this-> to + operator to compile with .net
2008-08-07 16:22:27 +00:00
ganovelli
8ad902095a
removed ImportVertex for ImportLocal
2008-08-07 16:20:01 +00:00
ganovelli
085e19d121
ImportVertex removed (use ImportLocal), ImportFace cleaned up
...
Bug in version of Append for selected faces removed
2008-08-07 16:19:31 +00:00
ganovelli
96e89673ec
corrected bug in ImportLocal of N()
2008-08-07 16:16:06 +00:00
ganovelli
b284013486
replaced "=" with Import(..) in ImportLocal of P().
...
Note: this means that ImportLocal converts the type of vertex position.
2008-08-07 16:14:45 +00:00
ganovelli
523634a27b
added const C(), corrected bug in ImportLocal of WT
2008-08-07 16:11:59 +00:00
Paolo Cignoni
dde42be7ea
Added new line at the end of file
2008-08-04 15:55:53 +00:00
Paolo Cignoni
e4e5507757
Added missing includes
2008-08-04 15:38:10 +00:00
ganovelli
cbb547cdf0
uncommented GetInSphereFace (compiled with gcc 4.2.3 and .net 2005)
2008-08-04 15:27:58 +00:00
ganovelli
86816cc60f
added few missing template type
2008-08-04 11:03:48 +00:00
ganovelli
d35117d9c2
added precompiler check if FABS macro is already defined
2008-08-04 10:54:34 +00:00
ganovelli
57c0fc8238
added inclusion of point3.h, removed useless namespace in InterpolationParameters
2008-08-04 10:53:08 +00:00
ganovelli
08cdd7b3aa
added a version of CreateTight which takes a std::vector
2008-08-04 10:50:53 +00:00
ganovelli
e17c0de7e8
made the function Name of Color and Quality a public member
2008-08-04 10:47:53 +00:00
ganovelli
3712ddfd50
- Change to avoid dangerous iterators decrement in RayITerator: reverse iterator used (same as in ClosestIterator)
...
-removed some old commented code
2008-07-29 16:05:29 +00:00
ganovelli
1a9220ce98
behaviour change: AddFaces and AddVertices return the vert.end() and face.end() if called with n==0.
...
Added AddVertices with local pointers to VertexPointer to update
2008-07-29 13:20:44 +00:00
Paolo Cignoni
2dc0c1e1dc
Fixed compilation bug under Visual Studio 2005
2008-07-29 13:01:10 +00:00
Paolo Cignoni
33dd499605
Added FaceColorLaplacian function to smooth color among faces
2008-07-28 08:20:22 +00:00
Paolo Cignoni
d89a3da4ea
commented
2008-07-24 09:53:18 +00:00
Paolo Cignoni
c46f5f2435
removed a version of the ComputeRigidMatchMatrix that take in input a weight vector. User should use ComputeWeightRigidMatchMatrix directly
2008-07-23 22:50:15 +00:00
Paolo Cignoni
f61a69c94f
in "ComputeRigidMatchMatrix(std::vector<ScalarType> weights,Matrix44x &res,std::vector<Point3x> &Pfix,std::vector<Point3x> &Pmov)" I changed:
...
Quaterniond qtmp; ----->to------> Quaternionx qtmp;
Point3d tr; ----->to------> Point3x tr;
2008-07-23 17:30:30 +00:00
Paolo Cignoni
6a4631b94b
1) in "ComputeWeightedRigidMatchMatrix" I changed:
...
std::vector<double> weights ----->to------> std::vector<ScalarType> weights
tmp.Trasp(); ----->to------> tmp.Transpose();
QQ.Zero(); ----->to------> QQ.SetZero();
RM.Zero(); ----->to------> RM.SetZero();
ccm.Trasp(); ----->to------> ccm.Transpose();
QQ.Jacobi(d,v,nrot); ----->to------> Jacobi(QQ,d,v,nrot);
q.RotMatrix(Rot); ----->to------> q.ToMatrix(Rot);
tr= (bfix - Rot.Apply(bmov)); ----->to------> tr= (bfix - Rot *bmov);
Trn.Translate(tr); ----->to------> Trn.SetTranslate(tr);
2) in "ComputeRigidMatchMatrix" I changed:
return ComputeRigidMatchMatrix(res,Pfix,Pmov,qtmp,tr); ----->to------> return ComputeWeightedRigidMatchMatrix(res,Pfix,Pmov,weights,qtmp,tr);
2008-07-23 17:19:51 +00:00
Paolo Cignoni
a880db7489
modified white balance filter to use a custom color to correct white.
2008-07-23 15:29:14 +00:00
Federico Ponchio
825483d177
Rationalized ToMatrix and FromMatrix (and improved algorithm).
2008-07-21 13:38:55 +00:00
Federico Ponchio
75ee76b233
PlaneFitting returns the eigenvalues instead of true now.
2008-07-21 08:34:31 +00:00
Paolo Cignoni
f614f1b5ac
append should append the texture names too and update the texture index accordingly
2008-07-20 21:20:49 +00:00
Paolo Cignoni
8f44e94747
Added missing includes
2008-07-20 14:34:26 +00:00
Paolo Cignoni
19bb932a8f
Fixed a bug on white balance. now it works fine.
2008-07-18 13:07:10 +00:00
Paolo Cignoni
4842e38c94
Added White balance filter.
...
Terminology of the desaturation filter has been changed to match the gimp's one.
2008-07-17 21:46:48 +00:00
Paolo Cignoni
f5afb40d66
added a desaturation method based on Luminance, and relative functions.
2008-07-17 20:11:13 +00:00
Paolo Cignoni
e19635f285
Modified EQ filter to allows working on RGB channels, separated channels, and lightness. It works correctly, but the processing seems to be a different one respect to Gimp (almost when working on RGB). Memory usage can be decreased...
2008-07-17 14:51:20 +00:00
Paolo Cignoni
ed2a6ce2f8
Added Desaturation filter and relative functions.
...
An ENUM for Desaturation methods has been added too.
Added EQ filter and relative functions. It works just on lighness right now. Comments still to be written. work in progress.
2008-07-17 10:07:19 +00:00
Paolo Cignoni
5082a0cb03
Corrected a very small bug in the finalize of the quadric simplification, (RW flags were not correctly restored at the end of the simplification)
2008-07-17 06:52:56 +00:00
Paolo Cignoni
b9263267ec
Added color levels filter. Some bug fixed.
2008-07-15 22:29:38 +00:00
Paolo Cignoni
38323a3c48
disambiguated a pow() call
2008-07-15 10:40:10 +00:00
Paolo Cignoni
437d258a22
Added (from an idea of Fabio Ganovelli) the possibility of adding face-quality driving quadrics. For each face, three quadric perpendicular to the face plane and passing through the edges are added (just like for borders, but with a much lower weight). In case of very planar surface these quadrics try to keep the original shapes of triangles, preferring small edge collapse. Without this in planar zones collapse order could be random.
2008-07-15 07:15:18 +00:00
Paolo Cignoni
2472215e8d
added VertexCoordPlanarLaplacian that moves only the vertices that does not change the orientation of the incident faces. Very useful for creating good meshing of CAD models.
2008-07-15 07:10:31 +00:00
Paolo Cignoni
7053bdabf0
removed harmless warnings
2008-07-15 06:57:25 +00:00
Federico Ponchio
89973a1a14
Extrinsics in Shot use Matrix44 not Quaternion. therefore ToMatrix was correct.
...
Rolling back.... sigh.
2008-07-14 13:42:22 +00:00
Federico Ponchio
844be84004
GetCol3 -> GetColumn3 (this part needs to be tested!)
2008-07-14 13:28:27 +00:00
Paolo Cignoni
a20902efd8
VERY IMPORTANT CHANGE - Could break the compilation of a lot of code around.
...
SetRotate of matrix44 has gone. Now only the explicit version SetRotateDeg and SetRotateRad are available. It was too error prone having something with the OpenGL syntax but using radiant instead the OpenGL degrees
2008-07-13 05:37:00 +00:00
Paolo Cignoni
4efd5c21f5
fixed gamma correction
2008-07-11 10:17:09 +00:00
Paolo Cignoni
c0f5310cde
Added functions to perform gamma correction.
...
Parameters type changed all to float instead of int,
to achieve a better precision in computations.
2008-07-10 22:11:56 +00:00
Paolo Cignoni
b626643efb
Re-factored the Heap-Simplex ratio parameter. Now it is something that should be asked to the localmodification class.
2008-07-10 09:44:09 +00:00
Paolo Cignoni
6be78dcf70
Added color processing functions.
...
Some changes still to be performed.
2008-07-09 22:25:31 +00:00
Paolo Cignoni
9debed15de
Added Brighting function that increase/decrease the brightnes of the vertex colors
2008-07-09 15:19:06 +00:00
Paolo Cignoni
4555f74ee3
added operator + between color with clamped specialization for unsigned chars
2008-07-09 15:18:08 +00:00
Paolo Cignoni
c3735f3e5d
Added a small hack for the case of non-simmertric collapses where the average number of heap elements is almost the double of the symmetric case and therefore you should avoid too frequent heap garbage collections.
2008-07-09 10:48:19 +00:00
Paolo Cignoni
1407af2537
removed harmless warnings
2008-07-09 10:31:55 +00:00
Nico Pietroni
72ce36f55c
converted functions into static
2008-07-08 14:49:08 +00:00
Paolo Cignoni
d83de7eef4
Small modifications to compile with gcc >4.3 (thanks to Carlo Casta!)
2008-07-05 23:35:06 +00:00
Paolo Cignoni
9c314b7f2f
Added support for callback in Laplacian and Taubin;
...
improved comments and removed a bug from the Taubin smoothing
2008-07-05 05:49:57 +00:00
Paolo Cignoni
a8becdc8f1
refactored laplacian smoothing and added taubin smoothing
2008-07-04 00:32:48 +00:00
Paolo Cignoni
3af17fab9a
added initializer and passed the init value as const reference
2008-07-04 00:31:54 +00:00
Paolo Cignoni
a6f9f33a62
removed references to the meshlab code (qdebug and leaked mesh types)
2008-07-03 21:39:37 +00:00
Nico Pietroni
38c1cc7aaf
changed epsilon value on InterpolationParameters function
2008-07-03 10:22:37 +00:00
Nico Pietroni
b3c2645005
changed line 215 for compilation problems in case of class extension (just semantic)
2008-07-03 10:21:17 +00:00
Nico Pietroni
1a2be8bdfa
changed line 268 for compilation problems in case of class extension (just semantic)
2008-07-03 10:20:12 +00:00
Paolo Cignoni
bafcd1768e
remove harmless warnings
2008-07-02 13:26:25 +00:00
Paolo Cignoni
711c985689
update to the new single template BasicGrid
2008-07-01 12:37:27 +00:00
Paolo Cignoni
8314b1759a
Heavily restructured (an almost complete rewrite) of the class that convert a mesh to a distance field and run marching cubes on it.
2008-07-01 09:37:31 +00:00
Paolo Cignoni
4e6ff1e97a
removed harmless warnings
2008-07-01 09:34:43 +00:00
Paolo Cignoni
fa2c3fa060
updated the spatial indexing class to the new basicgrid class that has only one template parameter
2008-07-01 09:33:47 +00:00
Paolo Cignoni
4e227776f3
Removed one useless template parameter from the BasicGrid class and added a couple of useful accessory functions
2008-07-01 09:32:48 +00:00
Paolo Cignoni
445cf3bec0
removed harmless warnings
2008-06-30 15:00:47 +00:00
Paolo Cignoni
d3debc41e4
Changed the SetFF IsFF, ClearFF flag functions to the new names SetF IsF, ClearF
2008-06-30 09:58:43 +00:00
Federico Ponchio
a4a0d6acf3
last_seed++ shodl have been ++last_seed
2008-06-30 08:46:06 +00:00
Paolo Cignoni
3c81fe2f0e
Removed a m.cm leaked from meshlab here.
...
Thanks to Alain Boyer for the kind bug submission!
2008-06-29 22:56:08 +00:00
Paolo Cignoni
700b8cd26e
Removed annoying unsigned vs signed warnings.
...
Thanks to Alain Boyer for the kind bug submission!
2008-06-29 22:44:44 +00:00
Paolo Cignoni
7da7c0128e
Added the WedgeTexRemoveNull function. Currently texture coords are kept for ALL the triangles of a mesh. The texture id is stored with each face.
...
if a given face should not have tex coord it has the default -1 value for texture ID. This function will add an new fake texture, add that to the list of textures and change all the -1 id to that value.
2008-06-29 07:47:35 +00:00
Paolo Cignoni
674096eb00
added MultiFaceRandom to random color polygonal faces and improved vertexcolor border (now mixed vertexes have a different color)
2008-06-26 08:39:28 +00:00
Paolo Cignoni
0c68c95685
added function IsF()/SetF()/ClearF() to check if a given side of the face is a feature/internal edge; are used by some importer to mark internal edges of polygonal faces that have been triangulated
2008-06-26 08:36:28 +00:00
Paolo Cignoni
616b3fedc5
Added the class oriented bounding box inherited from box3.h
2008-06-23 17:28:30 +00:00
ganovelli
1c8f9ed436
corrected: DumET DumFt and DumTT to DumClass (see derivation_chain.h)
2008-06-23 17:10:48 +00:00
ganovelli
20610a1915
corrected: DumET DumFt and DumTT to DumClass (see derivation_chain.h)
2008-06-23 17:06:28 +00:00
ganovelli
d70efb4573
added. Derivation_chain.h contains the inheritance mechanism used to define the (vertex and face) component
2008-06-23 16:30:17 +00:00
ganovelli
22aa059de2
factorized, see vcg/container/derivation_chain.h
2008-06-23 14:27:44 +00:00
ganovelli
d35e8ba0c4
factorized, see vcg/container/derivation_chain.h
2008-06-23 14:25:39 +00:00
ganovelli
c7f76ab84b
factorized, see vcg/container/derivation_chain.h
2008-06-23 14:22:32 +00:00
ganovelli
3d21fcba1d
removed dependency on qt
2008-06-23 14:20:52 +00:00
ganovelli
006b7df1b8
added type Attribute
2008-06-23 14:19:56 +00:00
ganovelli
db1c99cdf9
added PerMeshAttribute
2008-06-23 14:18:13 +00:00
Paolo Cignoni
86c880176d
Completed texture sampling method. now you can generate all the texels of a mesh with a uv mapping.
2008-06-20 23:33:24 +00:00
Paolo Cignoni
79786de3cc
Almost completed the Sampling Classes now all the classical methods are in. Added a TrivialSampler class to better illustrate the interface of the sampler object.
2008-06-20 15:11:30 +00:00
Nico Pietroni
26e1c14de8
correct version of InterpolationParameters
2008-06-20 15:03:27 +00:00
Paolo Cignoni
d95f6ee798
Added a constructor from point4 of the same type to allow the use of Point4 operator; e.g. col1 = col2 + col3
...
Added Clamp operator to get rid of out of 0..1 range values for floats
2008-06-17 23:08:53 +00:00
Paolo Cignoni
53ac17e6bb
Corrected bug in the Laplacian on multiple iteration (missing re-init of temporary data)
...
Completed the scale dependent laplacian
2008-06-17 23:05:25 +00:00
Paolo Cignoni
3779f19eee
Corrected nasty bug in the newest version of the point-face distance, now the two versions are quite coherent
2008-06-13 06:03:27 +00:00
Paolo Cignoni
2ff77479af
added function to compute the FaceProjection flags used in point-face distance
2008-06-13 05:44:35 +00:00
Massimiliano Corsini
1059b3d24d
add missing include
2008-06-05 14:12:40 +00:00
Paolo Cignoni
a29f21fa59
added vertexweighted sampling
2008-06-04 13:29:04 +00:00
Paolo Cignoni
7f4d6cbd76
Added a version of the point-face distance function that does NOT require the precomputed edgeplane additional data.
2008-06-04 13:27:10 +00:00
Paolo Cignoni
ae26b6103d
Deleted hopefully the last trash files that were incorrectly added by mistake by Giuseppe Turini (who had svn access removed). PLEASE TAKE A BIT OF CARE BEFORE ISSUING A RANDOM COMMIT.
2008-06-04 12:53:29 +00:00
Paolo Cignoni
1f2b207bf2
Deleted all the rest of the orrible trash directories that were incorrectly added by mistake by Giuseppe Turini (who had svn access removed). PLEASE TAKE A BIT OF CARE BEFORE ISSUING A RANDOM COMMIT.
2008-06-04 12:48:51 +00:00
Paolo Cignoni
2e9f615c7a
2008-06-04 09:27:54 +00:00
Paolo Cignoni
9b324d2f50
added missing license info
2008-05-29 20:54:34 +00:00
Paolo Cignoni
ca47599bd5
Added weighted area sampling
2008-05-29 06:17:09 +00:00
Paolo Cignoni
8a6dbded39
Corrected wrong license information in the header
2008-05-28 23:29:23 +00:00
granzuglia
2d281abc5d
fixed doxygen comments according to the new vcg's doxygen comments style (please look at doxygen-comments-style.txt in the vcgrootfolder/docs)
2008-05-28 13:28:52 +00:00
granzuglia
f0373b8ebb
fixed doxygen comments according to the new vcg's doxygen comments style (please look at doxygen-comments-style.txt in the vcgrootfolder/docs)
2008-05-28 13:28:09 +00:00
Paolo Cignoni
45ed8cb000
Capital f in Factorial
2008-05-28 08:59:40 +00:00
Paolo Cignoni
a152d0e208
First release
2008-05-28 08:55:04 +00:00
Paolo Cignoni
0a0436a13c
Removed $Log$ macro
2008-05-28 08:54:33 +00:00
Paolo Cignoni
4ee18ed103
First release
2008-05-28 08:53:30 +00:00
Paolo Cignoni
2caf6034f3
Added SQRT_TWO
2008-05-28 08:51:32 +00:00
Paolo Cignoni
89bdafdf8c
Other improvements in the ImportLocal. Bug removed (ocf data was imported even if the component was not enabled)
2008-05-28 07:25:20 +00:00
Paolo Cignoni
9657491e07
First Version of the sampling class (useful for generating point set and metro oriented samplings)
2008-05-27 21:38:37 +00:00
Paolo Cignoni
5bc8b01870
Restrutctured a bit the FaceFace computing function in order to allow other function to compute the set of edges (needed in the new point_sampling.h)
2008-05-27 21:37:32 +00:00
Paolo Cignoni
cd7d4b5053
Added ComputeMeshArea
2008-05-27 21:35:26 +00:00
Paolo Cignoni
6bb1ea8fcc
Small syntax error in the various ImportLocal
2008-05-27 16:32:58 +00:00
Paolo Cignoni
19c4510a33
Corrected bug in the management of ocf curvature components
2008-05-26 09:52:38 +00:00
Paolo Cignoni
25dd36a704
updated to the new temporary data structure
2008-05-16 17:44:31 +00:00
Paolo Cignoni
634b5c4f63
updated to the new temporary data structure and heavily restructured in a big class with uniform naming
2008-05-16 17:44:06 +00:00
Paolo Cignoni
cf7f2af2a9
missing typename
2008-05-16 10:57:41 +00:00
Paolo Cignoni
399277570b
First release
2008-05-16 10:36:35 +00:00
ganovelli
42430a1318
added virtual destructor
2008-05-16 10:09:26 +00:00
ganovelli
1f929ed8f4
added Trimesh destructor to purge unremoved PerVertex[PerFace]Attribute
2008-05-16 10:07:36 +00:00
ganovelli
69a35e8912
Enable() and Disable() removed. The memory is allocated by the contructor
2008-05-16 08:48:49 +00:00
Paolo Cignoni
92b267eaa8
added VertexFromQualityRange selection
2008-05-16 04:22:52 +00:00
ganovelli
bd7f2980c5
Start() Stop() removed. Allocation on creation, disallocaiton on distruction
2008-05-15 16:35:17 +00:00
ganovelli
666040bcf5
PerVertexAttribute and PerFaceAttribute added to Trimesh
2008-05-15 16:32:27 +00:00
ganovelli
3f765b9a39
Point3f->Coordtype
2008-05-14 10:03:29 +00:00
Paolo Cignoni
01f190a697
renamed vertex quality smoothing
...
added face normal smoothing FF (and added a VF to the previous face normal smoothing)
2008-05-08 23:50:44 +00:00
Paolo Cignoni
6dcc5e8a92
added normalizevertex
2008-05-08 23:48:00 +00:00
Paolo Cignoni
89d09cb1b4
Fix a bug in TopoEdgeFlip::UpdateHeap (walking a around a border vertex).
2008-05-06 12:05:55 +00:00
Paolo Cignoni
629e129152
removed useless code (two functions were repeated)
2008-05-02 11:35:45 +00:00
Paolo Cignoni
4114e0e60a
Added color smoothing, scale dependent laplacian changed a SD_old into SD fujumori, improved comments.
2008-05-02 09:43:25 +00:00
Paolo Cignoni
d6aeeb1f35
first draft
2008-04-30 13:23:47 +00:00
Paolo Cignoni
7f3c44851e
added a missing std::
2008-04-24 05:04:25 +00:00
Paolo Cignoni
2a69681d28
added facegrid method to build just the faces
2008-04-24 04:44:48 +00:00
Paolo Cignoni
35daaec635
VertexCurvature method added.
2008-04-23 16:37:15 +00:00
Paolo Cignoni
c918066b8e
Old and useless comments erased.
2008-04-23 16:34:56 +00:00
Paolo Cignoni
8972bf2ea2
added construct from and to float
2008-04-22 20:44:07 +00:00
Paolo Cignoni
6cceb94d59
normalize normals of current faces instead of using new normals
2008-04-19 05:15:44 +00:00
Paolo Cignoni
1f6ba5e9d5
added PerVertexFromCurrentFaceNormal
...
AreaNormalizeFace NormalizeFace
and shortened PerVertexNormalizedPerFaceNormalized
2008-04-18 17:52:08 +00:00
Paolo Cignoni
aea7147a64
added facenormal smoothing
2008-04-18 17:48:29 +00:00
Paolo Cignoni
820bfdd65e
fast return for compacting functions if no compacting is needed
2008-04-18 17:45:23 +00:00
Paolo Cignoni
108af1cd44
Static method Insert added, to avoid some code repetition.
2008-04-17 18:11:47 +00:00
Paolo Cignoni
f93ee8b17d
Improvement in the delaunay test in TriEdgeFlip::ComputePriority.
2008-04-17 15:02:03 +00:00
Paolo Cignoni
f2e6bfa8eb
added HasPerVertexTexCoord ( mesh )
2008-04-15 10:34:07 +00:00
Paolo Cignoni
aa91e279c3
Added code to avoid swap of tex coords after flip.
2008-04-11 15:01:47 +00:00
Paolo Cignoni
81d6e1df96
Edge index of a pos is now E() and no more I()
2008-04-11 13:25:15 +00:00
Federico Ponchio
9cb9c1dace
Fixed Axis. Due to quaternion changes.
2008-04-11 12:22:32 +00:00
Paolo Cignoni
4b43ac4de8
First working Version
2008-04-11 10:14:43 +00:00
Paolo Cignoni
36361be798
Big change. removed nexte.
...
Now the function is NextFE.
added find border function
2008-04-11 10:13:01 +00:00
Paolo Cignoni
0caa683764
better comments, renamed I() -> E()
...
removed wrong coherent function
2008-04-11 10:11:32 +00:00
Paolo Cignoni
fc917d5080
moved Index function from append to the allocate
2008-04-10 09:18:57 +00:00
Paolo Cignoni
a68e2a247e
New version of PlanarEdgeFlip::UpdateHeap method
2008-04-08 14:06:31 +00:00
Paolo Cignoni
f240adbf08
Fixed bug in PlanarEdgeFlip::UpdateHeap method.
2008-04-08 13:53:15 +00:00
Paolo Cignoni
c5a92fd4c0
added missing std::
2008-04-08 09:51:15 +00:00
Paolo Cignoni
a8e1f18844
Added TopoEdgeFlip class. Some refactoring.
2008-04-07 13:48:35 +00:00
Paolo Cignoni
598cb77fb6
Changed the edge split predicate, now it takes a pos instead of two pnts
...
Added quality interpolation
2008-04-07 12:58:48 +00:00
Nico Pietroni
517108e947
corrected 1 warning in DistancePoint3Box3 function
2008-04-07 10:26:10 +00:00
Nico Pietroni
3edf76179c
added default constructor
2008-04-07 10:24:55 +00:00
Paolo Cignoni
65933201d7
Added texture topology computation
2008-04-07 08:20:26 +00:00
Paolo Cignoni
de92614c18
FaceType::VerteType --> FaceType::VertexType
2008-04-06 08:55:16 +00:00
Paolo Cignoni
8b7d16f29d
added methods for computing various kind of curvatures indicator from the HK values
2008-04-04 13:13:55 +00:00
Paolo Cignoni
9799717a58
minor changes to the topology correctness checks
2008-04-04 10:27:34 +00:00
Paolo Cignoni
46096f6b64
Cleaned up names, now Kg() gives back Gaussian Curvature (k1*k2), while Kh() gives back Mean Curvature 1/2(k1+k2)
2008-04-04 10:26:12 +00:00
Paolo Cignoni
89a4321cdf
added optional mark and cleaned up some nasty type bugs.
2008-04-03 23:15:40 +00:00
Paolo Cignoni
242e5ab82a
compacted two pair of empty components to shorten derivation chains
2008-04-03 23:12:28 +00:00
Paolo Cignoni
0a367b89ba
Increased the derivation chain lenght. God save the compiler patience!
2008-04-03 23:02:17 +00:00
Paolo Cignoni
9a31f6318d
template the reorder functions on the vector types (for ocf)
2008-04-03 22:47:10 +00:00
Paolo Cignoni
9f5f1f9fd3
Added templated parameter in PlanarEdgeFlip to set quality function for triangles.
2008-04-02 19:32:26 +00:00
Paolo Cignoni
82976a2001
f->P(i) instead of f->V(i)->P()
2008-03-29 12:05:59 +00:00
Paolo Cignoni
dfa921ff88
Refactoring in the code written to retrieve four vertexes around the edge to flip
2008-03-26 15:01:44 +00:00
ganovelli
929c3d3276
fixed bugs sign of principal direction and mean curvature value
2008-03-25 11:00:56 +00:00
Paolo Cignoni
3e090a41ff
Added a test to avoid degenerative flip which produce two identical overlapping faces.
...
Little code refactoring.
The planar swap now try to improve the average quality of faces, instead of improving the quality of the worst face.
2008-03-20 15:45:54 +00:00
Paolo Cignoni
c2bec8758d
Added safer way of computing the quality histogram, robust in the case the mesh contains some outlier value (very high or very low) that makes the choice of the beginning interval wrong
2008-03-19 05:24:39 +00:00
Paolo Cignoni
f9538e9f56
added missing include
2008-03-18 14:29:01 +00:00
Paolo Cignoni
d014eae1bc
added color interpolation to butterfly
2008-03-18 10:31:47 +00:00
ganovelli
bd36c63923
added curvature and curvatruredir (compiled .net 2005 and gcc)
2008-03-17 11:39:15 +00:00
ganovelli
b457b0c978
removed printf
2008-03-17 11:36:37 +00:00
ganovelli
8a265c9d32
taubin and desbrun estimates added (-> see vcg/simplex/vertexplus/component.h [component_ocf.h|component_occ.h ]
2008-03-17 11:29:59 +00:00
ganovelli
84adadf680
adding of Curvature, compilation with GCC
2008-03-17 11:25:27 +00:00
Paolo Cignoni
7c37f033e1
Added check on deleted faces in RemoveDegenerateFace
2008-03-11 14:16:40 +00:00
Paolo Cignoni
3d4222b231
Completed the garbage collecting functions CompactVertexVector and CompactFaceVector.
2008-03-11 09:22:07 +00:00
Paolo Cignoni
d78ce1aee8
Minor changes.
2008-03-08 12:43:26 +00:00
Paolo Cignoni
04d00284a5
added missing include limits
2008-03-06 10:45:39 +00:00
Paolo Cignoni
378008bc5e
added HasConsistentPerWedgeTexCoord
2008-03-06 08:37:16 +00:00
Nico Pietroni
8feedff976
correct 1 error on DistancePoint3Box3 (if the point is inside the box return distance to the nearest face instead of zero)
2008-03-05 11:48:08 +00:00
Nico Pietroni
94cb8fca1d
added DistancePoint2Box2
2008-03-05 11:45:36 +00:00
Paolo Cignoni
051c612aba
Heavily refactored the whole structure.
...
Some interfaces have been changed. Be careful.
2008-03-05 11:21:49 +00:00
Paolo Cignoni
2aac6ba625
TriEdgeFlip::ComputPriority now use vcg::CircumCenter(triangle) to compute circumcenter coordinates
2008-03-02 11:00:10 +00:00
Paolo Cignoni
9841c8db32
_pos.V(i) become _pos.F()->V(i); TriEdgeFlip now access members of parent class with this->...
2008-03-01 11:16:30 +00:00
Paolo Cignoni
d14283e619
added maxcount
2008-02-29 12:15:06 +00:00
Paolo Cignoni
97c0bd9ffa
Added FFpi methods and better init of texture coords
2008-02-28 15:41:17 +00:00
Federico Ponchio
82635287c7
Returrned to s*r*t decomposition.
2008-02-24 18:03:03 +00:00
Federico Ponchio
6b3726ef90
Removed a Transpose due to change in quaternions.h ToMatrix
2008-02-22 18:10:39 +00:00
Federico Ponchio
8cc9a085a7
Changed to reflect quaternion toMatrix inversion.
2008-02-22 17:41:48 +00:00
Federico Ponchio
84760ee1f2
Fixed determinantt problem and quaternion problem.
2008-02-22 17:40:27 +00:00
Federico Ponchio
2b19c6c313
ToMatrix returned the inverse matrix. OUCH.
...
This affects trackball and shot.h
Added a const also.
2008-02-22 17:39:59 +00:00
Paolo Cignoni
9703ced0df
Added HasPerVertexColor static function
2008-02-21 17:27:06 +00:00
Federico Ponchio
e4c62fec6d
refixed bug in FromMatrix
2008-02-21 11:34:08 +00:00
Federico Ponchio
a32c8842ef
fixed bug in FromMatrix
2008-02-21 10:57:59 +00:00
Paolo Cignoni
652f27f40f
corrected bug in FromMatrix
2008-02-21 10:30:18 +00:00
Paolo Cignoni
66ee02eb49
__int64 is a MS only type. Added portability defines at the beginning.
2008-02-20 11:31:13 +00:00
Marco Callieri
3716a8c6df
in BestDim(...) changed int -> _int64 to cope with programs with a very large cell number (like plyMC)
2008-02-19 12:43:01 +00:00
ganovelli
0b3e46c93c
added Cylinder(..). the filename platonic.h is lesser and lesser significant...
2008-02-15 14:38:32 +00:00
ganovelli
9751b6fc2c
changes to use vcg::vert::ImportLocal
2008-02-15 12:51:59 +00:00
Paolo Cignoni
73757c1177
added missing include matrix33
2008-02-15 08:08:59 +00:00
Paolo Cignoni
b8f1e0f612
added a missing IsD() check
2008-02-07 10:24:51 +00:00
Paolo Cignoni
28c5847ec9
Other small typos
2008-02-05 20:42:43 +00:00
Paolo Cignoni
a0cd1fc321
A small typo (a T:: instead of TT::)
2008-02-05 10:11:34 +00:00
ganovelli
0b53e968b8
typo in EmptyVertexRef corrected
2008-02-05 09:38:18 +00:00
ganovelli
a39a42d2ca
added ImportLocal which imports all local attributes into vertexplus and faceplus.
...
A local attribute is everything (N(), C(), Q()....) except pointers to other simplices
(i.e. FFAdj, VFAdj, VertexRef) which are set to NULL.
Added some function for const attributes
2008-02-04 21:26:49 +00:00
ganovelli
2dea5562fe
typo corrected
2008-02-04 19:18:44 +00:00
Paolo Cignoni
c6e1940149
Important Change. Now adding a null bbox to a bbox leave it unchanged (instead of trashing it)
2008-02-03 23:50:51 +00:00
Paolo Cignoni
343df1c14c
Important Change. Now GetBBox return a null bbox if called on a deleted face (instead of crashing)
2008-02-03 23:49:42 +00:00
Paolo Cignoni
fcf54790ea
added hasPerWedgeColor and HasPerWedgeNormal
2008-01-28 14:46:03 +00:00
Paolo Cignoni
57069766d4
corrected small bug in multitex coord indexing
2008-01-28 08:48:52 +00:00
Paolo Cignoni
8883301247
added assert when writing on empty data members
2008-01-28 08:42:51 +00:00
Paolo Cignoni
eab6ea2400
added HasPerFaceNormal and HasPerVertexNormal
2008-01-28 08:42:07 +00:00
Paolo Cignoni
58482cfd03
added management of normals
2008-01-28 08:39:56 +00:00
Paolo Cignoni
5e52fd038c
corrected small bug in RemoveDuplicateVertex
2008-01-24 11:52:05 +00:00
ganovelli
b13473bdc7
missing const cVF added
2008-01-19 17:49:05 +00:00
ganovelli
f7e63772a2
include added
2008-01-19 17:43:49 +00:00
ganovelli
7051654171
more appropriate function names, licence updated, comment added
2008-01-12 19:41:46 +00:00
ganovelli
c919dca603
Recompiled from previous out of date version. Still to revise but working
2008-01-12 19:07:05 +00:00
Nico Pietroni
491317ecd5
*** empty log message ***
2008-01-07 10:36:00 +00:00
ganovelli
7ddf584fac
useless matrix multiplication removed
2008-01-03 17:42:03 +00:00
ganovelli
a7e016e1ef
added RandomRotation
2008-01-03 17:40:17 +00:00
Paolo Cignoni
5519491d1f
changed radius from percentage based to absolute and reverted the sign of the default walking
2007-12-18 17:30:04 +00:00
Paolo Cignoni
8b69adbfbd
removed harmless gcc warnings
2007-12-13 17:57:33 +00:00
Paolo Cignoni
1f38a990b5
forgotten required std::
2007-12-11 20:18:55 +00:00
Paolo Cignoni
61f42ea419
added missing include limits
2007-12-11 18:25:31 +00:00
Paolo Cignoni
7d6a210e75
Added the CompactVertexVector garbage collecting function.
2007-12-11 11:36:03 +00:00
Paolo Cignoni
224e50a2bd
Added missing include guards
2007-12-02 10:06:47 +00:00
Paolo Cignoni
d87123b841
disambiguated sqrt call
2007-12-02 07:39:19 +00:00
Federico Ponchio
700ab9112d
Added Mean Ratio metric for triangle quality.
2007-11-26 14:11:38 +00:00
Marco Di Benedetto
da56c33f36
Added missing #include <algorithm>
2007-11-24 20:41:00 +00:00
Paolo Cignoni
200add7664
disambiguated pow call (again)
2007-11-23 17:02:47 +00:00
Paolo Cignoni
5de12ccbf3
disambiguated pow call
2007-11-23 15:42:11 +00:00
ganovelli
743e4f7a9e
compilation with gcc
2007-11-20 09:50:32 +00:00
ganovelli
a5d00b1c71
added missing newline at the end of file
2007-11-20 09:49:53 +00:00
ganovelli
9ff18f557b
missing typename
2007-11-20 09:45:51 +00:00
ganovelli
5c97fd3dc3
added missing include to color4
2007-11-20 09:43:53 +00:00
Federico Ponchio
f0d2300c82
QualityRadii values fixed.
2007-11-19 17:04:05 +00:00
Federico Ponchio
e2dfebc909
Typo (missing comma).
2007-11-18 19:12:54 +00:00
Paolo Cignoni
3f18e449dc
added ComputeSimilarityMatchMatrix
2007-11-17 15:41:42 +00:00
Federico Ponchio
030feec36a
Added qualityRadii: computes inradius /circumradius.
...
(ok the name is ugly...)
2007-11-16 14:22:35 +00:00
ganovelli
79067524eb
added updating of vertex and face normals
2007-11-14 11:56:23 +00:00
ganovelli
c04c5cde70
added draft for sphereofsphres enclosing
2007-11-07 09:37:20 +00:00
Federico Ponchio
3bb9c7cbc6
Addded check for no color in mesh
2007-11-06 16:12:24 +00:00
Paolo Cignoni
b50e3f7760
added selection to the pasodoble smoothing
2007-11-05 23:47:20 +00:00
Paolo Cignoni
c2f8cdac1f
removed past end access in an assert
2007-11-05 23:46:43 +00:00
Paolo Cignoni
573ff87db2
Added a missing IsD() test
2007-10-29 11:32:46 +00:00
Paolo Cignoni
d063cb7493
bug in FaceBorderFromNone corrected (same as in Topology.h) Ganovelli
2007-10-22 14:55:07 +00:00
Paolo Cignoni
6144006bfd
Re-Wrote basic build function
2007-10-19 22:29:36 +00:00
Paolo Cignoni
a45b2e8fa0
Added I() access function for the z member to the pos
2007-10-17 19:46:50 +00:00
Paolo Cignoni
12c8c9f3ff
Added Allocator::DeleteFace and Allocator::DeleteVertex; Now the use of SetD() should be deprecated.
2007-10-16 16:46:53 +00:00
Paolo Cignoni
d3d7f047e4
added missing typenames
2007-10-16 16:45:49 +00:00
Nico Pietroni
71f3accd9c
added Mirror function
2007-10-12 10:02:41 +00:00
Nico Pietroni
00f3907e1b
*** empty log message ***
2007-10-11 08:39:05 +00:00
Federico Ponchio
6c762759ab
Added Circumcenter function.
2007-10-10 15:11:30 +00:00
Massimiliano Corsini
1e6b800880
remove signed/unsigned warning
2007-10-09 12:04:06 +00:00
Federico Ponchio
76721c28d1
Just a clarification comment
2007-09-21 11:34:10 +00:00
Paolo Cignoni
6cee7ca8cd
Overloaded Intersection function to compute trimesh-plane intersection,it return the set of faces that are contained into intersected cells.
2007-09-19 12:16:31 +00:00
Paolo Cignoni
c704229b67
corrected computation of Barycenter
2007-08-20 21:06:29 +00:00
ganovelli
1fee504228
added ScalarType to tetra3
2007-07-31 12:35:42 +00:00
ganovelli
be681204b5
added
2007-07-31 12:31:34 +00:00
Paolo Cignoni
3019fb9177
Added remove degenerate vertex to manage vertex with NAN coords
2007-07-24 07:09:49 +00:00
Paolo Cignoni
68effd0f7a
Added IsNAN
2007-07-24 07:09:17 +00:00
Federico Ponchio
68032b71dd
Added method Gather:
...
Using a cubic voxel of side <radius> (see Set with radius)
allows you to process all pairs of objects within radius distance.
Usefull to compute normals, weighted means etc.
Speedup is about 7x.
2007-07-16 16:59:26 +00:00
Paolo Cignoni
8bfd6c40e0
Splitted initialiazation functions of grid to add flexibility in the creation
2007-07-16 15:13:39 +00:00
Paolo Cignoni
dcd031a38d
added some using keywords and templates
2007-07-16 10:00:14 +00:00
Paolo Cignoni
787cfbe93f
first version, ported from the internal lib to the open one.
2007-07-13 14:23:56 +00:00
Paolo Cignoni
c26a1aa94b
added a static (unefficient!) identity member
2007-07-13 00:01:47 +00:00
Paolo Cignoni
91cbd0047f
added the missing PerVertexNormalizedPerFaceNormalized
2007-07-12 23:11:35 +00:00
Paolo Cignoni
4dd3dbdbfb
added the missing static Construct() member
2007-07-12 06:42:01 +00:00
Paolo Cignoni
854717ecfc
added a missing static to the Construct() member
2007-07-12 06:41:24 +00:00
ganovelli
66c083f919
added return type
2007-07-05 16:32:04 +00:00
Massimiliano Corsini
a522bf6595
add DCM to Euler Angles method (to implement)
2007-07-03 16:07:09 +00:00
Massimiliano Corsini
c99138926d
add DCM to Euler Angles conversion
2007-07-03 16:06:48 +00:00
Massimiliano Corsini
bfbbe58a2a
fix area
2007-07-02 10:01:00 +00:00
Paolo Cignoni
220baf92c7
Corrected gcc compiling issues
2007-07-02 04:25:32 +00:00
Federico Ponchio
54aa4df7c7
Made compatible with ScalarType = double
2007-06-20 09:26:42 +00:00
Federico Ponchio
ec52ffd973
*** empty log message ***
2007-06-15 15:04:43 +00:00
Paolo Cignoni
2ebecdde24
Added method that computes the minimum distance between a segment and a point
2007-06-12 15:40:41 +00:00
Federico Ponchio
acc11c1df4
*** empty log message ***
2007-06-11 15:26:30 +00:00
Federico Ponchio
d8032a9bc0
*** empty log message ***
2007-06-08 14:57:29 +00:00
Paolo Cignoni
279306b9f7
Corrected error in the comment to method IntersectionSphereTriangle
2007-06-08 07:40:40 +00:00
Paolo Cignoni
f25f034dcb
Minor changes.
2007-06-07 15:34:11 +00:00
Paolo Cignoni
9105a551cd
Added IntersectionSphereTriangle
2007-06-07 15:16:39 +00:00
Paolo Cignoni
6f6da43f69
Minor changes in VT Adjacency component.
2007-06-07 10:22:42 +00:00
Paolo Cignoni
7c12dca79d
Minor changes : replaced TVp and TVi calls with VTp and VTi respectively.
2007-06-07 10:20:29 +00:00
Paolo Cignoni
080ec71ca5
Use the barycenter function from triangle3.h instead of
...
the one in face\base.h.
2007-06-06 15:38:57 +00:00
Paolo Cignoni
d26833fac1
Deleted redundant EdgePlane attribute: it is already defined in component_rt
2007-06-06 15:30:00 +00:00
Nico Pietroni
ac2edcede5
compiling error resolved
2007-06-06 14:26:51 +00:00
Paolo Cignoni
ca8780af81
casting (size_t) to (int) to avoid annoying warning
2007-06-06 10:33:36 +00:00
Paolo Cignoni
d399094a16
Add vertex-tetrahedron adjacency component VTAdj.
2007-06-04 15:40:22 +00:00
Paolo Cignoni
2c49236f37
Minor changes in includes.
2007-06-04 14:04:21 +00:00
Paolo Cignoni
90217d66c4
Replaced call to old StarSize method with NumberOfIncidentFaces
2007-06-04 06:45:05 +00:00
Federico Ponchio
511f4053c9
*** empty log message ***
2007-06-01 09:07:23 +00:00
Federico Ponchio
7823c5dba1
FIxed off-by-one error on FaceBorderFromNone.
2007-05-31 15:24:50 +00:00
Paolo Cignoni
e4aa42118a
Small gcc compiling issues
2007-05-31 10:08:16 +00:00
Paolo Cignoni
f354a9f445
Small gcc compiling issues
2007-05-31 09:39:56 +00:00
Federico Ponchio
007d53b7e0
*** empty log message ***
2007-05-30 15:09:58 +00:00
Federico Ponchio
73d01b5408
*** empty log message ***
2007-05-30 14:03:49 +00:00
Paolo Cignoni
1e2f4c1a80
Added IntersectionSegmentSphere
2007-05-29 14:33:29 +00:00
Paolo Cignoni
7b85798562
added bestmachting normal
2007-05-29 14:01:24 +00:00
Paolo Cignoni
38bb37185a
removed useless typename
2007-05-29 14:00:26 +00:00
Federico Ponchio
35d53d62c3
VFi++ -> ++VFi
2007-05-29 00:07:06 +00:00
Paolo Cignoni
1a3ea71ef5
Added Set method which takes a face pointer and a vertex pointer.
2007-05-28 14:09:41 +00:00
Paolo Cignoni
63dccc011a
Moved here from shadevis
2007-05-22 21:21:27 +00:00
Paolo Cignoni
a9ed51c145
Added some comments, and cleared startup a little
2007-05-22 15:25:14 +00:00
Paolo Cignoni
dd6a5552dc
Added VertexClear
2007-05-22 15:19:42 +00:00
Paolo Cignoni
97d7baf66c
Corrected gcc compiling issues
2007-05-21 13:22:40 +00:00
Paolo Cignoni
7ec9437835
Corrected gcc compiling issues
2007-05-21 11:12:10 +00:00
Paolo Cignoni
9b7d4fc359
Initial commit
2007-05-16 15:13:54 +00:00
Paolo Cignoni
1f231b5a3f
Added std:: prefix to swap call
2007-05-16 15:12:40 +00:00
Paolo Cignoni
d207af03d2
Replaced ambigous StarSize method with NumberOfIncidentVertices and NumberOfIncidentFaces
2007-05-16 15:11:32 +00:00
Paolo Cignoni
9fee0bfaaa
Corrected wrong deallocation when octree was destroyed after being never used.
2007-05-10 10:48:49 +00:00
Paolo Cignoni
01277711b6
Corrected InterpolationParameters invocation
2007-05-10 09:31:15 +00:00
ganovelli
1f61ffc1ca
added
2007-05-09 10:31:53 +00:00
ganovelli
b8df8c98db
debug: function Offset called without pars
2007-05-08 18:54:20 +00:00
Nico Pietroni
de99d5c2d9
corrected error on intersection line-circle
2007-05-08 13:49:08 +00:00
Nico Pietroni
43958eea39
added circle-line intersection
2007-05-08 12:11:58 +00:00
Paolo Cignoni
5dd620e4e4
Added enum Dimension;
2007-05-07 07:47:59 +00:00
ganovelli
c2e2b2cd0a
changes to comply "plus" types
2007-05-04 16:44:06 +00:00
ganovelli
45bd389107
changes to comply "plus" types
2007-05-04 16:34:31 +00:00
ganovelli
339f609ece
moved InterpolationParamaters out the class Triangle
2007-05-04 16:33:27 +00:00
ganovelli
ec652a6d99
added cast to avoid warning
2007-05-04 16:17:24 +00:00
ganovelli
a40dad5c08
standardized to component style
2007-05-04 16:16:40 +00:00
ganovelli
0b39edf945
added include to texcoor2
2007-05-04 16:16:04 +00:00
Paolo Cignoni
7a36b9fadd
only use typename when necessary
2007-05-02 13:25:45 +00:00
Nico Pietroni
176c70e7d7
*** empty log message ***
2007-04-24 09:44:48 +00:00
Paolo Cignoni
cde27e321a
Corrected V() operator. It was plainly wrong. Luckly enough it was not very used
2007-04-20 12:40:31 +00:00
Paolo Cignoni
3b9bf21738
Corrected bug in selectionVertexFromFaceStrict
2007-04-20 10:11:51 +00:00
Nico Pietroni
85175e7dc4
added RotationMatrix method to calculate rotation matrix along an axis
2007-04-19 14:30:26 +00:00
Paolo Cignoni
e5d3f05580
commented out non compiling intersectionSpherePlane
2007-04-16 09:08:15 +00:00
Nico Pietroni
058eed2f38
- line 152 changed call intersection to IntersectionPlaneTriangle because changing in function's name
2007-04-10 22:46:57 +00:00
Nico Pietroni
5644153c35
IntersectionPlanePlane first parameter is a const
2007-04-10 22:26:47 +00:00
Nico Pietroni
ac5e8a2143
Added function RotationMatrix
2007-04-07 23:06:47 +00:00
Nico Pietroni
511f80625d
- corrected and renamed distance to point ( function TrianglePointDistance)
2007-04-04 23:23:55 +00:00
Nico Pietroni
99afe015fd
setted to const the parameter passed to function Projection
2007-04-04 23:22:29 +00:00