BWAPI
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Friends
Arr_geodesic_arc_on_sphere_traits_2< T_Kernel >::Intersect_2 Class Reference

#include <Arr_geodesic_arc_on_sphere_traits_2.h>

Collaboration diagram for Arr_geodesic_arc_on_sphere_traits_2< T_Kernel >::Intersect_2:
Collaboration graph
[legend]

List of all members.

Public Member Functions

template<typename OutputIterator >
OutputIterator operator() (const X_monotone_curve_2 &xc1, const X_monotone_curve_2 &xc2, OutputIterator oi) const

Protected Types

typedef
Arr_geodesic_arc_on_sphere_traits_2
< Kernel
Traits

Protected Member Functions

 Intersect_2 (const Traits *traits)

Protected Attributes

const Traitsm_traits

Friends

class Arr_geodesic_arc_on_sphere_traits_2< Kernel >

Detailed Description

template<typename T_Kernel>
class Arr_geodesic_arc_on_sphere_traits_2< T_Kernel >::Intersect_2

A functor that computes intersections between x-monotone arcs.


Member Typedef Documentation

template<typename T_Kernel >
typedef Arr_geodesic_arc_on_sphere_traits_2<Kernel> Arr_geodesic_arc_on_sphere_traits_2< T_Kernel >::Intersect_2::Traits [protected]

Constructor & Destructor Documentation

template<typename T_Kernel >
Arr_geodesic_arc_on_sphere_traits_2< T_Kernel >::Intersect_2::Intersect_2 ( const Traits traits) [inline, protected]

Constructor

Parameters:
traitsthe traits (in case it has state)

Member Function Documentation

template<typename T_Kernel >
template<typename OutputIterator >
OutputIterator Arr_geodesic_arc_on_sphere_traits_2< T_Kernel >::Intersect_2::operator() ( const X_monotone_curve_2 xc1,
const X_monotone_curve_2 xc2,
OutputIterator  oi 
) const [inline]

Find the intersections of the two given curves and insert them into the given output iterator. As two spherical_arcs may itersect only once, only a single intersection will be contained in the iterator.

Parameters:
xc1the first curve.
xc2the second curve.
oithe output iterator.
Returns:
the past-the-end iterator.
Precondition:
xc1 and xc2 are not degenerate

If the endpoints of one arc coinside with the 2 poles resp, the other arc is completely overlapping.

Find an endpoint that does not coincide with a pole, and project it onto the xy plane. If the projection coincide with the negative x, project onto the zx plane. Otherwise project onto the yz plane.

Here is the call graph for this function:


Friends And Related Function Documentation

template<typename T_Kernel >
friend class Arr_geodesic_arc_on_sphere_traits_2< Kernel > [friend]

Member Data Documentation

template<typename T_Kernel >
const Traits* Arr_geodesic_arc_on_sphere_traits_2< T_Kernel >::Intersect_2::m_traits [protected]

The traits (in case it has state)


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines