![]() |
Bayeux
3.4.1
Core Foundation library for SuperNEMO
|
Top-level namespace of the Bayeux/geomtools module library. More...
Namespaces | |
| intersection | |
| Nested namespace of the Bayeux/geomtools module library (intersection) | |
| stl | |
| Nested namespace of the Bayeux/geomtools module library (STereoLithography) | |
Classes | |
| class | address_set |
| A set of indexes representing subaddresses in a geometry ID (see geomtools::geom_id) More... | |
| class | angular_range |
| Angular range. More... | |
| class | base_hit |
| The base class for hit objects that locate events in a geometry model. More... | |
| class | base_locator |
| class | blur_spot |
| A blur spot is a measurement hit that may represents a vertex with 1D, 2D or 3D dimension. More... | |
| class | bounding_data |
| Bounding volume data for i_shape_3d derived solid shapes. More... | |
| class | box |
| The 3D shape model for a box. More... | |
| class | circle |
| A circular arc (1D shape) More... | |
| struct | classified_segment |
| A classified segment consists in a 3D segment with a first and a last point in an arbitrary reference frame and which is assigned a property that details if the segment lies inside a volume, outside a volume or is contained on the surface of a volume. More... | |
| class | color |
| Color. More... | |
| class | composite_surface |
| The abstract base class for all 2D shapes/surfaces. More... | |
| class | cone |
| Cone utilities. More... | |
| struct | constants |
| Some constants. More... | |
| class | cylinder |
| The 3D shape model for a cylinder. More... | |
| class | cylindric_extrusion_boxed_model |
| A geometry model implementing a box with a cylindrical extrusion, open on both bottom and top faces of the box. More... | |
| class | cylindrical_sector |
| A spherical sector (2D shape) More... | |
| class | disk |
| A disk/ring sector surface (2D shape) More... | |
| class | display_data |
| class | ellipse |
| A circular arc (1D shape) More... | |
| class | ellipsoid |
| The 3D shape model for an ellipsoid. More... | |
| class | ellipsoid_sector |
| The 2D shape/surface model for an ellipsoid sector. More... | |
| class | elliptical_cylinder |
| The 3D shape model for an elliptical cylinder. More... | |
| class | elliptical_cylinder_sector |
| The 2D shape/surface model for an elliptical cylinder sector. More... | |
| class | elliptical_sector |
| A elliptical_sector sector surface (2D shape) More... | |
| class | extruded_box |
| The 3D shape model for an extruded box. More... | |
| class | extruded_box_model |
| A geometry model implementing a box with a cylindrical extrusion. More... | |
| class | face_identifier |
| Identifier of a face attached to a solid shape. More... | |
| class | face_info |
| Information about the nature and positioning of a face of the solid. More... | |
| class | face_intercept_info |
| The face_intercept_info class hosts the parameters of. More... | |
| class | facet34 |
| A triangle or convex quadrangle facet of a tessellated solid. More... | |
| class | facet_segment |
| A segment associated to a facet. More... | |
| struct | facet_vertex |
| A vertex (corner) of a triangle or quadrangle facet in a tessellated solid. More... | |
| class | filled_utils |
| struct | foot_point_on_quadric_finder |
| Marching method to find the foot point of a point on the surface of a quadric. More... | |
| class | gdml_export |
| GDML export class. More... | |
| class | gdml_writer |
| GDML writer class used by the geomtools GDML export functionalities. More... | |
| class | geom_id |
| class | geom_info |
| A record for geometry information about a physical volume in a virtual geometry. More... | |
| class | geom_map |
| class | geometry_service |
| Generic geometry service. More... | |
| class | geomtools_driver |
| struct | geomtools_driver_params |
| class | gnuplot_draw |
| Drawing primitives for various solid shapes. More... | |
| class | gnuplot_drawer |
| An Gnuplot driver object responsible of the display of a virtual geometry. More... | |
| class | grid_model |
| A geometry model implementing a mother box volume with some daughter volumes positioned on a 2D grid. More... | |
| struct | has_geom_type_predicate |
| Predicate that tests if a geom_info object has a given geometry Id. More... | |
| class | helix_3d |
| An helix (1D shape) in a 3D space. More... | |
| class | i_base_locator |
| class | i_composite_shape_3d |
| Base class for binary composite shapes. More... | |
| class | i_find_intercept |
| Abstract interface for all objects for which we can compute the intercept with a ray emitted from a point. More... | |
| class | i_locator |
| class | i_model |
| The base class for geometry models. More... | |
| class | i_object_3d |
| Mother abstract class for all 3D object classes. More... | |
| class | i_placement |
| Abstract interface for all placement objects. More... | |
| class | i_polygon |
| Polygon 2D shape. More... | |
| class | i_shape_1d |
| The abstract base class for all 1D curves/shapes. More... | |
| class | i_shape_2d |
| The abstract base class for all 2D shapes/surfaces. More... | |
| class | i_shape_3d |
| Mother abstract class for all 3D solid shapes. More... | |
| class | i_stackable |
| Abstract base stackable object. More... | |
| class | i_wires_3d_rendering |
| brief Abstract interface for objects that can describe themselves as a collection of polylines for 3D rendering More... | |
| class | i_wires_drawer |
| Base class for all shape drawer objects in wires mode. More... | |
| class | id_mgr |
| class | id_selector |
| A selector of geometry IDs using a specific geometry category. More... | |
| class | intersection_3d |
| Intersection of two 3D shapes. More... | |
| struct | io |
| I/O constants for the serialization of vector(2D/3D) and rotation objects. More... | |
| class | line_3d |
| An line/segment (1D shape) in a 3D space. More... | |
| class | logical_volume |
| A logical geometry volume (ala GDML) More... | |
| class | manager |
| Geometry manager for virtual geometry modelling. Main geometry manager for the modelisation of various experimental setups in the framework of the nuclear and particle physics experiments. More... | |
| class | mapping |
| The geometry ID mapping. More... | |
| class | mapping_plugin |
| A geometry manager plugin with embeded mapping with its specific mapping rules. More... | |
| struct | mapping_utils |
| Mapping utilities. More... | |
| class | material |
| class | materials_plugin |
| A plugin for the geomtools' geometry manager that embeds an isotope/element/material manager. More... | |
| class | model_factory |
| The factory of geometry models. More... | |
| class | model_with_internal_items_tools |
| Handler for internal items. More... | |
| class | model_with_internal_mesh_data |
| Handler to add daughter volumes on a regular 3D mesh in a mother logical volume. More... | |
| class | multiple_items_model |
| A geometry model implementing a simple box with several daughter volumes. More... | |
| class | multiple_placement |
| Multiple placement with an arbitrary collection of single placements addressed by index. More... | |
| class | overlapping |
| Volume overlapping detection algorithms. More... | |
| class | physical_volume |
| A physical geometry volume (ala GDML) More... | |
| class | placement |
| The placement for a geometry volume with its translation and rotation with respect to some mother reference frame. More... | |
| class | plane |
| A plane (2D shape) in a 3D space. More... | |
| class | plate_with_hole_model |
| A geometry model implementing a box/plate with cylindrical hole This class is similar to the geomtools::cylindric_extrusion_boxed_model class. More... | |
| struct | point_on_quadric_finder |
| Marching method to find a point on the surface of a quadric. More... | |
| class | polycone |
| Polycone 3D solid shape. More... | |
| class | polyhedra |
| Polyhedra 3D solid shape. More... | |
| class | polyline_3d |
| A sequence of connected linear segments (3D) More... | |
| class | quadrangle |
| A quadrangle. More... | |
| class | quadric |
| A general quadric a 3D space. More... | |
| class | rectangle |
| A rectangular surface (2D shape) More... | |
| class | regular_3d_mesh_placement |
| Regular 3D mesh placement of small daughter volumes with respect to a mother logical volume. More... | |
| class | regular_circular_placement |
| Regular circular placement. More... | |
| class | regular_grid_placement |
| class | regular_linear_placement |
| Regular linear placement. More... | |
| class | regular_polygon |
| A regular polygon. More... | |
| class | replicated_boxed_model |
| class | replicated_circular_model |
| class | replicated_model |
| class | right_circular_conical_frustrum |
| Right circular conical frustrum (3D shape) More... | |
| class | right_circular_conical_nappe |
| Right circular conical nappe (2D shape) More... | |
| class | right_polygonal_frustrum |
| Right polygonal frustrum (3D shape) More... | |
| class | rotated_boxed_model |
| A geometry model implementing a box with an unique rotated boxed model. More... | |
| class | rotation_wrapper_type |
| Wrapper for rotation object. More... | |
| class | sensitive |
| class | shape_factory |
| The factory of shapes. More... | |
| class | simple_boxed_model |
| A geometry model implementing a single box with no daughter volumes. More... | |
| class | simple_polygon |
| A simple polygon in the XY plane. More... | |
| class | simple_shaped_model |
| A geometry model implementing an unique simple 3D shape, possibly with internal/daughter volumes. More... | |
| class | simple_world_model |
| A geometry model implementing a top-level/world box volume with an unique setup daughter volume. More... | |
| class | smart_id_locator |
| Locator of geometry volumes by thier geometry Id. More... | |
| class | sphere |
| A spherical volume (3D solid) More... | |
| class | spherical_extrusion_box_model |
| A box volume with a spherical extrusion. More... | |
| class | spherical_extrusion_cylinder_model |
| A cylinder volume with a spherical extrusion. More... | |
| class | spherical_sector |
| A sperical sector (2D shape) More... | |
| class | split_segment_wrt_shape |
| This algorithm splits a segment, a polyline or a collection of polylines in a sequence of smaller segments that are classified as inside, outside or on surface of a given shape. More... | |
| class | stackable |
| Static methods and constants to handle stackable data/information. More... | |
| class | stackable_data |
| Data for stacking along X, Y and/or Z axis. More... | |
| class | stacked_model |
| A geometry model with some stacked boxed models along a specific axis (X, Y or Z) More... | |
| class | subtraction_3d |
| Subtraction of two 3D shapes. More... | |
| class | surrounded_boxed_model |
| A geometry model with a boxed model surrounded by up to 6 other models. More... | |
| class | tessellated_solid |
| Tessellated solid made of facets. More... | |
| class | toroid_nappe |
| A toroid nappe (2D shape) More... | |
| class | torus |
| The 3D shape model for a solid torus. More... | |
| class | triangle |
| A triangle. More... | |
| class | tube |
| The 3D shape model for a tube. More... | |
| class | union_3d |
| Union of two 3D shapes. More... | |
| struct | version |
| Describe the geomtools API version and features. More... | |
| class | visibility |
| Utilities to manipulate visibility properties. More... | |
| class | wall_solid |
| The 3D shape model for a wall solid. More... | |
Typedefs | |
| typedef CLHEP::Hep2Vector | vector_2d |
| Alias for the CLHEP 2D-vector class. More... | |
| typedef CLHEP::Hep3Vector | vector_3d |
| Alias for the CLHEP 3D-vector class. More... | |
| typedef CLHEP::HepRotation | rotation_3d |
| Alias for the CLHEP 3D-rotation class. More... | |
| typedef rotation_3d | rotation |
| Alias for the 3D-rotation class. More... | |
| typedef std::map< std::string, i_model * > | models_col_type |
| Type alias for dictionary of geometry model plain handles. More... | |
| typedef i_model *(* | model_creator_type) (const std::string &name_, const datatools::properties &configuration_, models_col_type *models_) |
| typedef std::map< std::string, model_creator_type > | model_creator_dict_type |
| typedef elliptical_cylinder | elliptical_tube |
| typedef std::vector< face_info > | face_info_collection_type |
| Type alias for a collection of face information objects. More... | |
| typedef std::map< geom_id, geom_info > | geom_info_dict_type |
| Dictionary of geometry information objects (key type is: geomtools::geom_id) More... | |
| typedef datatools::handle< i_shape_2d > | shape_2d_handle_type |
| Type aliases for a handle to a 2D shape. More... | |
| typedef shape_2d_handle_type | face_handle_type |
| typedef line_3d | segment_3d |
| Type alias for the line_3d class. More... | |
| typedef model_with_internal_items_tools | MWIM |
| typedef right_circular_conical_frustrum | conical_frustrum |
| Type alias. More... | |
| typedef right_circular_conical_nappe | conical_nappe |
| Type alias. More... | |
| typedef right_polygonal_frustrum | polygonal_frustrum |
| Type alias. More... | |
| typedef std::list< vector_2d > | basic_polyline_2d |
| Alias for a list of 2D vertice as a 2D-polyline. More... | |
| typedef std::pair< vector_3d, vector_3d > | basic_segment_3d |
| Aliases for a segment made of two 3D vertice. More... | |
| typedef basic_segment_3d | segment_type |
| typedef std::list< vector_3d > | basic_polyline_3d |
| Aliases for a list of 3D vertice as a 3D-polyline. More... | |
| typedef std::list< vector_3d > | polyline_type |
| typedef std::vector< vector_3d > | vertex_col_type |
| Aliases for an ordered collection of 3D vertice. More... | |
| typedef std::list< polyline_type > | wires_type |
| Alias for a list of 3D-polylines. More... | |
| typedef side_2d_type | edge_2d_type |
| typedef rotation_wrapper_type | rotation_wrapper_t |
| Type alias. More... | |
Functions | |
| void | print_face_infos (const face_info_collection_type &, std::ostream &out_, const std::string &title_="", const std::string &indent_="") |
| Smart print. More... | |
| GEOMTOOLS_MODEL_CLASS_DECLARE (i_boxed_model) | |
| void | transform_wire_to (const placement &p_, const polyline_type &wire_, polyline_type &tr_wire_) |
| Transform a polyline. More... | |
| void | transform_wires_to (const placement &p_, const wires_type &wires_, wires_type &tr_wires_) |
| Transform a collection of polylines. More... | |
| bool | parse_wires (std::istream &in_, wires_type &wires_) |
| Parse a collection of polylines from an ASCII stream. More... | |
| void | save_wires (std::ostream &out_, const wires_type &wires_, uint32_t flags_=0) |
| Save a collection of polylines in an ASCII stream. More... | |
| void | classify_in_out_segment (const segment_type &segment_, const i_shape_3d &shape_, const placement &shape_placement_, double step_, double tolerance_, std::list< classified_segment > &classified_) |
| void | export_gdml (const materials::manager &, gdml_writer &gw_) |
| void | export_gdml (const materials::manager &, std::ostream &out_) |
| std::ostream & | operator<< (std::ostream &out_, const placement &) |
| std::string | get_resource_dir (bool overriden_env=false) |
| std::string | get_resource (const std::string &rname, bool overriden_env=false) |
| bool | position_is_in (double position_, double start_position_, double delta_position_, double tolerance_=0.0, bool bounds_excluded_=false) |
| Check if a position is inside a position interval. More... | |
| bool | angle_is_in (double angle_, double start_angle_, double delta_angle_, double angular_tolerance_=0.0, bool bounds_excluded_=false) |
| Check if an angle is inside an angular interval. More... | |
| void | print_xy (std::ostream &out_, const vector_2d &p_, bool endl_=true) |
| std::string | to_xy (const vector_2d &p_) |
| std::string | vector_2d_to_xy (const vector_2d &p_) |
| void | print_xy_stdout (const vector_2d &p_) |
| void | print_xy_stderr (const vector_2d &p_) |
| void | print_xyz (std::ostream &out_, const vector_3d &p_, bool endl_=true) |
| void | print (std::ostream &out_, const vector_3d &p_) |
| std::string | to_xyz (const vector_3d &p_) |
| std::string | vector_3d_to_xyz (const vector_3d &p_) |
| void | print_xyz_stdout (const vector_3d &p_) |
| void | print_xyz_stderr (const vector_3d &p_) |
| void | set_vector_2d (const std::vector< double > &source_, vector_2d &target_) |
| void | set_vector_3d (const std::vector< double > &source_, vector_3d &target_) |
| bool | parse (std::istream &in_, vector_3d &position_, bool nothing_more_=false) |
| Parse a vector 3D object from an input stream. More... | |
| bool | parse (const std::string &token_, vector_3d &position_) |
| Parse a vector 3D object from an input string. More... | |
| void | print_xy (std::ostream &out_, const basic_polyline_2d &p_, bool endl_=true) |
| std::string | to_xy (const basic_polyline_2d &p_) |
| std::string | basic_polyline_2d_to_xy (const basic_polyline_2d &p_) |
| void | print_xy_stdout (const basic_polyline_2d &p_) |
| void | print_xy_stderr (const basic_polyline_2d &p_) |
| void | print_xyz (std::ostream &out_, const basic_polyline_3d &p_, bool endl_=true) |
| std::string | to_xyz (const basic_polyline_3d &p_) |
| std::string | basic_polyline_3d_to_xyz (const basic_polyline_3d &p_) |
| void | print_xyz_stdout (const basic_polyline_3d &p_) |
| void | print_xyz_stderr (const basic_polyline_3d &p_) |
| direction_type | get_direction_from_label (const std::string &) |
| std::string | get_direction_label (direction_type) |
| std::string | shape_domain_flag_label (shape_domain_flags_type flag_) |
| void | create (rotation_3d &rot_, double angle0_, double angle1_, double angle2_, euler_angles_type et_) |
| void | create_zyz (rotation_3d &rot_, double phi_, double theta_, double delta_) |
| void | create (rotation_3d &rot_, double phi_, double theta_, double delta_) |
| void | create_zxz (rotation_3d &rot_, double phi_, double theta_, double psi_) |
| Create a rotation using ZXZ Euler angles. More... | |
| void | create_xyz (rotation_3d &rot_, double phi_, double theta_, double psi_) |
| Create a rotation using XYZ Euler angles. More... | |
| void | create_rotation_3d (rotation_3d &rot_, double phi_, double theta_, double delta_) |
| void | create_rotation_from_zyz_euler_angles (rotation_3d &rot_, double phi_, double theta_, double delta_) |
| void | create_rotation (rotation_3d &rot_, double phi_, double theta_, double delta_) |
| bool | is_identity (const rotation_3d &rot_) |
| Check if a rotation is the identity. More... | |
| void | extract_xyz_euler_angle_from_rotation (const rotation_3d &rot_, double &a_, double &b_, double &c_) |
| Extract the XYZ Euler angles from a rotation. More... | |
| void | extract_zyz_euler_angle_from_rotation (const rotation_3d &rot_, double &a_, double &b_, double &c_) |
| Extract the ZYZ Euler angles from a rotation. More... | |
| bool | check_special_rotation_angle (int) |
| double | get_special_rotation_angle (int) |
| int | get_special_rotation_angle_from_label (const std::string &) |
| std::string | get_special_rotation_angle_label (int) |
| bool | check_rotation_axis (int) |
| int | get_rotation_axis_from_label (const std::string &) |
| std::string | get_rotation_label (int) |
| void | create_rotation_from_axis (rotation_3d &rot_, int axis_, double angle_) |
| void | create_rotation (rotation_3d &rot_, int axis_, double angle_) |
| void | create_rotation (rotation_3d &rot_, int axis_, int special_angle_) |
| void | create_rotation_from (rotation_3d &rot_, const std::string &) |
| void | reset (rotation_3d &rot_) |
| Invalidate a rotation 3D object. More... | |
| void | reset_rotation_3d (rotation_3d &rot_) |
| Invalidate a rotation 3D object. More... | |
| void | tree_dump (const rotation_3d &rot_, std::ostream &out_, const std::string &title_="", const std::string &indent_="") |
| Smart print for rotation 3D object. More... | |
| void | invalidate (rotation_3d &rot_) |
| Invalidate a rotation 3D object. More... | |
| void | rectify (rotation_3d &rot_) |
| Rectify a rotation 3D object. More... | |
| void | invalidate_rotation_3d (rotation_3d &rot_) |
| Invalidate a rotation 3D object. More... | |
| bool | is_valid (const rotation_3d &rot_) |
| Check if a rotation 3D object is valid. More... | |
| bool | is_valid_rotation_3d (const rotation_3d &rot_) |
| Check if a rotation 3D object is valid. More... | |
| void | create (vector_3d &, double x_, double y_, double z_) |
| Create/set coordinates of a vector 3D object (cartesian) More... | |
| void | create_xyz (vector_3d &, double x_, double y_, double z_) |
| Create/set coordinates of a vector 3D object (cartesian) More... | |
| void | create_polar (vector_3d &, double r_, double theta_, double z_) |
| Create/set coordinates of a vector 3D object (polar) More... | |
| void | create_spherical (vector_3d &, double r_, double phi_, double theta_) |
| Create/set coordinates of a vector 3D object (spherical) More... | |
| void | set (vector_3d &vec_, double x_, double y_, double z_) |
| Set coordinates of a vector 3D object (cartesian) More... | |
| void | set_r_theta_phi (vector_3d &vec_, double r_, double theta_, double phi_) |
| Set coordinates of a vector 3D object (spherical) More... | |
| void | set_rho_phi_z (vector_3d &vec_, double rho_, double phi_, double z_) |
| Set coordinates of a vector 3D object (polar) More... | |
| void | zero (vector_3d &vec_) |
| Zero a vector 3D object. More... | |
| const vector_3d & | invalid_vector_3d () |
| Return an invalid vector 3D object (static singleton) More... | |
| void | invalidate (vector_3d &vec_) |
| Invalidate a vector 3D object. More... | |
| void | invalidate_vector_3d (vector_3d &vec_) |
| Invalidate a vector 3D object. More... | |
| bool | is_valid (const vector_3d &vec_) |
| Check if a vector 3D object is valid. More... | |
| bool | is_valid_vector_3d (const vector_3d &vec_) |
| Check if a vector 3D object is valid. More... | |
| bool | are_near (const vector_3d &vec1_, const vector_3d &vec2_, double tolerance_=constants::DEFAULT_TOLERANCE) |
| Check if two vector 3D objects are close to each other given a tolerance. More... | |
| bool | are_near_vector_3d (const vector_3d &vec1_, const vector_3d &vec2_, double tolerance_) |
| Check if two vector 3D objects are close to each other given a tolerance. More... | |
| void | set (vector_2d &vec_, double x_, double y_) |
| Set coordinates of a vector 2D object (cartesian) More... | |
| void | set_r_phi (vector_2d &vec_, double r_, double phi_) |
| Set coordinates of a vector 2D object (polar) More... | |
| void | zero (vector_2d &vec_) |
| Zero a vector 2D object. More... | |
| void | invalidate (vector_2d &vec_) |
| Invalidate a vector 2D object. More... | |
| void | invalidate_vector_2d (vector_2d &vec_) |
| Invalidate a vector 2D object. More... | |
| const vector_2d & | invalid_vector_2d () |
| Return an invalid vector 2D object (static singleton) More... | |
| bool | is_valid (const vector_2d &vec_) |
| Check if a vector 2D object is valid. More... | |
| bool | is_valid_vector_2d (const vector_2d &vec_) |
| Check if a vector 2D object is valid. More... | |
| void | vector_2d_to_vector_3d (const vector_2d &v2d_, vector_3d &v3d_) |
| Convert a vector 2D object to a vector 3D object (export x and y coordinates, setting z to zero) More... | |
| void | vector_3d_to_vector_2d (const vector_3d &v3d_, vector_2d &v2d_) |
| Convert a vector 3D object to a vector 2D object (export only x and y coordinates) More... | |
| void | make_phi_theta (vector_3d &vec_, double phi_, double theta_) |
| Create a vector 3D object from spherical angular coordinates (magnitude is set to 1) More... | |
| template<class ran_func > | |
| void | randomize_direction (ran_func &ran_, vector_3d &ran_dir_) |
| Isotropically randomize the direction of an unit vector. More... | |
| template<class ran_func > | |
| vector_3d | randomize_direction (ran_func &ran_) |
| Isotropically randomize the direction of an unit vector. More... | |
| template<class ran_func > | |
| void | randomize_orthogonal_direction (ran_func &ran_, const vector_3d &dir_, vector_3d &ran_dir_) |
| Isotropically randomize the direction of an unit vector orthogonal to a given direction. More... | |
| template<class ran_func > | |
| vector_3d | randomize_orthogonal_direction (ran_func &ran_, const vector_3d &ref_dir_) |
| Isotropically randomize the direction of an unit vector orthogonal to a given direction. More... | |
| void | compute_barycenter (const std::vector< vector_3d > &points_, vector_3d &barycenter_) |
| vector_3d | compute_barycenter (const std::vector< vector_3d > &points_) |
| void | compute_weighted_barycenter (const std::vector< vector_3d > &points_, const std::vector< double > &weights_, vector_3d &weighted_barycenter_) |
| vector_3d | compute_weighted_barycenter (const std::vector< vector_3d > &points_, const std::vector< double > &weights_) |
Top-level namespace of the Bayeux/geomtools module library.
| typedef std::list<vector_2d> geomtools::basic_polyline_2d |
Alias for a list of 2D vertice as a 2D-polyline.
| typedef std::list<vector_3d> geomtools::basic_polyline_3d |
Aliases for a list of 3D vertice as a 3D-polyline.
| typedef std::pair<vector_3d, vector_3d> geomtools::basic_segment_3d |
Aliases for a segment made of two 3D vertice.
Type alias.
Type alias.
| typedef side_2d_type geomtools::edge_2d_type |
| typedef std::vector<face_info> geomtools::face_info_collection_type |
Type alias for a collection of face information objects.
| typedef std::map<geom_id, geom_info> geomtools::geom_info_dict_type |
Dictionary of geometry information objects (key type is: geomtools::geom_id)
| typedef std::map<std::string, model_creator_type> geomtools::model_creator_dict_type |
| typedef i_model*(* geomtools::model_creator_type) (const std::string &name_, const datatools::properties &configuration_, models_col_type *models_) |
| typedef std::map<std::string, i_model *> geomtools::models_col_type |
Type alias for dictionary of geometry model plain handles.
Type alias.
| typedef std::list<vector_3d> geomtools::polyline_type |
| typedef rotation_3d geomtools::rotation |
Alias for the 3D-rotation class.
| typedef CLHEP::HepRotation geomtools::rotation_3d |
Alias for the CLHEP 3D-rotation class.
Type alias.
| typedef line_3d geomtools::segment_3d |
Type alias for the line_3d class.
Type aliases for a handle to a 2D shape.
| typedef CLHEP::Hep2Vector geomtools::vector_2d |
Alias for the CLHEP 2D-vector class.
| typedef CLHEP::Hep3Vector geomtools::vector_3d |
Alias for the CLHEP 3D-vector class.
| typedef std::vector<vector_3d> geomtools::vertex_col_type |
Aliases for an ordered collection of 3D vertice.
| typedef std::list<polyline_type> geomtools::wires_type |
Alias for a list of 3D-polylines.
| enum geomtools::axis_type |
Direction type.
Type of Euler angles.
| bool geomtools::angle_is_in | ( | double | angle_, |
| double | start_angle_, | ||
| double | delta_angle_, | ||
| double | angular_tolerance_ = 0.0, |
||
| bool | bounds_excluded_ = false |
||
| ) |
Check if an angle is inside an angular interval.
| bool geomtools::are_near | ( | const vector_3d & | vec1_, |
| const vector_3d & | vec2_, | ||
| double | tolerance_ = constants::DEFAULT_TOLERANCE |
||
| ) |
Check if two vector 3D objects are close to each other given a tolerance.
| bool geomtools::are_near_vector_3d | ( | const vector_3d & | vec1_, |
| const vector_3d & | vec2_, | ||
| double | tolerance_ | ||
| ) |
Check if two vector 3D objects are close to each other given a tolerance.
| std::string geomtools::basic_polyline_2d_to_xy | ( | const basic_polyline_2d & | p_ | ) |
| std::string geomtools::basic_polyline_3d_to_xyz | ( | const basic_polyline_3d & | p_ | ) |
| bool geomtools::check_rotation_axis | ( | int | ) |
| bool geomtools::check_special_rotation_angle | ( | int | ) |
| void geomtools::classify_in_out_segment | ( | const segment_type & | segment_, |
| const i_shape_3d & | shape_, | ||
| const placement & | shape_placement_, | ||
| double | step_, | ||
| double | tolerance_, | ||
| std::list< classified_segment > & | classified_ | ||
| ) |
Split a given segment into a collection of classified segments with respect to a given 3D shape/solid volume.
| void geomtools::compute_barycenter | ( | const std::vector< vector_3d > & | points_, |
| vector_3d & | barycenter_ | ||
| ) |
Compute the barycenter of a collection of 3D points
Compute the barycenter of a collection of 3D points
| void geomtools::compute_weighted_barycenter | ( | const std::vector< vector_3d > & | points_, |
| const std::vector< double > & | weights_, | ||
| vector_3d & | weighted_barycenter_ | ||
| ) |
Compute the weighted barycenter of a collection of 3D points
| vector_3d geomtools::compute_weighted_barycenter | ( | const std::vector< vector_3d > & | points_, |
| const std::vector< double > & | weights_ | ||
| ) |
Compute the weighted barycenter of a collection of 3D points
| void geomtools::create | ( | rotation_3d & | rot_, |
| double | angle0_, | ||
| double | angle1_, | ||
| double | angle2_, | ||
| euler_angles_type | et_ | ||
| ) |
Create a rotation using Euler angles
| rot_ | the rotation matrix to be initialized |
| angle0_ | the first Euler angle |
| angle1_ | the second Euler angle |
| angle2_ | the third Euler angle |
| et_ | the type of Euler angles |
| void geomtools::create | ( | rotation_3d & | rot_, |
| double | phi_, | ||
| double | theta_, | ||
| double | delta_ | ||
| ) |
Create a rotation (default is using ZYZ Euler angles)
| rot_ | the rotation matrix to be initialized |
| phi_ | the azimuthal angle |
| theta_ | the polar/zenith angle |
| delta_ | the tilt angle |
| void geomtools::create | ( | vector_3d & | , |
| double | x_, | ||
| double | y_, | ||
| double | z_ | ||
| ) |
Create/set coordinates of a vector 3D object (cartesian)
| void geomtools::create_polar | ( | vector_3d & | , |
| double | r_, | ||
| double | theta_, | ||
| double | z_ | ||
| ) |
Create/set coordinates of a vector 3D object (polar)
| void geomtools::create_rotation | ( | rotation_3d & | rot_, |
| double | phi_, | ||
| double | theta_, | ||
| double | delta_ | ||
| ) |
Create a rotation (default is using ZYZ Euler angles)
| rot_ | the rotation matrix to be initialized |
| phi_ | the azimuthal angle |
| theta_ | the polar/zenith angle |
| delta_ | the tilt angle |
| void geomtools::create_rotation | ( | rotation_3d & | rot_, |
| int | axis_, | ||
| double | angle_ | ||
| ) |
| void geomtools::create_rotation | ( | rotation_3d & | rot_, |
| int | axis_, | ||
| int | special_angle_ | ||
| ) |
| void geomtools::create_rotation_3d | ( | rotation_3d & | rot_, |
| double | phi_, | ||
| double | theta_, | ||
| double | delta_ | ||
| ) |
Create a rotation(default is using ZYZ Euler angles)
| rot_ | the rotation matrix to be initialized |
| phi_ | the azimuthal angle |
| theta_ | the polar/zenith angle |
| delta_ | the tilt angle |
| void geomtools::create_rotation_from | ( | rotation_3d & | rot_, |
| const std::string & | |||
| ) |
| void geomtools::create_rotation_from_axis | ( | rotation_3d & | rot_, |
| int | axis_, | ||
| double | angle_ | ||
| ) |
| void geomtools::create_rotation_from_zyz_euler_angles | ( | rotation_3d & | rot_, |
| double | phi_, | ||
| double | theta_, | ||
| double | delta_ | ||
| ) |
Create a rotation (default is using ZYZ Euler angles)
| rot_ | the rotation matrix to be initialized |
| phi_ | the azimuthal angle |
| theta_ | the polar/zenith angle |
| delta_ | the tilt angle |
| void geomtools::create_spherical | ( | vector_3d & | , |
| double | r_, | ||
| double | phi_, | ||
| double | theta_ | ||
| ) |
Create/set coordinates of a vector 3D object (spherical)
| void geomtools::create_xyz | ( | rotation_3d & | rot_, |
| double | phi_, | ||
| double | theta_, | ||
| double | psi_ | ||
| ) |
Create a rotation using XYZ Euler angles.
| void geomtools::create_xyz | ( | vector_3d & | , |
| double | x_, | ||
| double | y_, | ||
| double | z_ | ||
| ) |
Create/set coordinates of a vector 3D object (cartesian)
| void geomtools::create_zxz | ( | rotation_3d & | rot_, |
| double | phi_, | ||
| double | theta_, | ||
| double | psi_ | ||
| ) |
Create a rotation using ZXZ Euler angles.
| void geomtools::create_zyz | ( | rotation_3d & | rot_, |
| double | phi_, | ||
| double | theta_, | ||
| double | delta_ | ||
| ) |
Create a rotation using ZYZ Euler angles
| rot_ | the rotation matrix to be initialized |
| phi_ | the azimuthal angle |
| theta_ | the polar/zenith angle |
| delta_ | the tilt angle |
| void geomtools::export_gdml | ( | const materials::manager & | , |
| gdml_writer & | gw_ | ||
| ) |
| void geomtools::export_gdml | ( | const materials::manager & | , |
| std::ostream & | out_ | ||
| ) |
| void geomtools::extract_xyz_euler_angle_from_rotation | ( | const rotation_3d & | rot_, |
| double & | a_, | ||
| double & | b_, | ||
| double & | c_ | ||
| ) |
Extract the XYZ Euler angles from a rotation.
| void geomtools::extract_zyz_euler_angle_from_rotation | ( | const rotation_3d & | rot_, |
| double & | a_, | ||
| double & | b_, | ||
| double & | c_ | ||
| ) |
Extract the ZYZ Euler angles from a rotation.
| geomtools::GEOMTOOLS_MODEL_CLASS_DECLARE | ( | i_boxed_model | ) |
| direction_type geomtools::get_direction_from_label | ( | const std::string & | ) |
| std::string geomtools::get_direction_label | ( | direction_type | ) |
| std::string geomtools::get_resource | ( | const std::string & | rname, |
| bool | overriden_env = false |
||
| ) |
Return URL, i.e. a path, to named resource By default the encoded resource root, determined at compile time is used to search for the resource. This can be overriden by setting the GEOMTOOLS_RESOURCE_DIR environment variable to a path holding custom resources.
| rname | name of resource, given as a path relative to resource root. |
| overriden_env | flag to allow path overriding by the GEOMTOOLS_RESOURCE_DIR environment variable. |
| std::string geomtools::get_resource_dir | ( | bool | overriden_env = false | ) |
Return URL, i.e. a path, to the base directory where resource files are installed
| overriden_env | If set this flag trigger the search for the environment variable GEOMTOOLS_RESOURCE_DIR as a directory path on the filesystem as an alternative base directory for resources in place of the standard installation path |
| int geomtools::get_rotation_axis_from_label | ( | const std::string & | ) |
| std::string geomtools::get_rotation_label | ( | int | ) |
| double geomtools::get_special_rotation_angle | ( | int | ) |
| int geomtools::get_special_rotation_angle_from_label | ( | const std::string & | ) |
| std::string geomtools::get_special_rotation_angle_label | ( | int | ) |
| const vector_2d& geomtools::invalid_vector_2d | ( | ) |
Return an invalid vector 2D object (static singleton)
| const vector_3d& geomtools::invalid_vector_3d | ( | ) |
Return an invalid vector 3D object (static singleton)
| void geomtools::invalidate | ( | rotation_3d & | rot_ | ) |
Invalidate a rotation 3D object.
| void geomtools::invalidate | ( | vector_3d & | vec_ | ) |
Invalidate a vector 3D object.
| void geomtools::invalidate | ( | vector_2d & | vec_ | ) |
Invalidate a vector 2D object.
| void geomtools::invalidate_rotation_3d | ( | rotation_3d & | rot_ | ) |
Invalidate a rotation 3D object.
| void geomtools::invalidate_vector_2d | ( | vector_2d & | vec_ | ) |
Invalidate a vector 2D object.
| void geomtools::invalidate_vector_3d | ( | vector_3d & | vec_ | ) |
Invalidate a vector 3D object.
| bool geomtools::is_identity | ( | const rotation_3d & | rot_ | ) |
Check if a rotation is the identity.
| bool geomtools::is_valid | ( | const rotation_3d & | rot_ | ) |
Check if a rotation 3D object is valid.
| bool geomtools::is_valid | ( | const vector_3d & | vec_ | ) |
Check if a vector 3D object is valid.
| bool geomtools::is_valid | ( | const vector_2d & | vec_ | ) |
Check if a vector 2D object is valid.
| bool geomtools::is_valid_rotation_3d | ( | const rotation_3d & | rot_ | ) |
Check if a rotation 3D object is valid.
| bool geomtools::is_valid_vector_2d | ( | const vector_2d & | vec_ | ) |
Check if a vector 2D object is valid.
| bool geomtools::is_valid_vector_3d | ( | const vector_3d & | vec_ | ) |
Check if a vector 3D object is valid.
| void geomtools::make_phi_theta | ( | vector_3d & | vec_, |
| double | phi_, | ||
| double | theta_ | ||
| ) |
Create a vector 3D object from spherical angular coordinates (magnitude is set to 1)
| std::ostream& geomtools::operator<< | ( | std::ostream & | out_, |
| const placement & | |||
| ) |
| bool geomtools::parse | ( | std::istream & | in_, |
| vector_3d & | position_, | ||
| bool | nothing_more_ = false |
||
| ) |
Parse a vector 3D object from an input stream.
Supported format is:
where x, y and z are the cartesian coordinates in an arbitrary reference frame and the lenght unit is passed optionally as a character string representing the unit symbol. Examples:
| bool geomtools::parse | ( | const std::string & | token_, |
| vector_3d & | position_ | ||
| ) |
Parse a vector 3D object from an input string.
| bool geomtools::parse_wires | ( | std::istream & | in_, |
| wires_type & | wires_ | ||
| ) |
Parse a collection of polylines from an ASCII stream.
| bool geomtools::position_is_in | ( | double | position_, |
| double | start_position_, | ||
| double | delta_position_, | ||
| double | tolerance_ = 0.0, |
||
| bool | bounds_excluded_ = false |
||
| ) |
Check if a position is inside a position interval.
| void geomtools::print | ( | std::ostream & | out_, |
| const vector_3d & | p_ | ||
| ) |
| void geomtools::print_face_infos | ( | const face_info_collection_type & | , |
| std::ostream & | out_, | ||
| const std::string & | title_ = "", |
||
| const std::string & | indent_ = "" |
||
| ) |
Smart print.
| void geomtools::print_xy | ( | std::ostream & | out_, |
| const vector_2d & | p_, | ||
| bool | endl_ = true |
||
| ) |
| void geomtools::print_xy | ( | std::ostream & | out_, |
| const basic_polyline_2d & | p_, | ||
| bool | endl_ = true |
||
| ) |
| void geomtools::print_xy_stderr | ( | const vector_2d & | p_ | ) |
| void geomtools::print_xy_stderr | ( | const basic_polyline_2d & | p_ | ) |
| void geomtools::print_xy_stdout | ( | const vector_2d & | p_ | ) |
| void geomtools::print_xy_stdout | ( | const basic_polyline_2d & | p_ | ) |
| void geomtools::print_xyz | ( | std::ostream & | out_, |
| const vector_3d & | p_, | ||
| bool | endl_ = true |
||
| ) |
| void geomtools::print_xyz | ( | std::ostream & | out_, |
| const basic_polyline_3d & | p_, | ||
| bool | endl_ = true |
||
| ) |
| void geomtools::print_xyz_stderr | ( | const vector_3d & | p_ | ) |
| void geomtools::print_xyz_stderr | ( | const basic_polyline_3d & | p_ | ) |
| void geomtools::print_xyz_stdout | ( | const vector_3d & | p_ | ) |
| void geomtools::print_xyz_stdout | ( | const basic_polyline_3d & | p_ | ) |
| void geomtools::randomize_direction | ( | ran_func & | ran_, |
| vector_3d & | ran_dir_ | ||
| ) |
Isotropically randomize the direction of an unit vector.
| vector_3d geomtools::randomize_direction | ( | ran_func & | ran_ | ) |
Isotropically randomize the direction of an unit vector.
| void geomtools::randomize_orthogonal_direction | ( | ran_func & | ran_, |
| const vector_3d & | dir_, | ||
| vector_3d & | ran_dir_ | ||
| ) |
Isotropically randomize the direction of an unit vector orthogonal to a given direction.
| vector_3d geomtools::randomize_orthogonal_direction | ( | ran_func & | ran_, |
| const vector_3d & | ref_dir_ | ||
| ) |
Isotropically randomize the direction of an unit vector orthogonal to a given direction.
| void geomtools::rectify | ( | rotation_3d & | rot_ | ) |
Rectify a rotation 3D object.
| void geomtools::reset | ( | rotation_3d & | rot_ | ) |
Invalidate a rotation 3D object.
| void geomtools::reset_rotation_3d | ( | rotation_3d & | rot_ | ) |
Invalidate a rotation 3D object.
| void geomtools::save_wires | ( | std::ostream & | out_, |
| const wires_type & | wires_, | ||
| uint32_t | flags_ = 0 |
||
| ) |
Save a collection of polylines in an ASCII stream.
| void geomtools::set | ( | vector_3d & | vec_, |
| double | x_, | ||
| double | y_, | ||
| double | z_ | ||
| ) |
Set coordinates of a vector 3D object (cartesian)
| void geomtools::set | ( | vector_2d & | vec_, |
| double | x_, | ||
| double | y_ | ||
| ) |
Set coordinates of a vector 2D object (cartesian)
| void geomtools::set_r_phi | ( | vector_2d & | vec_, |
| double | r_, | ||
| double | phi_ | ||
| ) |
Set coordinates of a vector 2D object (polar)
| void geomtools::set_r_theta_phi | ( | vector_3d & | vec_, |
| double | r_, | ||
| double | theta_, | ||
| double | phi_ | ||
| ) |
Set coordinates of a vector 3D object (spherical)
| void geomtools::set_rho_phi_z | ( | vector_3d & | vec_, |
| double | rho_, | ||
| double | phi_, | ||
| double | z_ | ||
| ) |
Set coordinates of a vector 3D object (polar)
| void geomtools::set_vector_2d | ( | const std::vector< double > & | source_, |
| vector_2d & | target_ | ||
| ) |
| void geomtools::set_vector_3d | ( | const std::vector< double > & | source_, |
| vector_3d & | target_ | ||
| ) |
| std::string geomtools::shape_domain_flag_label | ( | shape_domain_flags_type | flag_ | ) |
| std::string geomtools::to_xy | ( | const vector_2d & | p_ | ) |
| std::string geomtools::to_xy | ( | const basic_polyline_2d & | p_ | ) |
| std::string geomtools::to_xyz | ( | const vector_3d & | p_ | ) |
| std::string geomtools::to_xyz | ( | const basic_polyline_3d & | p_ | ) |
| void geomtools::transform_wire_to | ( | const placement & | p_, |
| const polyline_type & | wire_, | ||
| polyline_type & | tr_wire_ | ||
| ) |
Transform a polyline.
| void geomtools::transform_wires_to | ( | const placement & | p_, |
| const wires_type & | wires_, | ||
| wires_type & | tr_wires_ | ||
| ) |
Transform a collection of polylines.
| void geomtools::tree_dump | ( | const rotation_3d & | rot_, |
| std::ostream & | out_, | ||
| const std::string & | title_ = "", |
||
| const std::string & | indent_ = "" |
||
| ) |
Smart print for rotation 3D object.
Convert a vector 2D object to a vector 3D object (export x and y coordinates, setting z to zero)
| std::string geomtools::vector_2d_to_xy | ( | const vector_2d & | p_ | ) |
Convert a vector 3D object to a vector 2D object (export only x and y coordinates)
| std::string geomtools::vector_3d_to_xyz | ( | const vector_3d & | p_ | ) |
| void geomtools::zero | ( | vector_3d & | vec_ | ) |
Zero a vector 3D object.
| void geomtools::zero | ( | vector_2d & | vec_ | ) |
Zero a vector 2D object.
1.8.15