|
enum | build_mode_type { BUILD_MODE_INVALID = 0,
BUILD_MODE_BY_VERTICES = 1,
BUILD_MODE_BY_SEGMENTS = 2
} |
| Build mode. More...
|
|
enum | simple_polygon_wires_rendering_option_type { WR_SP_INTERNAL_EDGES = (WR_BASE_LAST << 1),
WR_SP_LAST = (WR_SP_INTERNAL_EDGES),
WR_SP_MASK
} |
| 3D rendering options More...
|
|
typedef std::vector< wall_segment_type > | wall_segment_col_type |
| Type alias for a collection of wall segment data. More...
|
|
enum | faces_mask_type {
FACE_NONE = face_identifier::FACE_BITS_NONE,
FACE_UNIQUE = datatools::bit_mask::bit00,
FACE_UP = FACE_UNIQUE,
FACE_DOWN = datatools::bit_mask::bit01,
FACE_ALL = FACE_UNIQUE
} |
| The up/down identifier of the face. More...
|
|
enum | dimensional_type { DIMENSIONAL_0 = 0,
DIMENSIONAL_1 = 1,
DIMENSIONAL_2 = 2,
DIMENSIONAL_3 = 3
} |
| Known dimensions. More...
|
|
typedef datatools::handle< i_object_3d > | handle_type |
| A handle to a 3D object. More...
|
|
typedef std::map< std::string, object_entry > | handle_dict_type |
| Dictionary of handle of 3D object entries. More...
|
|
enum | ostream_type { OSTREAM_COUT = 1,
OSTREAM_CERR = 2,
OSTREAM_CLOG = 3
} |
| Enumeration for standard output streams. More...
|
|
enum | wires_rendering_option_type {
WR_NONE = 0,
WR_BASE_GRID = datatools::bit_mask::bit00,
WR_BASE_GRID_LOW_DENSITY = (WR_BASE_GRID << 1),
WR_BASE_GRID_HIGH_DENSITY = (WR_BASE_GRID << 2),
WR_BASE_GRID_VERY_HIGH_DENSITY = (WR_BASE_GRID << 3),
WR_BASE_GRID_HUGE_DENSITY = (WR_BASE_GRID << 4),
WR_BASE_LOW_ANGLE_SAMPLING = (WR_BASE_GRID << 5),
WR_BASE_HIGH_ANGLE_SAMPLING = (WR_BASE_GRID << 6),
WR_BASE_VERY_HIGH_ANGLE_SAMPLING = (WR_BASE_GRID << 7),
WR_BASE_HUGE_ANGLE_SAMPLING = (WR_BASE_GRID << 8),
WR_BASE_UNUSED_09 = (WR_BASE_GRID << 9),
WR_BASE_UNUSED_10 = (WR_BASE_GRID << 10),
WR_BASE_UNUSED_11 = (WR_BASE_GRID << 11),
WR_BASE_UNUSED_12 = (WR_BASE_GRID << 12),
WR_BASE_UNUSED_13 = (WR_BASE_GRID << 13),
WR_BASE_BOUNDINGS = (WR_BASE_GRID << 14),
WR_BASE_EXPLODE = (WR_BASE_GRID << 15),
WR_BASE_LAST = (WR_BASE_EXPLODE),
WR_BASE_MASK = datatools::bit_mask::nbits16
} |
| Wires rendering optional flags. More...
|
|
enum | sampling_level_type {
SL_NONE = 0,
SL_LOW = 1,
SL_NORMAL = 2,
SL_HIGH = 3,
SL_VERY_HIGH = 4,
SL_HUGE = 5
} |
| Sampling levels. More...
|
|
|
bool | is_valid () const |
| Check the validity of the simple polygon. More...
|
|
virtual std::string | get_shape_name () const |
| Return the identifier/name of the shape. More...
|
|
void | set_build_mode (build_mode_type) |
| Set the build mode. More...
|
|
build_mode_type | get_build_mode () const |
| Return the build mode. More...
|
|
virtual double | get_perimeter (uint32_t flags_=ALL_PIECES) const |
| Return the perimeter. More...
|
|
virtual double | get_surface (uint32_t flags_=ALL_PIECES) const |
| Return the surface. More...
|
|
unsigned int | get_number_of_vertices () const |
| Return the number of vertices. More...
|
|
const vector_2d & | get_vertex (int) const |
| Return the vertex by index. More...
|
|
bool | is_convex () const |
| Check if the simple polygon is convex. More...
|
|
void | add_vertex (double x_, double y_) |
| Append a vertex to the list of vertexes. More...
|
|
void | add_vertex (const vector_2d &) |
| Append a vertex to the list of vertexes. More...
|
|
void | add_wall_segment (const vector_2d &start_, const vector_2d &stop_, double left_thickness_, double right_thickness_, double start_angle_=0.0, double stop_angle_=std::numeric_limits< double >::quiet_NaN()) |
| Add wall segment. More...
|
|
void | add_wall_segment (const vector_2d &stop_, double left_thickness_, double right_thickness_, double stop_angle_=std::numeric_limits< double >::quiet_NaN()) |
| Add wall segment. More...
|
|
bool | walls_are_terminated () const |
| Check if walls are terminated. More...
|
|
| simple_polygon () |
| Default constructor. More...
|
|
virtual | ~simple_polygon () |
| Destructor. More...
|
|
virtual bool | is_on_surface (const vector_3d &, double tolerance_=GEOMTOOLS_PROPER_TOLERANCE) const |
| Check is a given point belongs to the surface of the 2D shape. More...
|
|
virtual vector_3d | get_normal_on_surface (const vector_3d &position_, bool check_=false, double skin_=GEOMTOOLS_PROPER_TOLERANCE) const |
| Return the normal direction at some position on the 2D shape's path. More...
|
|
bool | is_clockwise () const |
| Check if the polygon is clockwise. More...
|
|
bool | is_anticlockwise () const |
| Check if the polygon is anticlockwise. More...
|
|
virtual bool | find_intercept (const vector_3d &from_, const vector_3d &direction_, face_intercept_info &intercept_, double tolerance_=GEOMTOOLS_PROPER_TOLERANCE) const |
| Find the intercept of a ray with the 2D shape's surfaces. More...
|
|
virtual void | tree_dump (std::ostream &out_=std::clog, const std::string &title_="", const std::string &indent_="", bool inherit_=false) const |
| Smart print. More...
|
|
virtual void | generate_wires_self (wires_type &wires_, uint32_t options_=0) const |
| Generate a sequence of polylines for wires 3D rendering. More...
|
|
virtual unsigned int | compute_vertexes (vertex_col_type &vertexes_) const |
| Build an ordered collection of vertexes. More...
|
|
unsigned int | number_of_triangles () const |
| Return the number of triangles. More...
|
|
const triangle & | get_triangle (int index_) const |
| Return a non mutable reference to one of the inner triangles. More...
|
|
const mygsl::min_max & | get_xrange () const |
| Return the bounding interval on the X axis. More...
|
|
const mygsl::min_max & | get_yrange () const |
| Return the bounding interval on the Y axis. More...
|
|
bool | is_initialized () const |
| Check initialization. More...
|
|
void | initialize (const datatools::properties &, const handle_dict_type *objects_=0) |
| Initialization. More...
|
|
void | reset () |
| Reset. More...
|
|
virtual bool | has_number_of_sides () const |
| Check if the 2D shape knows its number of associated sides. More...
|
|
virtual unsigned int | get_number_of_sides () const |
| Return the number of associated sides. More...
|
|
virtual bool | has_perimeter (uint32_t flags_=ALL_PIECES) const |
| Check if the 2D shape known its perimeter. More...
|
|
virtual bool | has_surface (uint32_t flags_=ALL_PIECES) const |
| Check if the 2D shape surface is defined. More...
|
|
int | get_dimensional () const |
| Return the dimension of the object. More...
|
|
| i_shape_2d () |
| Default constructor. More...
|
|
| i_shape_2d (double tolerance_) |
| Constructor. More...
|
|
| i_shape_2d (double tolerance_, double angular_tolerance_) |
| Constructor. More...
|
|
virtual | ~i_shape_2d () |
| Destructor. More...
|
|
datatools::logger::priority | get_logging_priority () const |
| Return the logging priority threshold. More...
|
|
void | set_logging_priority (datatools::logger::priority) |
| Set the logging priority threshold. More...
|
|
bool | has_wires_drawer () const |
| Check is a wires drawer is available. More...
|
|
void | set_wires_drawer (i_wires_3d_rendering &wires_drawer_) |
| Set a wires drawer. More...
|
|
void | reset_wires_drawer () |
| Reset the wires drawer. More...
|
|
i_wires_3d_rendering & | grab_wires_drawer () |
| Return a wires drawer. More...
|
|
const i_wires_3d_rendering & | get_wires_drawer () const |
| Return a wires drawer. More...
|
|
double | compute_tolerance (double tolerance_) const |
| Return the distance tolerance. More...
|
|
double | compute_angular_tolerance (double angular_tolerance_) const |
| Return the angular tolerance. More...
|
|
double | get_tolerance () const |
| Return the distance tolerance. More...
|
|
void | set_tolerance (double tolerance_) |
| Set the distance tolerance. More...
|
|
double | get_angular_tolerance () const |
| Return the angular tolerance. More...
|
|
void | set_angular_tolerance (double tolerance_) |
| Set the angular tolerance. More...
|
|
virtual bool | is_composite () const |
| Check if the object is composite. More...
|
|
| i_object_3d () |
| Default constructor. More...
|
|
| i_object_3d (double tolerance_) |
| Constructor on length tolerance. More...
|
|
| i_object_3d (double tolerance_, double angular_tolerance_) |
| Constructor on length tolerance. More...
|
|
| i_object_3d (const i_object_3d &) |
| Copy constructor. More...
|
|
i_object_3d & | operator= (const i_object_3d &) |
| Assignment operator. More...
|
|
virtual | ~i_object_3d () |
| Destructor. More...
|
|
void | initialize_simple () |
| Initialize the 3D object. More...
|
|
| i_serializable () |
| Default constructor. More...
|
|
virtual | ~i_serializable () |
| Destructor. More...
|
|
virtual const std::string & | get_serial_tag () const =0 |
| Return the serialization string identifier of the class. More...
|
|
| i_tree_dumpable () |
| Constructor. More...
|
|
virtual | ~i_tree_dumpable () |
| Destructor. More...
|
|
virtual void | print_tree (std::ostream &out_=std::clog, const boost::property_tree::ptree &options_=empty_options()) const |
| Main new interface method for printing. More...
|
|
void | print_tree_json (std::ostream &out_=std::clog, const std::string &json_options_="") const |
| Printing with jsonized options. More...
|
|
void | print_tree_json (std::ostream &out_=std::clog, const char *json_options_=nullptr) const |
| Printing with jsonized options. More...
|
|
void | tree_dump_id (const int out_type_=OSTREAM_CLOG, const std::string &title_="", const std::string &indent_="", const bool inherit_=false) const |
|
void | tree_print_id (const int out_type_=OSTREAM_CLOG, const std::string &title_="") const |
|
void | smart_print_id (const int out_type_=OSTREAM_CLOG, const std::string &title_="", const std::string &indent_="") const |
|
| i_find_intercept () |
| Default constructor. More...
|
|
virtual | ~i_find_intercept () |
| Destructor. More...
|
|
bool | find_intercept_self (const vector_3d &a_from, const vector_3d &a_direction, face_intercept_info &a_intercept, double a_skin=GEOMTOOLS_PROPER_TOLERANCE) const |
|
bool | find_intercept (const vector_3d &a_from, const vector_3d &a_direction, const placement &a_placement, face_intercept_info &a_intercept, double a_skin=GEOMTOOLS_PROPER_TOLERANCE) const |
|
virtual | ~i_wires_3d_rendering () |
| Destructor. More...
|
|
void | generate_wires (wires_type &wires_, const placement &positioning_, uint32_t options_=0) const |
|
void | generate_wires (wires_type &wires_, const geomtools::vector_3d &position_, const geomtools::rotation_3d &rotation_, uint32_t options_=0) const |
|
A simple polygon in the XY plane.