Fixed: PrevHalfedge is optinal again
This commit is contained in:
@@ -17,6 +17,7 @@
|
|||||||
<b>Core</b>
|
<b>Core</b>
|
||||||
<ul>
|
<ul>
|
||||||
<li>Fixed several warnings</li>
|
<li>Fixed several warnings</li>
|
||||||
|
<li>Make Previous Halfedge Attribute optional again </li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<b>Tools</b>
|
<b>Tools</b>
|
||||||
|
|||||||
@@ -97,6 +97,7 @@ struct ArrayItems
|
|||||||
|
|
||||||
//TODO: should be selected with config.h define
|
//TODO: should be selected with config.h define
|
||||||
typedef Halfedge_with_prev Halfedge;
|
typedef Halfedge_with_prev Halfedge;
|
||||||
|
typedef Halfedge_without_prev HalfedgeNoPrev;
|
||||||
typedef GenProg::Bool2Type<true> HasPrevHalfedge;
|
typedef GenProg::Bool2Type<true> HasPrevHalfedge;
|
||||||
|
|
||||||
//-------------------------------------------------------- internal edge type
|
//-------------------------------------------------------- internal edge type
|
||||||
|
|||||||
@@ -75,10 +75,30 @@ public:
|
|||||||
|
|
||||||
//---------------------------------------------------------------- item types
|
//---------------------------------------------------------------- item types
|
||||||
|
|
||||||
|
enum Attribs {
|
||||||
|
VAttribs = MeshItems::VAttribs,
|
||||||
|
HAttribs = MeshItems::HAttribs,
|
||||||
|
EAttribs = MeshItems::EAttribs,
|
||||||
|
FAttribs = MeshItems::FAttribs
|
||||||
|
};
|
||||||
|
|
||||||
typedef MeshItems MeshItemsT;
|
typedef MeshItems MeshItemsT;
|
||||||
typedef Connectivity ConnectivityT;
|
typedef Connectivity ConnectivityT;
|
||||||
typedef typename Connectivity::Vertex Vertex;
|
typedef typename Connectivity::Vertex Vertex;
|
||||||
typedef typename Connectivity::Halfedge Halfedge;
|
|
||||||
|
//Define Halfedge based on PrevHalfedge.
|
||||||
|
typedef typename GenProg::IF<
|
||||||
|
(bool)(HAttribs & Attributes::PrevHalfedge),
|
||||||
|
typename Connectivity::Halfedge,
|
||||||
|
typename Connectivity::HalfedgeNoPrev
|
||||||
|
>::Result Halfedge;
|
||||||
|
typedef typename GenProg::IF<
|
||||||
|
(bool)(HAttribs & Attributes::PrevHalfedge),
|
||||||
|
GenProg::Bool2Type<true>,
|
||||||
|
GenProg::Bool2Type<false>
|
||||||
|
>::Result HasPrevHalfedge;
|
||||||
|
|
||||||
|
//typedef typename Connectivity::Halfedge Halfedge;
|
||||||
typedef typename Connectivity::Edge Edge;
|
typedef typename Connectivity::Edge Edge;
|
||||||
typedef typename Connectivity::Face Face;
|
typedef typename Connectivity::Face Face;
|
||||||
|
|
||||||
@@ -98,12 +118,6 @@ public:
|
|||||||
|
|
||||||
typedef AttribKernelT<MeshItems,Connectivity> AttribKernel;
|
typedef AttribKernelT<MeshItems,Connectivity> AttribKernel;
|
||||||
|
|
||||||
enum Attribs {
|
|
||||||
VAttribs = MeshItems::VAttribs,
|
|
||||||
HAttribs = MeshItems::HAttribs,
|
|
||||||
EAttribs = MeshItems::EAttribs,
|
|
||||||
FAttribs = MeshItems::FAttribs
|
|
||||||
};
|
|
||||||
|
|
||||||
typedef VPropHandleT<VertexData> DataVPropHandle;
|
typedef VPropHandleT<VertexData> DataVPropHandle;
|
||||||
typedef HPropHandleT<HalfedgeData> DataHPropHandle;
|
typedef HPropHandleT<HalfedgeData> DataHPropHandle;
|
||||||
|
|||||||
Reference in New Issue
Block a user