Bayeux
3.4.1
Core Foundation library for SuperNEMO
|
Polycone 3D solid shape. More...
#include <bayeux/geomtools/polycone.h>
Classes | |
struct | frustrum_data |
Data describing one frustrum. More... | |
struct | r_min_max |
Rmin/Rmax doublet. More... | |
Public Types | |
enum | faces_mask_type { FACE_NONE = face_identifier::FACE_BITS_NONE, FACE_INNER_SIDE = datatools::bit_mask::bit00, FACE_OUTER_SIDE = datatools::bit_mask::bit01, FACE_BOTTOM = datatools::bit_mask::bit02, FACE_TOP = datatools::bit_mask::bit03, FACE_START_ANGLE = datatools::bit_mask::bit04, FACE_STOP_ANGLE = datatools::bit_mask::bit05, FACE_ALL } |
Face flags. More... | |
enum | datafile_column_mode { RMIN_RMAX = 0, IGNORE_RMIN = 1, RMIN_AS_RMAX = 2 } |
Format of the datafile for reading Z/Rmin/Rmax data. More... | |
enum | polycone_wires_rendering_option_type { WR_POLYCONE_NO_BOTTOM_FACE = (WR_BASE_LAST << 1), WR_POLYCONE_NO_TOP_FACE = (WR_BASE_LAST << 2), WR_POLYCONE_NO_INNER_FACE = (WR_BASE_LAST << 3), WR_POLYCONE_NO_OUTER_FACE = (WR_BASE_LAST << 4), WR_POLYCONE_NO_START_ANGLE_FACE = (WR_BASE_LAST << 5), WR_POLYCONE_NO_STOP_ANGLE_FACE = (WR_BASE_LAST << 6), WR_POLYCONE_LAST = (WR_POLYCONE_NO_STOP_ANGLE_FACE), WR_POLYCONE_MASK } |
3D rendering options More... | |
typedef std::map< double, r_min_max > | rz_col_type |
Public Types inherited from geomtools::i_object_3d | |
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... | |
Public Types inherited from datatools::i_tree_dumpable | |
enum | ostream_type { OSTREAM_COUT = 1, OSTREAM_CERR = 2, OSTREAM_CLOG = 3 } |
Enumeration for standard output streams. More... | |
Public Types inherited from geomtools::i_wires_3d_rendering | |
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... | |
Public Member Functions | |
bool | is_extruded () const |
Check if the polycone has a hole (Rmin != 0) More... | |
double | get_xmin () const |
Return the X min. More... | |
double | get_xmax () const |
Return the X max. More... | |
double | get_ymin () const |
Return the Y min. More... | |
double | get_ymax () const |
Return the Y max. More... | |
double | get_zmin () const |
Return the Z min. More... | |
double | get_zmax () const |
Return the Z max. More... | |
double | get_z () const |
Return the Z dimension. More... | |
bool | has_partial_angle () const |
Check if the nappe has partial phi angle. More... | |
bool | has_start_angle () const |
Check the start phi angle. More... | |
void | set_start_angle (double) |
Set the start phi angle. More... | |
double | get_start_angle () const |
Return the start phi angle. More... | |
bool | has_delta_angle () const |
Check the delta phi angle. More... | |
void | set_delta_angle (double) |
Set the delta phi angle. More... | |
double | get_delta_angle () const |
Return the delta phi angle. More... | |
unsigned int | number_of_frustra () const |
Return the number of frustra. More... | |
void | get_frustrum_data (size_t i_, frustrum_data &) const |
Compute frustrum data at given index. More... | |
const rz_col_type & | points () const |
Return the dictionary of points. More... | |
polycone () | |
Default constructor. More... | |
virtual | ~polycone () |
Destructor. More... | |
virtual std::string | get_shape_name () const |
Return the identifier/name of the shape. More... | |
bool | is_valid () const |
Check if the solid is valid. More... | |
void | add (double z_, double rmax_, bool compute_=true) |
Add a new point with only Rmax. More... | |
void | add (double z_, double rmin_, double rmax_, bool compute_=true) |
Add a new point with Rmin and Rmax. More... | |
void | initialize () |
Initialize. More... | |
void | initialize (const std::string &filename_) |
Initialize from a file. More... | |
void | initialize (const std::string &filename_, double zmin_=std::numeric_limits< double >::quiet_NaN(), double zmax_=std::numeric_limits< double >::quiet_NaN(), int mode_=RMIN_RMAX) |
virtual void | initialize (const datatools::properties &setup_, const handle_dict_type *=0) |
Main initialization method from a container of configuration parameters. More... | |
virtual void | reset () |
Reset/invalidate the solid. More... | |
bool | has_top_face () const |
Check for a top face. More... | |
bool | has_bottom_face () const |
Check for a bottom face. More... | |
bool | has_inner_face () const |
Check for an inner face. More... | |
bool | has_angle_faces () const |
Check for angle faces. More... | |
void | compute_top_face (disk &top_disk_, placement &) const |
Compute the top face. More... | |
void | compute_bottom_face (disk &bottom_disk_, placement &) const |
Compute the bottom face. More... | |
void | compute_frustrum (right_circular_conical_frustrum &f_, placement &, int index_) const |
Compute frustrum at given index. More... | |
void | compute_inner_face (right_circular_conical_nappe &in_, placement &, int index_) const |
Compute the inner face at given frustrum index. More... | |
void | compute_outer_face (right_circular_conical_nappe &on_, placement &, int index_) const |
Compute the outer face at given frustrum index. More... | |
right_circular_conical_frustrum::ssaf_type | get_start_stop_angle_face_type (int index_) const |
void | compute_start_angle_face (quadrangle &qface_, triangle &tface_, placement &, int index_) const |
Compute the start phi angle face. More... | |
void | compute_stop_angle_face (quadrangle &qface_, triangle &tface_, placement &, int index_) const |
Compute the stop phi angle face. More... | |
void | compute_outer_face (composite_surface &face_, placement &) const |
Compute the outer face. More... | |
void | compute_inner_face (composite_surface &face_, placement &) const |
Compute the inner face. More... | |
void | compute_start_angle_face (composite_surface &face_, placement &) const |
Compute the start angle face. More... | |
void | compute_stop_angle_face (composite_surface &face_, placement &) const |
Compute the stop angle face. More... | |
virtual unsigned int | compute_faces (face_info_collection_type &) const |
Compute informations about the faces of this solid shape. More... | |
void | compute_inner_polycone (polycone &ip_) |
Compute the inner polycone. More... | |
void | compute_outer_polycone (polycone &op_) |
Compute the outer polycone. More... | |
virtual double | get_volume (uint32_t flags_=0) const |
Compute the volume. More... | |
virtual double | get_surface (uint32_t mask_=FACE_ALL) const |
Compute the surface. More... | |
double | get_z_min () const |
Return the min Z. More... | |
double | get_z_max () const |
Return the max Z. More... | |
double | get_r_max () const |
Return the max eadius. More... | |
double | get_parameter (const std::string &flag_) const |
Return a parameter by name. More... | |
virtual bool | is_inside (const vector_3d &, double skin_=GEOMTOOLS_PROPER_TOLERANCE) const |
Check if a point is inside the frustrum. More... | |
virtual bool | is_outside (const vector_3d &, double skin_=GEOMTOOLS_PROPER_TOLERANCE) const |
Check if a point is outside the frustrum. More... | |
virtual face_identifier | on_surface (const vector_3d &, const face_identifier &a_surface_mask=face_identifier::face_bits_any(), double a_skin=GEOMTOOLS_PROPER_TOLERANCE) const |
Return the surface bit a point belongs to. More... | |
virtual vector_3d | get_normal_on_surface (const vector_3d &position_, const face_identifier &) const |
Compute the normal to the surface of the furstrum. More... | |
virtual bool | find_intercept (const vector_3d &from_, const vector_3d &direction_, face_intercept_info &intercept_, double skin_=GEOMTOOLS_PROPER_TOLERANCE) const |
Find the intercept point with a face of the frustrum. 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 list of polylines representing the contour of the shape (for display clients) More... | |
Public Member Functions inherited from geomtools::i_shape_3d | |
bool | is_native_stackable () const |
const stackable_data & | get_stackable_data () const |
Return the enforced stackable data associated to the shape. More... | |
bool | has_stackable_data () const |
Check if some enforced stackable data are available. More... | |
bool | owns_stackable_data () const |
Check if some enforced stackable data are available and owned by the shape itself. More... | |
void | set_stackable_data (const stackable_data &a_stackable_data) |
Set external enforced stackable data. More... | |
void | set_stackable_data (const stackable_data *a_stackable_data) |
Set internal enforced stackable data. More... | |
void | reset_stackable_data () |
Reset enforced stackable data. More... | |
int | get_dimensional () const |
Return the dimension (3) More... | |
double | get_skin (double a_skin) const |
Return the effective skin tolerance associated to the 3D shape. More... | |
double | get_skin () const |
Return the intrinsic skin tolerance. More... | |
void | set_skin (double a_skin) |
Set the intrinsic skin tolerance. More... | |
i_shape_3d () | |
Constructor. More... | |
i_shape_3d (double a_skin) | |
Constructor with skin tolerance. More... | |
i_shape_3d (double a_skin_, double angular_tolerance_) | |
Constructor. More... | |
i_shape_3d (const i_shape_3d &) | |
Copy constructor. More... | |
i_shape_3d & | operator= (const i_shape_3d &) |
Assignment operator. More... | |
virtual | ~i_shape_3d () |
Destructor. More... | |
virtual bool | is_composite () const |
Check if the solid is composite. More... | |
virtual bool | using_face_id_bits () const |
Check if the face identification scheme is based on face bits. More... | |
virtual bool | using_face_id_index () const |
Check if the face identification scheme is based on face index. More... | |
virtual bool | using_face_id_part_index () const |
Check if the face identification scheme uses part index. More... | |
virtual void | make_any_face (face_identifier &) const |
Build a face identifier any mask. More... | |
virtual bool | has_number_of_faces () const |
Check if the number of faces is known. More... | |
virtual unsigned int | get_number_of_faces () const |
Return the number of faces. More... | |
virtual bool | volume_can_be_forced () const |
Check if a forced volume can be set. More... | |
virtual bool | has_forced_volume () const |
Check is a forced volume is set. More... | |
void | set_forced_volume (double volume_) |
Force the volume. More... | |
double | get_forced_volume () const |
Return the forced volume. More... | |
virtual bool | has_volume (uint32_t flags_=0) const |
Check is the volume is known. More... | |
double | get_effective_volume () const |
Return the total effective volume. More... | |
virtual bool | has_surface (uint32_t flags_=face_identifier::FACE_BITS_ANY) const |
Check is the surface is known. More... | |
bool | check_inside (const vector_3d &position_, double a_skin=GEOMTOOLS_PROPER_TOLERANCE) const |
Check if a point is inside the solid. More... | |
bool | check_outside (const vector_3d &position_, double a_skin=GEOMTOOLS_PROPER_TOLERANCE) const |
Check if a point is outside the solid. More... | |
face_identifier | check_surface (const vector_3d &position_, const face_identifier &a_surface_mask=face_identifier::FACE_BITS_ANY, double a_skin=GEOMTOOLS_PROPER_TOLERANCE) const |
Check is a point is located on a given surface. More... | |
bool | check_surface (const vector_3d &position_, double a_skin=GEOMTOOLS_PROPER_TOLERANCE) const |
Check if a point is on the surface of the solid. More... | |
bool | is_on_surface (const vector_3d &position_, const face_identifier &a_surface_mask=face_identifier::FACE_BITS_ANY, double a_skin=GEOMTOOLS_PROPER_TOLERANCE) const |
Check is a point is on a surface of the solid. More... | |
virtual shape_domain_flags_type | where_is (const vector_3d &position_, double a_skin) const |
Localize a point with respect to the solid. More... | |
bool | has_computed_faces () const |
Check if the embedded collection of faces has been computed. More... | |
const face_info_collection_type & | get_computed_faces () const |
Return the collection of faces. More... | |
void | reset_computed_faces () |
Reset the computed faces. More... | |
bool | has_bounding_data () const |
Check the bounding data. More... | |
const bounding_data & | get_bounding_data () const |
Return the bounding data. More... | |
void | reset_bounding_data () |
Reset the bounding data. More... | |
void | set_bounding_data (const bounding_data &) |
Set the bounding data. More... | |
void | build_default_bounding_data () |
Build default bounding data. More... | |
bool | is_locked () const |
Check the lock flag. More... | |
void | lock () |
Lock the shape, performing some internal calculations. More... | |
void | unlock () |
Unlock the shape. More... | |
Public Member Functions inherited from geomtools::i_object_3d | |
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... | |
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... | |
Public Member Functions inherited from datatools::i_serializable | |
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... | |
Public Member Functions inherited from datatools::i_tree_dumpable | |
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 |
Public Member Functions inherited from geomtools::i_wires_3d_rendering | |
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 |
Public Member Functions inherited from geomtools::i_find_intercept | |
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 |
Public Member Functions inherited from geomtools::i_stackable | |
i_stackable () | |
virtual | ~i_stackable () |
bool | has_xmin () const |
bool | has_xmax () const |
bool | has_ymin () const |
bool | has_ymax () const |
bool | has_zmin () const |
bool | has_zmax () const |
Static Public Member Functions | |
static const std::string & | polycone_label () |
Return the identifier label for the class. More... | |
Static Public Member Functions inherited from geomtools::i_shape_3d | |
static double | get_default_skin () |
Return the default skin value. More... | |
static double | get_zero_skin () |
Return the zero skin value (0 == no thickness) More... | |
static double | get_proper_skin () |
Return the special skin value that tells to use the intrinsic skin of the shape itself (< 0) More... | |
static const std::string & | volume_key () |
static const std::string & | surface_key () |
static bool | pickup_stackable (const i_shape_3d &, stackable_data &) |
Initialize a 'stackable_data' instance from stackable data attached to the 3D-shape. More... | |
static bool | check_stackability (const i_shape_3d &, const stackable::stackability_mode) |
Check the stackability of the shape (from native or enforced stackable infos) More... | |
static void | init_ocd (datatools::object_configuration_description &) |
OCD support. More... | |
Static Public Member Functions inherited from geomtools::i_object_3d | |
static void | init_ocd (datatools::object_configuration_description &) |
OCD support. More... | |
Static Public Member Functions inherited from datatools::i_tree_dumpable | |
static const boost::property_tree::ptree & | empty_options () |
static boost::property_tree::ptree | make_base_print_options (const std::string &title_, const std::string &indent_="", const bool inherit_=false) |
static std::ostream & | last_skip_tag (std::ostream &out_) |
static std::ostream & | skip_tag (std::ostream &out_) |
static std::ostream & | last_tag (std::ostream &out_) |
static std::ostream & | tag (std::ostream &out_) |
Static Public Member Functions inherited from geomtools::i_wires_3d_rendering | |
static uint32_t | linear_sampling (sampling_level_type) |
Return linear sampling from sampling level. More... | |
static uint32_t | linear_sampling_from_options (uint32_t) |
Return linear sampling from rendering options. More... | |
static uint32_t | angular_sampling (sampling_level_type) |
Return angular sampling from sampling level. More... | |
static uint32_t | angular_sampling_from_options (uint32_t) |
Return angular sampling from rendering options. More... | |
static void | boost_linear_sampling (uint32_t &) |
Boost the linear sampling. More... | |
Protected Member Functions | |
virtual void | _build_bounding_data () |
Build bounding data. More... | |
void | _set_defaults () |
Set default attributes. More... | |
virtual void | _at_lock () |
Executed at lock stage. More... | |
Protected Member Functions inherited from geomtools::i_shape_3d | |
void | _set_defaults () |
Set default values for attributes. More... | |
virtual void | _at_unlock () |
Executed at unlock stage. More... | |
void | _initialize (const datatools::properties &, const handle_dict_type *=0) |
Initialize from properties. More... | |
void | _reset () |
Reset. More... | |
void | _initialize_bounding_data (const datatools::properties &config_) |
Parse bounding data from a properties container. More... | |
void | _initialize_stackable_data (const datatools::properties &config_) |
Parse stackable data from a properties container. More... | |
void | _reset_bounding_data () |
Reset the bounding data. More... | |
bounding_data & | _grab_bounding_data () |
Return the bounding data. More... | |
Protected Member Functions inherited from geomtools::i_object_3d | |
void | _set_defaults () |
Set default values for attributes. More... | |
void | _initialize (const datatools::properties &, const handle_dict_type *=0) |
Initialize from properties. More... | |
void | _reset () |
Reset. More... | |
Friends | |
std::ostream & | operator<< (std::ostream &, const polycone &) |
std::istream & | operator>> (std::istream &, polycone &) |
Additional Inherited Members | |
Static Public Attributes inherited from geomtools::i_shape_3d | |
static const double | DEFAULT_SKIN |
static const double | ZERO_SKIN |
static const double | USING_PROPER_SKIN |
Polycone 3D solid shape.
typedef std::map<double, r_min_max> geomtools::polycone::rz_col_type |
3D rendering options
geomtools::polycone::polycone | ( | ) |
Default constructor.
|
virtual |
Destructor.
|
protectedvirtual |
Executed at lock stage.
Reimplemented from geomtools::i_shape_3d.
|
protectedvirtual |
Build bounding data.
Reimplemented from geomtools::i_shape_3d.
|
protected |
Set default attributes.
void geomtools::polycone::add | ( | double | z_, |
double | rmax_, | ||
bool | compute_ = true |
||
) |
Add a new point with only Rmax.
void geomtools::polycone::add | ( | double | z_, |
double | rmin_, | ||
double | rmax_, | ||
bool | compute_ = true |
||
) |
Add a new point with Rmin and Rmax.
Compute the bottom face.
|
virtual |
Compute informations about the faces of this solid shape.
Reimplemented from geomtools::i_shape_3d.
void geomtools::polycone::compute_frustrum | ( | right_circular_conical_frustrum & | f_, |
placement & | , | ||
int | index_ | ||
) | const |
Compute frustrum at given index.
void geomtools::polycone::compute_inner_face | ( | right_circular_conical_nappe & | in_, |
placement & | , | ||
int | index_ | ||
) | const |
Compute the inner face at given frustrum index.
void geomtools::polycone::compute_inner_face | ( | composite_surface & | face_, |
placement & | |||
) | const |
Compute the inner face.
void geomtools::polycone::compute_inner_polycone | ( | polycone & | ip_ | ) |
Compute the inner polycone.
void geomtools::polycone::compute_outer_face | ( | right_circular_conical_nappe & | on_, |
placement & | , | ||
int | index_ | ||
) | const |
Compute the outer face at given frustrum index.
void geomtools::polycone::compute_outer_face | ( | composite_surface & | face_, |
placement & | |||
) | const |
Compute the outer face.
void geomtools::polycone::compute_outer_polycone | ( | polycone & | op_ | ) |
Compute the outer polycone.
void geomtools::polycone::compute_start_angle_face | ( | quadrangle & | qface_, |
triangle & | tface_, | ||
placement & | , | ||
int | index_ | ||
) | const |
Compute the start phi angle face.
void geomtools::polycone::compute_start_angle_face | ( | composite_surface & | face_, |
placement & | |||
) | const |
Compute the start angle face.
void geomtools::polycone::compute_stop_angle_face | ( | quadrangle & | qface_, |
triangle & | tface_, | ||
placement & | , | ||
int | index_ | ||
) | const |
Compute the stop phi angle face.
void geomtools::polycone::compute_stop_angle_face | ( | composite_surface & | face_, |
placement & | |||
) | const |
Compute the stop angle face.
Compute the top face.
|
virtual |
Find the intercept point with a face of the frustrum.
Implements geomtools::i_find_intercept.
|
virtual |
Generate a list of polylines representing the contour of the shape (for display clients)
Implements geomtools::i_wires_3d_rendering.
double geomtools::polycone::get_delta_angle | ( | ) | const |
Return the delta phi angle.
void geomtools::polycone::get_frustrum_data | ( | size_t | i_, |
frustrum_data & | |||
) | const |
Compute frustrum data at given index.
|
virtual |
Compute the normal to the surface of the furstrum.
Implements geomtools::i_shape_3d.
double geomtools::polycone::get_parameter | ( | const std::string & | flag_ | ) | const |
Return a parameter by name.
double geomtools::polycone::get_r_max | ( | ) | const |
Return the max eadius.
|
virtual |
Return the identifier/name of the shape.
Implements geomtools::i_object_3d.
double geomtools::polycone::get_start_angle | ( | ) | const |
Return the start phi angle.
right_circular_conical_frustrum::ssaf_type geomtools::polycone::get_start_stop_angle_face_type | ( | int | index_ | ) | const |
|
virtual |
Compute the surface.
Reimplemented from geomtools::i_shape_3d.
|
virtual |
Compute the volume.
Reimplemented from geomtools::i_shape_3d.
|
virtual |
Return the X max.
Implements geomtools::i_stackable.
|
virtual |
Return the X min.
Implements geomtools::i_stackable.
|
virtual |
Return the Y max.
Implements geomtools::i_stackable.
|
virtual |
Return the Y min.
Implements geomtools::i_stackable.
double geomtools::polycone::get_z | ( | ) | const |
Return the Z dimension.
double geomtools::polycone::get_z_max | ( | ) | const |
Return the max Z.
double geomtools::polycone::get_z_min | ( | ) | const |
Return the min Z.
|
virtual |
Return the Z max.
Implements geomtools::i_stackable.
|
virtual |
Return the Z min.
Implements geomtools::i_stackable.
bool geomtools::polycone::has_angle_faces | ( | ) | const |
Check for angle faces.
bool geomtools::polycone::has_bottom_face | ( | ) | const |
Check for a bottom face.
bool geomtools::polycone::has_delta_angle | ( | ) | const |
Check the delta phi angle.
bool geomtools::polycone::has_inner_face | ( | ) | const |
Check for an inner face.
bool geomtools::polycone::has_partial_angle | ( | ) | const |
Check if the nappe has partial phi angle.
bool geomtools::polycone::has_start_angle | ( | ) | const |
Check the start phi angle.
bool geomtools::polycone::has_top_face | ( | ) | const |
Check for a top face.
void geomtools::polycone::initialize | ( | ) |
Initialize.
void geomtools::polycone::initialize | ( | const std::string & | filename_ | ) |
Initialize from a file.
void geomtools::polycone::initialize | ( | const std::string & | filename_, |
double | zmin_ = std::numeric_limits< double >::quiet_NaN() , |
||
double | zmax_ = std::numeric_limits< double >::quiet_NaN() , |
||
int | mode_ = RMIN_RMAX |
||
) |
Initialize the polycone from data in a file. Format (ASCII) consists in lines with the (Z,Rmax) format or the (Z,Rmin,Rmax) format. Special metadata may be specified at the beginning of the file:
All data are given with the following length unit:
Data (Rmin) in the second column out of three columns are ignored:
The thickness of the polycone:
The step of the polycone:
Example:
|
virtual |
Main initialization method from a container of configuration parameters.
Reimplemented from geomtools::i_object_3d.
bool geomtools::polycone::is_extruded | ( | ) | const |
Check if the polycone has a hole (Rmin != 0)
|
virtual |
Check if a point is inside the frustrum.
Implements geomtools::i_shape_3d.
|
virtual |
Check if a point is outside the frustrum.
Implements geomtools::i_shape_3d.
|
virtual |
Check if the solid is valid.
Implements geomtools::i_object_3d.
unsigned int geomtools::polycone::number_of_frustra | ( | ) | const |
Return the number of frustra.
|
virtual |
Return the surface bit a point belongs to.
Implements geomtools::i_shape_3d.
const rz_col_type& geomtools::polycone::points | ( | ) | const |
Return the dictionary of points.
|
static |
Return the identifier label for the class.
|
virtual |
Reset/invalidate the solid.
Reimplemented from geomtools::i_object_3d.
void geomtools::polycone::set_delta_angle | ( | double | ) |
Set the delta phi angle.
void geomtools::polycone::set_start_angle | ( | double | ) |
Set the start phi angle.
|
virtual |
Smart print.
Reimplemented from geomtools::i_shape_3d.
|
friend |
|
friend |