Bayeux  3.4.1
Core Foundation library for SuperNEMO
intersection.h
Go to the documentation of this file.
1 /* Author(s): F.Mauger <mauger@lpccaen.in2p3.fr>
3  * Creation date: 2006-11-28
4  * Last modified: 2008-05-24
5  *
6  * License:
7  *
8  * Description:
9  * Basic intersection algorithms
10  *
11  * History:
12  *
13  */
14 
15 #ifndef GEOMTOOLS_INTERSECTION_H
16 #define GEOMTOOLS_INTERSECTION_H 1
17 
18 // This project:
19 #include <geomtools/utils.h>
20 
21 namespace geomtools {
22 
24  namespace intersection {
25 
26 
27  bool find_intersection_line_circle_2d (const vector_2d & line_origin_,
28  const vector_2d & line_direction_,
29  const vector_2d & circle_origin_,
30  double circle_radius_,
31  size_t & nsols_,
32  double & u1_,
33  double & u2_);
34 
35  bool find_intersection_line_circle_2d (const vector_2d & line_origin_,
36  const vector_2d & line_direction_,
37  const vector_2d & circle_origin_,
38  double circle_radius_,
39  size_t & nsols_,
40  vector_2d & pos1_,
41  vector_2d & pos2_);
42 
43 
44  bool find_intersection_segment_disk_2d (const vector_2d & segment_first_,
45  const vector_2d & segment_last_,
46  const vector_2d & disk_origin_,
47  double disk_radius_,
48  vector_2d & first_,
49  vector_2d & last_);
50 
51  } // end of namespace intersection
52 
53 } // end of namespace geomtools
54 
55 #endif // GEOMTOOLS_INTERSECTION_H
56 
57 /*
58 ** Local Variables: --
59 ** mode: c++ --
60 ** c-file-style: "gnu" --
61 ** tab-width: 2 --
62 ** End: --
63 */
CLHEP::Hep2Vector vector_2d
Alias for the CLHEP 2D-vector class.
Definition: clhep.h:60
bool find_intersection_segment_disk_2d(const vector_2d &segment_first_, const vector_2d &segment_last_, const vector_2d &disk_origin_, double disk_radius_, vector_2d &first_, vector_2d &last_)
bool find_intersection_line_circle_2d(const vector_2d &line_origin_, const vector_2d &line_direction_, const vector_2d &circle_origin_, double circle_radius_, size_t &nsols_, double &u1_, double &u2_)
Top-level namespace of the Bayeux/geomtools module library.
Definition: electromagnetic_field_manager.h:39