#include <mesher2d_dual.hpp>
Definition at line 38 of file mesher2d_dual.hpp.
typedef Cell::BoundingBox BoundingBox |
Definition at line 49 of file mesher2d_dual.hpp.
typedef double C |
Definition at line 41 of file mesher2d_dual.hpp.
typedef Output::Edge Edge |
Definition at line 47 of file mesher2d_dual.hpp.
typedef Output::Face Face |
Definition at line 48 of file mesher2d_dual.hpp.
typedef Cell Input |
Definition at line 44 of file mesher2d_dual.hpp.
Definition at line 45 of file mesher2d_dual.hpp.
typedef Output::Point Point |
Definition at line 46 of file mesher2d_dual.hpp.
typedef Cell Shape |
Definition at line 42 of file mesher2d_dual.hpp.
typedef subdivision<C,V,Cell> Subdivisor |
Definition at line 43 of file mesher2d_dual.hpp.
mesher2d_dual | ( | double | e1 = 0.1 , |
|
double | e2 = 0.01 | |||
) | [inline] |
Definition at line 77 of file mesher2d_dual.hpp.
00077 : m_smooth(e1), m_prec(e2) 00078 { 00079 m_output = new Output; 00080 }
~mesher2d_dual | ( | void | ) | [inline] |
Definition at line 82 of file mesher2d_dual.hpp.
void clear | ( | void | ) | [inline] |
Definition at line 108 of file mesher2d_dual.hpp.
double get_precision | ( | void | ) | const [inline] |
Definition at line 60 of file mesher2d_dual.hpp.
double get_smoothness | ( | void | ) | const [inline] |
Definition at line 59 of file mesher2d_dual.hpp.
Input* input | ( | void | ) | [inline] |
Definition at line 62 of file mesher2d_dual.hpp.
Referenced by mesher2d_dual< Cell, V >::run().
Output* output | ( | void | ) | [inline] |
Definition at line 63 of file mesher2d_dual.hpp.
void run | ( | void | ) | [inline] |
Definition at line 86 of file mesher2d_dual.hpp.
References subdivision< C, V, Cell >::get_output(), mesher2d_dual< Cell, V >::input(), mesh3d< C, V >::m_vertices, subdivision< C, V, Cell >::run(), subdivision< C, V, Cell >::set_input(), and Seq< C, R >::size().
00086 { 00087 00088 Subdivisor* sbd = new Subdivisor(m_smooth,m_prec); 00089 sbd->set_input(this->input()); 00090 sbd->run(); 00091 00092 typedef dualize<C,default_2d,Cell> Dualize; 00093 Dualize* dl = new Dualize(sbd->get_output()); 00094 dl->run(); 00095 00096 std::cout<< "\nCells = "<< sbd->get_output()->m_leaves.size()<<"\n"; 00097 std::cout<< "Cells = "<< dl->get_output()->m_vertices.size()<<"\n"; 00098 std::cout<< "Dual edges = "<< dl->get_output()->m_edges.size()/2<<"\n"; 00099 std::cout<< "Dual faces = "<< dl->get_output()->m_faces.size()/4<<"\n"; 00100 00101 typedef polygonizer<C,default_2d,typename Dualize::Output> Polygonizer; 00102 Polygonizer* plg = new Polygonizer(dl->get_output(), m_output); 00103 plg->run(); 00104 00105 }
void set_input | ( | Cell * | cl | ) | [inline] |
Definition at line 54 of file mesher2d_dual.hpp.
void set_precision | ( | double | e | ) | [inline] |
Definition at line 57 of file mesher2d_dual.hpp.
void set_smoothness | ( | double | e | ) | [inline] |
Definition at line 56 of file mesher2d_dual.hpp.