Paolo Cignoni
32333eba24
Huge copyright sanitization of the header files of vcg folder.
2016-06-13 05:29:25 +00:00
Paolo Cignoni
c600772f81
Removed useless 'typename's ignored by visual studio but blamed by clang
2015-10-29 07:52:56 +00:00
Gianpaolo Palma
684fe8d464
Fixed wrong typedefs in the per vertex CurvatureDir component (ScalarType).
...
Added missing typedef in EmptyCore.
Added typedef WedgeColorType and WedgeNormalType.
2015-10-26 12:52:44 +00:00
Paolo Cignoni
b1b3068ba9
Removed the ComputeNormal functions from the face. Almost never used and superfluous
2014-11-12 00:05:45 +00:00
granzuglia
d80980155f
- per face principal directions get functions return now T::CoordType (changes have been validated by Fabio Ganovelli)
2014-08-21 16:23:49 +00:00
Nico Pietroni
938eefd398
2014-06-23 09:47:29 +00:00
Paolo Cignoni
4198a3bd7c
Cleaned up various type name clashes. There were some components that wrongly re-defined <ScalarType> covering the real <ScalarType> of the simplex. Renamed to something less ambiguous (like CurScalarType for denoting the scalar type used inside curvature types).
2014-06-19 08:31:51 +00:00
Paolo Cignoni
eb233462ba
PolygonalMesh Debugging: removed the SetVN from the base class (it is internal)
2014-02-18 10:55:12 +00:00
Paolo Cignoni
df97ef0c36
Added zero initialization to quality component. (and corrected a small bug in the ocf quality component)
2013-09-24 13:55:23 +00:00
Paolo Cignoni
4665f36e40
Improved component documentation. Added IsVFInitialized, VFClear function for VF component. Clarified the difference between null and uninitialized for a VF component.
2013-03-13 14:02:03 +00:00
Nico Pietroni
e5ed268b6a
added function cVFi
2013-02-19 13:56:37 +00:00
Paolo Cignoni
b48b0e568c
added initialization of mark component to zero. So all the element it is sure that are unitialized after the first unmarkall.
2012-12-21 15:33:18 +00:00
Paolo Cignoni
5dcf1aec47
forgot a IsCurvatureDirEnabled()
2012-12-17 15:58:16 +00:00
Paolo Cignoni
08aeee8716
Reorganized ocf face component and added a standard interface for query the availabiilty of data:
...
now we have
static bool FaceType::HasXXX() // statically says if a certain type is present
bool FaceType::IsXXXAvaialble() // NON STATIC (always true for non ocf objects)
So now ImportData works for face ocf component.
2012-12-17 15:02:34 +00:00
Paolo Cignoni
3b466514b3
Added Standard exception throwing functions to claim requirements in the mesh algorithmic functions (Te Deum!)
...
for example, now at the beginning of a function requiring FFAdjacency you should just write:
RequireFFAdjacency(mesh);
No more assert please.
2012-12-06 10:34:08 +00:00
ganovelli
755eb7dda7
added HasNormal to EmptyCore
2012-12-03 17:47:15 +00:00
Paolo Cignoni
5c266a7ccb
HEAVY CHANGE:
...
The vertex and face component (natural and optional) have been cleaned and reordered.
Particular care has been devoted to have common behaviour in the import, const access, and so.
If you get compilation errors probably it is due to the fact that if you really need constant access to a member you have to use the "c" prefixed member (e.g. if you access to normal of a constant vertex you should use the cN() member.
2012-11-15 19:04:08 +00:00
Paolo Cignoni
9f39a0c7cb
added cflags to the emtpycore face component
2012-11-07 15:51:51 +00:00
Paolo Cignoni
1046deb107
Corrected bug recently introduced due to small difference in the signature of the flags functions...
2012-11-07 15:42:14 +00:00
Paolo Cignoni
7bc4277fcd
Cleaned up documentation of components (new doxygroup for them, written something for most of them...).
...
Cleaned Edge components (Added adjacency stuff, implemented the single emptycore)
2012-11-07 01:24:45 +00:00
Paolo Cignoni
d784bebe07
Added guards to avoid useless (and sometime dangerous) inclusion of internal file of the vcglib
2012-10-25 21:29:10 +00:00
Paolo Cignoni
cfda5a3eca
Removed all the UberXXX members from the various components. No more needed since many years. Still there just because we are quite lazy...
2012-10-25 13:07:25 +00:00
Paolo Cignoni
2577210a54
**** SIGNIFICANT CHANGES *****
...
- Cleaned up include order: Now you only need to include <vcg/complex/complex.h> (no more vertex/base.h etc)
- Added official VN() EN() FN() const members for knowing number of vertexes etc...
- Added exceptions (at last!)
Now instead of:
assert(HasPerVertexNormal(m))
you should write:
if(!HasPerFaceNormal(m)) throw vcg::MissingComponentException();
2012-10-04 11:10:25 +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
ganovelli
bbcfbfabc2
added CurvatureDir to Face
2012-03-28 12:39:22 +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
Nico Pietroni
052e774fbc
added Quality3 component
2011-05-25 16:28:18 +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
ec825ed246
harmless gcc warnings
2011-02-17 11:39:57 +00:00
ganovelli
585f0462e8
ImportLocal to ImportData. Adjacencies are no more handle by ImportData, but
...
by speficic functions in append.h (ImportPerxxxAdj(..))
2010-06-16 16:24:26 +00:00
Paolo Cignoni
7bd30d3ca0
fixed wrong pointer type in FHAdj class
2010-04-26 14:54:44 +00:00
ganovelli
261ff53ab1
[introduction of half edges as alternative representation]
...
No modification should be necessary for the existing code.
most relevant changes:
creation of folder:
vcg/connectors
vcg/connectors/hedge.h
vcg/connectors/hedge_component.h
addition to the container of half edges to the trimesh:
HEdgeContainer hedge; // container
int hn; // number of half edges
addition of
vcg/trimesh/update/halfedge_indexed.h
which contains:
- the functions to compute the half edge representation from the indexed and vivecersa
- the functions to add or remove an half edge
2010-03-25 16:52:18 +00:00
Paolo Cignoni
63e21f15cb
Disambiguated the origin of the ScalarType and CoordType in the simplex class. Now it derives from the type specified by the vertexRef component for the faces and from the Coord component for the vertexes. To be sure the ScalarType and CoordTypes are initialized to weird point3<bool> and char just to detect easisly when the wrong types shallow...
2010-03-18 10:02:32 +00:00
Paolo Cignoni
446400f6fc
Now the compactvertex and compactface funtions use the importlocal chain so we are sure that all the meaningful data is correctly copied (otherwise ocf stuff will not be copied) On the other hand when using ImportLocal we do not copy pointer based stuff like adjacency and *vertex pointers* that must be terefore copied by hand...
2010-02-19 00:21:26 +00:00
Marco Di Benedetto
5b076c064e
added public: to WedgeColor* and Color Name().
2009-12-01 17:35:42 +00:00
Paolo Cignoni
70ae4d5c50
made public the self inspection member 'name' of the components. I do not know why it was not public in that case.
2009-11-05 22:35:56 +00:00
Nico Pietroni
ea6553f1d5
corrected funtion NormalAbs::ImportLocal
2009-10-14 14:25:00 +00:00
ganovelli
5c0f228a4d
added few missing Has*Ocf
2009-10-08 15:46:31 +00:00
Marco Di Benedetto
ae09d558f0
added const to method.
2009-09-03 14:48:08 +00:00
Paolo Cignoni
415228fcd4
Added some missing importLocal functions
2009-08-30 13:54:06 +00:00
Marco Di Benedetto
be1d887db6
Renamed LeftT to RightT, added some checks and fixed method name.
2009-08-28 15:26:40 +00:00
Marco Di Benedetto
85ccd7dc0b
removed unused parameter warning.
2009-06-30 19:00:47 +00:00
Marco Di Benedetto
86c2311130
added HasWedgeRealNormal() (temporary name, now does not depend on vertex normal type) and added const in cWC().
2009-06-28 03:16:35 +00:00
Marco Di Benedetto
625497e788
fixed ImportLocal() in WedgeColor: iteration was missing.
2009-06-15 17:26:00 +00:00
Marco Di Benedetto
39156cafe4
completed support for WedgeColor.
2009-06-09 18:23:50 +00:00
Federico Ponchio
e888ef1560
removed some useless consts
2009-06-03 12:23:20 +00:00
Paolo Cignoni
7f2d51828f
added a missing cQ() constant member
2009-04-05 21:53:09 +00:00