CGAL 5.6.3 - 2D Arrangements

Loading...
Searching...
No Matches
List of all members
CGAL::Arr_geodesic_arc_on_sphere_traits_2< Kernel, X, Y >::X_monotone_curve_2 Class Reference

`#include <CGAL/Arr_geodesic_arc_on_sphere_traits_2.h>`

## Definition

template<typename Kernel, typename X, typename Y>
class CGAL::Arr_geodesic_arc_on_sphere_traits_2< Kernel, X, Y >::X_monotone_curve_2

The `X_monotone_curve_2` class nested within the traits is used to represent an \(x\)-monotone geodesic arc on the a sphere centered at the origin.

The pre-image of an \(x\)-monotone geodesic arc does not intersect the identified left and right sides of the boundary of the parameter space.

Is Model Of:

  `Assignable`

  `DefaultConstructible`

  `CopyConstructible`

## Types
typedef Arr_geodesic_arc_on_sphere_traits_2< Kernel, X, Y >::Point_2 | Point_2

## Creation
| X_monotone_curve_2 (const Point_2 &source, const Point_2 &target, const Direction_3 &normal, bool is_vertical, bool is_directed_right, bool is_full=false, bool is_degenerate=false, bool is_empty=false)
| Constructs an \(x\)-monotone geodesic arc.
| X_monotone_curve_2 (const Point_2 &source, const Point_2 &target, const Direction_3 &normal)
| Construct an \(x\)-monotone geodesic arc.
| X_monotone_curve_2 (const Point_2 &point, const Direction_3 &normal)
| Construct a full great-circle.

## Operations
void | set_source (const Point_2 &source)
| Sets the source endpoint.
void | set_target (const Point_2 &target)
| Sets the target endpoint.
void | set_normal (const Direction_3 &normal)
| Sets the normal of the underlying plane.
void | set_is_vertical (bool flag)
| Sets the flag that indicates whether the arc is vertical.
void | set_is_directed_right (bool flag)
| Sets the flag that indicates whether the direction of the arc pre-image in the parameter space is from left to right.
void | set_is_full (bool flag)
| Sets the flag that indicates whether the arc is a full great circle.
void | set_is_degenerate (bool flag)
| Sets the flag that indicates whether the arc degenerates to a point.
void | set_is_empty (bool flag)
| Sets the flag that indicates whether the arc is empty.
const Point_2 & | source () const
| Obtains the source point.
const Point_2 & | target () const
| Obtains the target point.
const Direction_3 & | normal () const
| Obtains the normal to the containing plane.
const Point_2 & | left () const
| Obtains the (lexicographically) left endpoint direction.
const Point_2 & | right () const
| Obtains the (lexicographically) right endpoint.
bool | is_vertical () const
| Determines whether the arc is vertical.
bool | is_directed_right () const
| Determines whether the arc is directed lexicographically from left to right.
bool | is_full () const
| Determines whether the arc is a great circle.
bool | is_degenerate () const
| Determines whether the arc is degenerate.
bool | is_empty () const
| Determines whether the arc is empty.
bool | is_meridian () const
| Determines whether the arc is a meridian.

## Constructor & Destructor Documentation

## ◆ X_monotone_curve_2() [1/3]

template<typename Kernel , typename X , typename Y >

CGAL::Arr_geodesic_arc_on_sphere_traits_2< Kernel, X, Y >::X_monotone_curve_2::X_monotone_curve_2 | ( | const Point_2 & | source,
|  | const Point_2 & | target,
|  | const Direction_3 & | normal,
|  | bool | is_vertical,
|  | bool | is_directed_right,
|  | bool | is_full = `false`,
|  | bool | is_degenerate = `false`,
|  | bool | is_empty = `false`
| ) |  |

Constructs an \(x\)-monotone geodesic arc.

Parameters

  [in] | source | the source point of the arc.
  [in] | target | the target point of the arc.
  [in] | normal | the normal of the plane that contains the arc.
  [in] | is_vertical | is the arc vertical ?
  [in] | is_directed_right | is the arc directed from left to right?
  [in] | is_full | is the arc a full great circle?
  [in] | is_degenerate | is the arc degenerate (single point)?
  [in] | is_empty | is the arc empty?

Precondition
  Both endpoints lie on the given plane.

## ◆ X_monotone_curve_2() [2/3]

template<typename Kernel , typename X , typename Y >

CGAL::Arr_geodesic_arc_on_sphere_traits_2< Kernel, X, Y >::X_monotone_curve_2::X_monotone_curve_2 | ( | const Point_2 & | source,
|  | const Point_2 & | target,
|  | const Direction_3 & | normal
| ) |  |

Construct an \(x\)-monotone geodesic arc.

Parameters

  [in] | normal | the normal of the plane containing the arc.
  [in] | source | the source-point direction.
  [in] | target | the target-point direction.

Precondition
  Both endpoints lie on the given plane.

## ◆ X_monotone_curve_2() [3/3]

template<typename Kernel , typename X , typename Y >

CGAL::Arr_geodesic_arc_on_sphere_traits_2< Kernel, X, Y >::X_monotone_curve_2::X_monotone_curve_2 | ( | const Point_2 & | point,
|  | const Direction_3 & | normal
| ) |  |

Construct a full great-circle.

Parameters

  [in] | point | the endpoint of the full great-circle.
  [in] | normal | the normal of the plane containing the arc.

Precondition
  the point lies on the given plane.
  the point pre-image lies on the identified left and right sides of the boundary of the parameter space.

## Member Function Documentation

## ◆ set_is_degenerate()

template<typename Kernel , typename X , typename Y >

void CGAL::Arr_geodesic_arc_on_sphere_traits_2< Kernel, X, Y >::X_monotone_curve_2::set_is_degenerate | ( | bool | flag | ) |

Sets the flag that indicates whether the arc degenerates to a point.

Parameters

  [in] | flag | indicates whether the arc degenerates to a point.

## ◆ set_is_directed_right()

template<typename Kernel , typename X , typename Y >

void CGAL::Arr_geodesic_arc_on_sphere_traits_2< Kernel, X, Y >::X_monotone_curve_2::set_is_directed_right | ( | bool | flag | ) |

Sets the flag that indicates whether the direction of the arc pre-image in the parameter space is from left to right.

Parameters

  flag | indicates whether the arc pre-image in the parameter space is from left to right.

## ◆ set_is_empty()

template<typename Kernel , typename X , typename Y >

void CGAL::Arr_geodesic_arc_on_sphere_traits_2< Kernel, X, Y >::X_monotone_curve_2::set_is_empty | ( | bool | flag | ) |

Sets the flag that indicates whether the arc is empty.

Parameters

  [in] | flag | indicates whether the arc is empty.

## ◆ set_is_full()

template<typename Kernel , typename X , typename Y >

void CGAL::Arr_geodesic_arc_on_sphere_traits_2< Kernel, X, Y >::X_monotone_curve_2::set_is_full | ( | bool | flag | ) |

Sets the flag that indicates whether the arc is a full great circle.

Parameters

  [in] | flag | indicates whether the arc is a full great circle.

## ◆ set_is_vertical()

template<typename Kernel , typename X , typename Y >

void CGAL::Arr_geodesic_arc_on_sphere_traits_2< Kernel, X, Y >::X_monotone_curve_2::set_is_vertical | ( | bool | flag | ) |

Sets the flag that indicates whether the arc is vertical.

Parameters

  [in] | flag | indicates whether the arc pre-image in the parameter space is vertical.

## ◆ set_normal()

template<typename Kernel , typename X , typename Y >

void CGAL::Arr_geodesic_arc_on_sphere_traits_2< Kernel, X, Y >::X_monotone_curve_2::set_normal | ( | const Direction_3 & | normal | ) |

Sets the normal of the underlying plane.

Parameters

  [in] | normal | the updated normal of the underlying plane.

## ◆ set_source()

template<typename Kernel , typename X , typename Y >

void CGAL::Arr_geodesic_arc_on_sphere_traits_2< Kernel, X, Y >::X_monotone_curve_2::set_source | ( | const Point_2 & | source | ) |

Sets the source endpoint.

Parameters

  [in] | source | the updated source endpoint.

## ◆ set_target()

template<typename Kernel , typename X , typename Y >

void CGAL::Arr_geodesic_arc_on_sphere_traits_2< Kernel, X, Y >::X_monotone_curve_2::set_target | ( | const Point_2 & | target | ) |

Sets the target endpoint.

Parameters

  [in] | target | the updated target endpoint.