#include <CGAL/Min_ellipse_2_adapterH2.h>
| |
Data accessor for homogeneous coordinates.
| |
| |
Point type.
| |
| |
Ellipse type.
|
| |||
|
Note: In this release correct results are only guaranteed if exact arithmetic is used, so this example (using integer arithmetic with possible overflows) is only intended to illustrate the techniques.
#include <CGAL/Min_ellipse_2_adapterH2.h> #include <CGAL/Min_ellipse_2.h> // your own point class (homogeneous) class PtH { // ... public: PtH( int hx, int hy, int hw); int hx( ) const; int hy( ) const; int hw( ) const; // ... }; // the data accessor for PtH class PtH_DA { public: typedef int RT; void get( const PtH& p, int& hx, int& hy, int& hw) const { hx = p.hx(); hy = p.hy(); hw.phw(); } int get_x( const PtH& p) const { return( p.hx()); } int get_y( const PtH& p) const { return( p.hy()); } int get_w( const PtH& p) const { return( p.hw()); } void set( PtH& p, int hx, int hy, int hw) const { p = PtH( hx, hy, hw); } }; // some typedefs typedef CGAL_Min_ellipse_2_adapterH2< PtH, PtH_DA > AdapterH; typedef CGAL_Min_ellipse_2< AdapterH > Min_ellipse; // do something with Min_ellipse Min_ellipse me( /*...*/ );