granzuglia
db57bd4e19
added missing public keyword on the static Name function of some ocf components.
2012-07-03 11:12:21 +00:00
ganovelli
0f99bd505e
changes and minor fix to enable input/output with VMI on memory
2012-07-02 14:38:10 +00:00
Nico Pietroni
c1e19b4b55
added assert(0) for cVFi function if does not exixts the component
2012-05-25 13:19:03 +00:00
Paolo Cignoni
37759ffcb0
sligthly better comments
2012-05-06 14:42:04 +00:00
Paolo Cignoni
e532ec9751
Added VVStarVE and VEStarVE functions (to get stars of vertexes and edges when working with edge meshes) to edge topology.
2012-04-27 09:23:01 +00:00
Marco Di Benedetto
1c5f2c2264
added static capability query function for ocf vertex texcoord (VertexVectorHasPerVertexTexCoord()) (not having it caused false positives).
2012-04-10 16:47:15 +00:00
Marco Di Benedetto
a82ac9639f
added constant accessors without the infamous "c" prefix for color (C()) and texcoord (T()).
2012-04-10 15:46:20 +00:00
granzuglia
1548d6415a
added missing functions in Empty:
...
- static bool HasCurvatureDir() { return false; }
- static bool IsCurvatureEnabled(const typename TT::VertexType *) { return false; }
2012-04-06 08:10:32 +00:00
Paolo Cignoni
b0d7d5c52e
removed harmless gcc warnings
2012-04-04 10:05:35 +00:00
Paolo Cignoni
ea701b39b3
Restructured Face component in order to follow the unique emptycore approach that avoid an endless derivation chain in the type definition
2012-04-04 10:04:46 +00:00
Paolo Cignoni
8a631d48c1
Corrected a significant bug in the reflection types for ocf components.
...
Changed the basic reflection mechanism: Instead of having a function templates over all the four containers now we template over Trimesh and we rely on a second function templated on face/vert that wants a vector<face> ; this second function only is eventually overloaded by another function that needs a vector_ocf of faces.
That is Before we had:
- in complex.h
template < class CType0, class CType1, class CType2 , class CType3>
bool HasPerFaceVFAdjacency (const TriMesh < CType0, CType1, CType2, CType3> & /*m*/) {return TriMesh < CType0 , CType1, CType2, CType3>::FaceContainer::value_type::HasVFAdjacency();}
- in the component_ocf.h
template < class VertContainerType, class FaceType, class Container1, class Container2 >
bool HasPerFaceVFAdjacency (const TriMesh < VertContainerType , face::vector_ocf< FaceType >, Container1, Container2 > & m)
{
if(FaceType::HasVFAdjacencyOcf()) return m.face.IsVFAdjacencyEnabled();
else return FaceType::FaceType::HasVFAdjacency();
}
While now we have:
- in complex.h
template < class FaceType > bool FaceVectorHasPerFaceVFAdjacency (const std::vector<FaceType > &) { return FaceType::HasVFAdjacency(); }
template < class TriMeshType> bool HasPerFaceVFAdjacency (const TriMeshType &m) { return tri::FaceVectorHasPerFaceVFAdjacency (m.vert); }
- and in component_ocf.h
template < class FaceType >
bool FaceVectorHasPerFaceVFAdjacency(const face::vector_ocf<FaceType> &fv)
{
if(FaceType::HasVFAdjacencyOcf()) return fv.IsVFAdjacencyEnabled();
else return FaceType::HasVFAdjacency();
}
2012-03-31 01:16:58 +00:00
Nico Pietroni
a53447ab1c
added VFOrderedStarVF_FF function
2012-03-29 16:36:01 +00:00
ganovelli
bbcfbfabc2
added CurvatureDir to Face
2012-03-28 12:39:22 +00:00
ganovelli
749f67c3b6
added curvature direction
2012-03-28 11:56:10 +00:00
Nico Pietroni
4f166fbd95
added Crease Flag access functions
2012-03-16 13:49:04 +00:00
Paolo Cignoni
57bd611892
added assert in the VFIterator to handle uninitialized topology.
2012-03-14 16:02:30 +00:00
Paolo Cignoni
f58551601a
CHANGE to the VERY USED PointDistanceBase, the basic functor used to find the closest point to a face in all the grids.
...
It has a bug that could return a nan in some degnerate case where an almost null face has different vertices but the squared distance between them could be zero.
Now it should handle also these cases.
2012-03-14 15:59:42 +00:00
Paolo Cignoni
159f9d0c0f
added an assertion to block the use of VEiterators in case of unitialized VEadjacency
2012-02-09 17:54:25 +00:00
Paolo Cignoni
c8e202738c
added initialization of VE adjacency components to something that allows to discriminate between the uninitializated adjacency and a vertex with no edges
2012-02-09 17:53:08 +00:00
Paolo Cignoni
c32db09276
Changed the name of the Distance from point to plane
...
from DistancePointPlane
to SignedDistancePointPlane
to underline the fact that it is SIGNED!!!
2012-01-23 06:47:31 +00:00
Paolo Cignoni
7fb6c417da
Missing Include
2012-01-20 07:51:49 +00:00
Paolo Cignoni
f4cf3b9221
Changed the name of the Distance from point to plane
...
from DistancePointPlane
to SignedDistancePointPlane
to underline the fact that it is SIGNED!!!
2012-01-18 11:44:42 +00:00
ganovelli
d256abfaaf
added PointScaledDistanceFunctor
2011-12-21 16:15:32 +00:00
Paolo Cignoni
c8fecaecf3
added Class VEIterator for traversing all the edges over a single vertex
2011-12-12 23:27:26 +00:00
Paolo Cignoni
e8971a7ee7
corrected bug in vertexEdge adjacency relations
2011-12-12 23:26:25 +00:00
Paolo Cignoni
e4b114ea55
Added CheckFlipEdgeNormal that check if a flip modify the involved normals more than a given threshold.
2011-11-30 18:04:53 +00:00
Marco Callieri
7616955d64
changed function call from Distance to DistancePlanePoint
2011-11-21 13:20:45 +00:00
Paolo Cignoni
8f7aab147d
changed BASIC VERSION of the Point-face distance that does not require the EdgePlane Additional data.
...
now it does not require any more the dreaded face bit flags...
2011-11-21 08:56:52 +00:00
Paolo Cignoni
66b2f8539f
removed useless reference return in const int imark()
2011-11-21 07:22:00 +00:00
Paolo Cignoni
dee3de3cc8
Added correct overloading of ImportData for per vertex curvature component.
2011-11-01 18:33:52 +00:00
ganovelli
cedf5fb284
bug fixing:
...
- mixup of nomes Edge and Face on the components.
- possibly use of empty vector in import_obj.h
Thanks to nagaokagetora for showing them
2011-10-25 10:03:10 +00:00
Paolo Cignoni
2fe129645b
Rolled back
2011-10-05 15:04:40 +00:00
ganovelli
68fc8ae865
removed Neigh functions
2011-06-15 13:02:20 +00:00
ganovelli
a815890b15
minimal addition to support neighboorhood relation between vertices
...
and between faces
2011-06-14 16:18:34 +00:00
Marco Di Benedetto
ddb4e72887
moved PointerToAttribute outside mesh definition to avoid type mismatches in append with two different mesh types.
2011-06-14 14:52:38 +00:00
ganovelli
7a86b3fd25
added EmptyVertexRef to the default type
2011-06-01 13:31:28 +00:00
Paolo Cignoni
08e072aeb1
added empty VE reference to the base class of edges
2011-05-31 08:45:41 +00:00
Paolo Cignoni
7f12ed85d7
Cleaned up a bit the duplicated EV and VertexRef relations. Added VE component for keeping the list of edges incident on vertex
2011-05-31 08:33:41 +00:00
Nico Pietroni
052e774fbc
added Quality3 component
2011-05-25 16:28:18 +00:00
Paolo Cignoni
e2d800f89f
Cleaned up a few things for edge topology management. Added isborder for edges...
2011-05-24 09:39:37 +00:00
Paolo Cignoni
2eec2e0d55
missing const in edge adj access
2011-05-10 21:56:15 +00:00
ganovelli
099149e990
corrected bug in EEAdj constructor
2011-04-21 15:51:03 +00:00
granzuglia
451e3ec084
added missing include file
2011-04-13 13:02:41 +00:00
granzuglia
6d1e0fca7d
from f.N() = -> f.N().Import in order to avoid compile errors when the defined mesh-type presents different scalar types for vertex-coordinates and vertex-normal
2011-04-12 08:26:15 +00:00
Paolo Cignoni
214904b312
Ongoing corrections of include paths to comply the new folder arrangement
2011-04-03 22:50:59 +00:00
Paolo Cignoni
2d218e768a
commented some code
2011-03-22 11:53:48 +00:00
Paolo Cignoni
90ee3c4a71
added NumberOfFacesOnEdge function on a pos
2011-03-22 11:52:19 +00:00
Paolo Cignoni
ec825ed246
harmless gcc warnings
2011-02-17 11:39:57 +00:00
ganovelli
d505581af9
bug fixing in vector_ocf::reserve for the case of empty vector
2010-11-11 09:33:35 +00:00
Paolo Cignoni
5a21c7cd76
Removed the ReorderVert function used for permutating the accessory attributes of OCF components. IT should not be used.
2010-11-09 08:27:44 +00:00