\( \newcommand{\E}{\mathrm{E}} \) \( \newcommand{\A}{\mathrm{A}} \) \( \newcommand{\R}{\mathrm{R}} \) \( \newcommand{\N}{\mathrm{N}} \) \( \newcommand{\Q}{\mathrm{Q}} \) \( \newcommand{\Z}{\mathrm{Z}} \) \( \def\ccSum #1#2#3{ \sum_{#1}^{#2}{#3} } \def\ccProd #1#2#3{ \sum_{#1}^{#2}{#3} }\)

CGAL 4.8 - 3D Polyhedral Surface

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Functions
I/O Functions
3D Polyhedral Surface Reference

##

## Functions
template<class PolyhedronTraits_3 >
std::istream & | operator>> (std::istream &in, CGAL::Polyhedron_3< PolyhedronTraits_3 > &P)
template<class PolyhedronTraits_3 >
std::ostream & | operator<< (std::ostream &out, CGAL::Polyhedron_3< PolyhedronTraits_3 > &P)

## Function Documentation

template<class PolyhedronTraits_3 >

std::ostream & operator<< | ( | std::ostream & | out,
|  | CGAL::Polyhedron_3< PolyhedronTraits_3 > & | P
| ) |  |
| related

This operator writes the polyhedral surface \(P\) to the output stream out using the Object File Format, OFF, with file extension `.off`, which is also understood by GeomView [5]. The output is in ASCII format. From the polyhedral surface, only the point coordinates and facets are written. Neither normal vectors nor color attributes are used.

For OFF an ASCII and a binary format exist. The format can be selected with the CGAL modifiers for streams, set_ascii_mode and set_binary_mode respectively. The modifier set_pretty_mode can be used to allow for (a few) structuring comments in the output. Otherwise, the output would be free of comments. The default for writing is ASCII without comments.

See Also
  `CGAL::Polyhedron_3<Traits>`
  `CGAL::Polyhedron_incremental_builder_3<HDS>`
  `operator>>(std::istream&, CGAL::Polyhedron_3<PolyhedronTraits_3>&)`

template<class PolyhedronTraits_3 >

std::istream & operator>> | ( | std::istream & | in,
|  | CGAL::Polyhedron_3< PolyhedronTraits_3 > & | P
| ) |  |
| related

This operator reads a polyhedral surface in Object File Format, OFF, with file extension `.off`, which is also understood by Geomview [5], from the input stream `in` and appends it to the polyhedral surface \( P\). Only the point coordinates and facets from the input stream are used to build the polyhedral surface. Neither normal vectors nor color attributes are evaluated. If the stream `in` does not contain a permissible polyhedral surface the `ios::badbit` of the input stream `in` is set and \( P\) remains unchanged.

For OFF an ASCII and a binary format exist. The stream detects the format automatically and can read both.

See Also
  `CGAL::Polyhedron_3<Traits>`
  `CGAL::Polyhedron_incremental_builder_3<HDS>`
  `operator<<(std::ostream&, CGAL::Polyhedron_3<PolyhedronTraits_3>&)`

Implementation

This operator is implemented using the modifier mechanism for polyhedral surfaces and the `CGAL::Polyhedron_incremental_builder_3` class, which allows the construction in a single, efficient scan pass of the input and handles also all the possible flexibility of the polyhedral surface.