Skip to Content.
Sympa Menu

cgal-discuss - [cgal-discuss] Re: Compilation errors while extending Polyhedron_3

Subject: CGAL users discussion list

List archive

[cgal-discuss] Re: Compilation errors while extending Polyhedron_3


Chronological Thread 
  • From: NMoreau <>
  • To:
  • Subject: [cgal-discuss] Re: Compilation errors while extending Polyhedron_3
  • Date: Mon, 18 Feb 2013 06:16:47 -0800 (PST)

Thank you for your answer!

Actually I'm kind of confused because I didn't made the normal_cycle.h file,
and it is supposed to work without any modification: it has already been
used before and everything worked well, I was asked to do my own Extended
Polyhedron class in order to be able to use normal_cycle.h, that I wasn't
suppose to edit.

However I changed the std::for_each line and there is no more problem here.
I also made a modification in normal_cycle.h for the "typename" error and I
think this will be okay for now.

But I still don't know what to do about the AreaFacetTriangle problem.

I have:

/template <class _Poly>
class Normal_cycle
{
typedef _Poly Polyhedron;

typedef typename Polyhedron::Halfedge_data_structure HDS;
typedef typename Polyhedron::Vertex Vertex;
typedef typename Polyhedron::Halfedge Halfedge;
typedef typename Polyhedron::Facet Facet;

typedef typename Polyhedron::Vertex_handle Vertex_handle;
typedef typename Polyhedron::Halfedge_handle Halfedge_handle;
typedef typename Polyhedron::Facet_handle Facet_handle;

typedef typename Polyhedron::Vertex_iterator Vertex_iterator;
typedef typename Polyhedron::Halfedge_iterator Halfedge_iterator;
typedef typename Polyhedron::Edge_iterator Edge_iterator;
typedef typename Polyhedron::Facet_iterator Facet_iterator;

typedef typename Polyhedron::Halfedge_around_facet_circulator

Halfedge_around_facet_circulator;
typedef typename Polyhedron::Halfedge_around_vertex_circulator

Halfedge_around_vertex_circulator;
typedef typename Polyhedron::Point_3 Point;
typedef typename Polyhedron::FT FT;
typedef typename Polyhedron::Vector Vector;

...

void principal_curvature_per_vert(Vertex pVertex,
double ppMatrix_sum[3][3])
{
...
Halfedge_around_vertex_circulator pHalfedge = pVertex.vertex_begin();
Halfedge_around_vertex_circulator pHalfedgeStart = pHalfedge;
...
area+=AreaFacetTriangle(pHalfedge->facet());
...
}

double AreaFacetTriangle(Facet_handle &f)
{
Halfedge_around_facet_circulator pHalfedge = f->facet_begin();
...
}/

I tried to change the parameters to pointers (/double
AreaFacetTriangle(Facet_handle* f)/)
Then I had no more conversion problem, but:
/normal_cycle.h:345:63: erreur:
‘Normal_cycle<ExtendedPolyhedron&lt;CGAL::Simple_cartesian&lt;float>,
ExtendedItems> >::Facet_handle’ has no member named ‘facet_begin’/



--
View this message in context:
http://cgal-discuss.949826.n4.nabble.com/Compilation-errors-while-extending-Polyhedron-3-tp4656746p4656753.html
Sent from the cgal-discuss mailing list archive at Nabble.com.



Archive powered by MHonArc 2.6.18.

Top of Page