Falaise  4.0.1
SuperNEMO Software Toolkit
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
geomtools Namespace Reference

Namespaces

 gnuplot_drawer
 
 i_object_3d
 
 id_mgr
 
 intersection
 
 logical_volume
 
 manager
 
 mapping
 
 model_with_internal_items_tools
 
 model_with_internal_mesh_data
 
 overlapping
 
 placement
 
 polycone
 
 polyhedra
 
 sensitive
 
 stacked_model
 
 stl
 
 visibility
 

Classes

class  address_set
 
class  angular_range
 
class  base_hit
 
class  base_locator
 
class  blur_spot
 
class  bounding_data
 
class  box
 
class  circle
 
struct  classified_segment
 
class  color
 
class  composite_surface
 
class  cone
 
struct  constants
 
class  cylinder
 
class  cylindric_extrusion_boxed_model
 
class  cylindrical_sector
 
class  disk
 
class  display_data
 
class  ellipse
 
class  ellipsoid
 
class  ellipsoid_sector
 
class  elliptical_cylinder
 
class  elliptical_cylinder_sector
 
class  elliptical_sector
 
class  extruded_box
 
class  extruded_box_model
 
class  face_identifier
 
class  face_info
 
class  face_intercept_info
 
class  facet34
 
class  facet_segment
 
struct  facet_vertex
 
class  filled_utils
 
struct  foot_point_on_quadric_finder
 
class  gdml_export
 
class  gdml_writer
 
class  geom_id
 
class  geom_info
 
class  geom_map
 
class  geometry_service
 
class  geomtools_driver
 
struct  geomtools_driver_params
 
class  gnuplot_draw
 
class  gnuplot_drawer
 
class  grid_model
 
struct  has_geom_type_predicate
 
class  helix_3d
 
class  i_base_locator
 
class  i_composite_shape_3d
 
class  i_find_intercept
 
class  i_locator
 
class  i_model
 
class  i_object_3d
 
class  i_placement
 
class  i_polygon
 
class  i_shape_1d
 
class  i_shape_2d
 
class  i_shape_3d
 
class  i_stackable
 
class  i_wires_3d_rendering
 
class  i_wires_drawer
 
class  id_mgr
 
class  id_selector
 
class  intersection_3d
 
struct  io
 
class  line_3d
 
class  logical_volume
 
class  manager
 
class  mapping
 
class  mapping_plugin
 
struct  mapping_utils
 
class  material
 
class  materials_plugin
 
class  model_factory
 
class  model_with_internal_items_tools
 
class  model_with_internal_mesh_data
 
class  multiple_items_model
 
class  multiple_placement
 
class  overlapping
 
class  physical_volume
 
class  placement
 
class  plane
 
class  plate_with_hole_model
 
struct  point_on_quadric_finder
 
class  polycone
 
class  polyhedra
 
class  polyline_3d
 
class  quadrangle
 
class  quadric
 
class  rectangle
 
class  regular_3d_mesh_placement
 
class  regular_circular_placement
 
class  regular_grid_placement
 
class  regular_linear_placement
 
class  regular_polygon
 
class  replicated_boxed_model
 
class  replicated_circular_model
 
class  replicated_model
 
class  right_circular_conical_frustrum
 
class  right_circular_conical_nappe
 
class  right_polygonal_frustrum
 
class  rotated_boxed_model
 
class  rotation_wrapper_type
 
class  sensitive
 
class  shape_factory
 
class  simple_boxed_model
 
class  simple_polygon
 
class  simple_shaped_model
 
class  simple_world_model
 
class  smart_id_locator
 
class  sphere
 
class  spherical_extrusion_box_model
 
class  spherical_extrusion_cylinder_model
 
class  spherical_sector
 
class  split_segment_wrt_shape
 
class  stackable
 
class  stackable_data
 
class  stacked_model
 
class  subtraction_3d
 
class  surrounded_boxed_model
 
class  tessellated_solid
 
class  toroid_nappe
 
class  torus
 
class  triangle
 
class  tube
 
class  union_3d
 
struct  version
 
class  visibility
 
class  wall_solid
 

Typedefs

typedef CLHEP::Hep2Vector vector_2d
 
typedef CLHEP::Hep3Vector vector_3d
 
typedef CLHEP::HepRotation rotation_3d
 
typedef rotation_3d rotation
 
typedef std::map< std::string, i_model * > models_col_type
 
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_typemodel_creator_dict_type
 
typedef elliptical_cylinder elliptical_tube
 
typedef std::vector< face_infoface_info_collection_type
 
typedef std::map< geom_id, geom_infogeom_info_dict_type
 
typedef datatools::handle< i_shape_2dshape_2d_handle_type
 
typedef shape_2d_handle_type face_handle_type
 
typedef line_3d segment_3d
 
typedef model_with_internal_items_tools MWIM
 
typedef right_circular_conical_frustrum conical_frustrum
 
typedef right_circular_conical_nappe conical_nappe
 
typedef right_polygonal_frustrum polygonal_frustrum
 
typedef std::list< vector_2dbasic_polyline_2d
 
typedef std::pair< vector_3d, vector_3dbasic_segment_3d
 
typedef basic_segment_3d segment_type
 
typedef std::list< vector_3dbasic_polyline_3d
 
typedef std::list< vector_3dpolyline_type
 
typedef std::vector< vector_3dvertex_col_type
 
typedef std::list< polyline_typewires_type
 
typedef side_2d_type edge_2d_type
 
typedef rotation_wrapper_type rotation_wrapper_t
 

Enumerations

enum  orientation_type
 
enum  direction_flags_type
 
enum  direction_type
 
enum  vertex_1d_type
 
enum  path_1d_type
 
enum  side_2d_type
 
enum  shape_domain_flags_type
 
enum  euler_angles_type
 
enum  special_rotation_angle_type
 
enum  axis_type
 
enum  rotation_axis_type
 

Functions

void print_face_infos (const face_info_collection_type &, std::ostream &out_, const std::string &title_="", const std::string &indent_="")
 
 GEOMTOOLS_MODEL_CLASS_DECLARE (i_boxed_model)
 
void transform_wire_to (const placement &p_, const polyline_type &wire_, polyline_type &tr_wire_)
 
void transform_wires_to (const placement &p_, const wires_type &wires_, wires_type &tr_wires_)
 
bool parse_wires (std::istream &in_, wires_type &wires_)
 
void save_wires (std::ostream &out_, const wires_type &wires_, uint32_t flags_=0)
 
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)
 
bool angle_is_in (double angle_, double start_angle_, double delta_angle_, double angular_tolerance_=0.0, bool bounds_excluded_=false)
 
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)
 
bool parse (const std::string &token_, vector_3d &position_)
 
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_)
 
void create_xyz (rotation_3d &rot_, double phi_, double theta_, double psi_)
 
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_)
 
void extract_xyz_euler_angle_from_rotation (const rotation_3d &rot_, double &a_, double &b_, double &c_)
 
void extract_zyz_euler_angle_from_rotation (const rotation_3d &rot_, double &a_, double &b_, double &c_)
 
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_)
 
void reset_rotation_3d (rotation_3d &rot_)
 
void tree_dump (const rotation_3d &rot_, std::ostream &out_, const std::string &title_="", const std::string &indent_="")
 
void invalidate (rotation_3d &rot_)
 
void rectify (rotation_3d &rot_)
 
void invalidate_rotation_3d (rotation_3d &rot_)
 
bool is_valid (const rotation_3d &rot_)
 
bool is_valid_rotation_3d (const rotation_3d &rot_)
 
void create (vector_3d &, double x_, double y_, double z_)
 
void create_xyz (vector_3d &, double x_, double y_, double z_)
 
void create_polar (vector_3d &, double r_, double theta_, double z_)
 
void create_spherical (vector_3d &, double r_, double phi_, double theta_)
 
void set (vector_3d &vec_, double x_, double y_, double z_)
 
void set_r_theta_phi (vector_3d &vec_, double r_, double theta_, double phi_)
 
void set_rho_phi_z (vector_3d &vec_, double rho_, double phi_, double z_)
 
void zero (vector_3d &vec_)
 
const vector_3dinvalid_vector_3d ()
 
void invalidate (vector_3d &vec_)
 
void invalidate_vector_3d (vector_3d &vec_)
 
bool is_valid (const vector_3d &vec_)
 
bool is_valid_vector_3d (const vector_3d &vec_)
 
bool are_near (const vector_3d &vec1_, const vector_3d &vec2_, double tolerance_=constants::DEFAULT_TOLERANCE)
 
bool are_near_vector_3d (const vector_3d &vec1_, const vector_3d &vec2_, double tolerance_)
 
void set (vector_2d &vec_, double x_, double y_)
 
void set_r_phi (vector_2d &vec_, double r_, double phi_)
 
void zero (vector_2d &vec_)
 
void invalidate (vector_2d &vec_)
 
void invalidate_vector_2d (vector_2d &vec_)
 
const vector_2dinvalid_vector_2d ()
 
bool is_valid (const vector_2d &vec_)
 
bool is_valid_vector_2d (const vector_2d &vec_)
 
void vector_2d_to_vector_3d (const vector_2d &v2d_, vector_3d &v3d_)
 
void vector_3d_to_vector_2d (const vector_3d &v3d_, vector_2d &v2d_)
 
void make_phi_theta (vector_3d &vec_, double phi_, double theta_)
 
void randomize_direction (ran_func &ran_, vector_3d &ran_dir_)
 
vector_3d randomize_direction (ran_func &ran_)
 
void randomize_orthogonal_direction (ran_func &ran_, const vector_3d &dir_, vector_3d &ran_dir_)
 
vector_3d randomize_orthogonal_direction (ran_func &ran_, const vector_3d &ref_dir_)
 
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_)
 

Variables

 ORIENTATION_INVALID
 
 ORIENTATION_VERTICAL
 
 VERTICAL
 
 ORIENTATION_HORIZONTAL
 
 HORIZONTAL
 
 DIRECTION_FLAGS_NONE
 
 DIRECTION_FLAGS_BACK
 
 DIRECTION_FLAGS_FRONT
 
 DIRECTION_FLAGS_LEFT
 
 DIRECTION_FLAGS_RIGHT
 
 DIRECTION_FLAGS_BOTTOM
 
 DIRECTION_FLAGS_TOP
 
 DIRECTION_INVALID
 
 DIRECTION_BACK
 
 DIRECTION_XMINUS
 
 DIRECTION_FRONT
 
 DIRECTION_XPLUS
 
 DIRECTION_LEFT
 
 DIRECTION_YMINUS
 
 DIRECTION_RIGHT
 
 DIRECTION_YPLUS
 
 DIRECTION_BOTTOM
 
 DIRECTION_ZMINUS
 
 DIRECTION_TOP
 
 DIRECTION_ZPLUS
 
 VERTEX_NONE
 
 VERTEX_ALL_BITS
 
 VERTEX_ALL
 
 PATH_NONE
 
 PATH_ALL_BITS
 
 PATH_ALL
 
 SIDE_NONE
 
 EDGE_NONE
 
 SIDE_ALL_BITS
 
 EDGE_ALL_BITS
 
 SIDE_ALL
 
 EDGE_ALL
 
 SHAPE_DOMAIN_NONE
 
 SHAPE_DOMAIN_INSIDE
 
 SHAPE_DOMAIN_OUTSIDE
 
 SHAPE_DOMAIN_ON_SURFACE
 
 SHAPE_DOMAIN_INSIDE_DAUGHTER
 
 SHAPE_DOMAIN_ON_DAUGHTER_SURFACE
 
 EULER_ANGLES_INVALID
 
 EULER_ANGLES_ZXZ
 
 EULER_ANGLES_XYX
 
 EULER_ANGLES_YZY
 
 EULER_ANGLES_ZYZ
 
 EULER_ANGLES_XZX
 
 EULER_ANGLES_YXY
 
 EULER_ANGLES_XYZ
 
 EULER_ANGLES_YZX
 
 EULER_ANGLES_ZXY
 
 EULER_ANGLES_XZY
 
 EULER_ANGLES_ZYX
 
 EULER_ANGLES_YXZ
 
 ROTATION_ANGLE_INVALID
 
 ROTATION_ANGLE_0
 
 ROTATION_ANGLE_90
 
 ROTATION_ANGLE_180
 
 ROTATION_ANGLE_270
 
 AXIS_INVALID
 
 AXIS_X
 
 AXIS_Y
 
 AXIS_Z
 
 ROTATION_AXIS_INVALID
 
 ROTATION_AXIS_X
 
 ROTATION_AXIS_Y
 
 ROTATION_AXIS_Z
 

Detailed Description

forward declaration