title: How do I iterate over faces in CGAL
body: <p>I am trying to use CGAL to do some Delaunay triangulation.  I used one of the CGAL samples to compute a triangulation which includes a height field attribute.</p>
  
  <p>The problem I have having is that I have no idea how to get the resulting triangulation.  I figured out how to get the face_iterator, but I don't know what to do from there.  What I'm hoping to get is an index into the point array for each of the 3 points on each triangle.</p>
  
  <p>I'm having trouble wading through all of the nested templates:</p>
  
  <pre><code>#include &lt;CGAL/Exact_predicates_inexact_constructions_kernel.h&gt;
  #include &lt;CGAL/Triangulation_euclidean_traits_xy_3.h&gt;
  #include &lt;CGAL/Delaunay_triangulation_2.h&gt;
  
  typedef CGAL::Exact_predicates_inexact_constructions_kernel K;
  typedef CGAL::Triangulation_euclidean_traits_xy_3&lt;K&gt; Gt;
  typedef CGAL::Delaunay_triangulation_2&lt;Gt&gt; Delaunay;
  typedef K::Point_3 Point;
  
  int main()
  {
      //initialize the points with some trivial data
      std::vector&lt;Point&gt; pts;
      pts.push_back(Point(1., 2., 3.));
      pts.push_back(Point(2., 2., 3.));
      pts.push_back(Point(1., 3., 3.));
      pts.push_back(Point(4., 2., 3.));    
  
      //create a delaunay triangulation
      Delaunay dt;
      dt.insert(pts.begin(), pts.end());
  
      //iterate through the faces
      Delaunay::Finite_faces_iterator it;
      for (it = dt.finite_faces_begin(); it != dt.finite_faces_end(); it++)
      {
          //What do I do here??
      }
  
      return 0;
  }
  </code></pre>