CGAL 6.1 - 2D Triangulations on Hyperbolic Surfaces

Loading...
Searching...
No Matches
Functions
Input/Output Functions
Reference Manual

##

## Functions
std::ostream & | CGAL::operator<< (std::ostream &s, const Triangulation_on_hyperbolic_surface_2< Traits > &triangulation)
| inserts the triangulation in a stream.
std::istream & | CGAL::operator>> (std::istream &s, Triangulation_on_hyperbolic_surface_2< Traits > &triangulation)
| extracts the triangulation from a stream.
std::ostream & | CGAL::operator<< (std::ostream &s, const Hyperbolic_fundamental_domain_2< Traits > &domain)
| inserts the domain in a stream.
std::istream & | CGAL::operator>> (std::istream &s, Hyperbolic_fundamental_domain_2< Traits > &domain)
| extracts the domain from a stream.
std::ostream & | CGAL::operator<< (std::ostream &s, const Hyperbolic_isometry_2< Traits > &isometry)
| inserts the isometry in a stream.

## Function Documentation

## ◆ operator<<() [1/2]

std::ostream & CGAL::operator<< | ( | std::ostream & | s,
|  | const Hyperbolic_fundamental_domain_2< Traits > & | domain
| ) |  |

`#include <CGAL/Triangulation_on_hyperbolic_surface_2_IO.h>`

inserts the domain in a stream.

The format of the output is the following. The first line prints the number \(n\) of vertices of the domain. For \( i=0 \) to \( n-1 \) the index of the side paired to side \( i \) is printed on a separate line. For \( i=0 \) to \( n-1 \) the i-th vertex is printed on a separate line.

Precondition
  `Hyperbolic_fundamental_domain_2< Traits >::is_valid()`

## ◆ operator<<() [2/2]

std::ostream & CGAL::operator<< | ( | std::ostream & | s,
|  | const Triangulation_on_hyperbolic_surface_2< Traits > & | triangulation
| ) |  |

`#include <CGAL/Triangulation_on_hyperbolic_surface_2_IO.h>`

inserts the triangulation in a stream.

The format of the output is the following. Each dart of the triangulation is given an index between \( 0 \) and \( n-1 \), where \( n \) is the number of darts of the triangulation. The first line contains the number \( n \) of darts. The next line contains either 'yes' or 'no' and tells whether the triangulation has an anchor. If the triangulation has an anchor, then the four next lines print the index of the dart of the anchor, and the three vertices of the anchor. Then, for every triangle \( t \), the indices of the three darts of \( t \) are printed on three distinct lines. Finally, for every edge \( e \), the indices of the two darts of \( e \) are printed on two distinct lines, followed by a third line on which the cross ratio of \( e \) is printed.

Precondition
  `Triangulation_on_hyperbolic_surface_2<Traits>::is_valid()`

## ◆ operator>>() [1/2]

std::istream & CGAL::operator>> | ( | std::istream & | s,
|  | Hyperbolic_fundamental_domain_2< Traits > & | domain
| ) |  |

`#include <CGAL/Triangulation_on_hyperbolic_surface_2_IO.h>`

extracts the domain from a stream.

The format of the input must be the same as the format of the output of the '<<' operator for Hyperbolic_fundamental_domain_2.

## ◆ operator>>() [2/2]

std::istream & CGAL::operator>> | ( | std::istream & | s,
|  | Triangulation_on_hyperbolic_surface_2< Traits > & | triangulation
| ) |  |

`#include <CGAL/Triangulation_on_hyperbolic_surface_2_IO.h>`

extracts the triangulation from a stream.

The format of the input should be the same as the format of the output of the '<<' operator for Triangulation_on_hyperbolic_surface_2.