OpenMesh.Core.Mesh.Traits
- class
DefaultTraits
;
- Macro for defining the vertex attributes. See \ref mesh_type.
Macro for defining the halfedge attributes. See \ref mesh_type.
Macro for defining the edge attributes. See \ref mesh_type.
Macro for defining the face attributes. See \ref mesh_type.
\class
DefaultTraits
Traits.hh
Base class for all traits. All user traits should be derived from
this class. You may enrich all basic items by additional
properties or define one or more of the types \c Point, \c Normal,
\c TexCoord, or \c Color.
See Also:
The Mesh doc section on \ref mesh_type,
Traits.d for a list of macros for traits classes.
- alias
Point
;
- The default coordinate type is OpenMesh.Vec3f.
- alias
Normal
;
- The default normal type is OpenMesh.Vec3f.
- alias
TexCoord1D
;
- The default 1D texture coordinate type is float.
- alias
TexCoord2D
;
- The default 2D texture coordinate type is OpenMesh.Vec2f.
- alias
TexCoord3D
;
- The default 3D texture coordinate type is OpenMesh.Vec3f.
- alias
Color
;
- The default color type is OpenMesh.Vec3uc.
- struct
MergeTraits
(_Traits1,_Traits2);
- TODO:
Currently there isn't a way to extend the traits
The original code inherited from Base but we can't do that
because structs can't inherit. I can't think of a good way to do it
and still maintain the value-type semantics in current D
Helper class to merge two mesh traits.
\internal
With the help of this class it's possible to merge two mesh traits.
Whereby \c Traits1 overrides equally named symbols of \c Traits2.
For your convenience use the provided defines \c OM_Merge_Traits
and \c OM_Merge_Traits_In_Template instead.
See Also:
OM_Merge_Traits, OM_Merge_Traits_In_Template
- template
OM_Merge_Traits
(_S1,_S2,alias _D)
- Macro for merging two traits classes S1 and S2 into one traits class D.
Note that in case of ambiguities class S1 overrides S2, especially
the point/normal/color/texcoord type to be used is taken from S1.Point/
S1.Normal/S1.Color/S1.TexCoord.
- template
OM_Merge_Traits_In_Template
(_S1,_S2,alias _D)
- Macro for merging two traits classes S1 and S2 into one traits class D.
Same as OM_Merge_Traits, but this can be used inside template classes.
|