CGAL 5.6.1 - CGAL and the Boost Graph Library

I/O Functions for the Object File Format (OFF).

Functions

template<typename Graph , typename NamedParameters = CGAL::parameters::Default_named_parameters>
bool CGAL::IO::read_OFF (std::istream &is, Graph &g, const NamedParameters &np=parameters::default_values())
 reads the graph g from data in the input stream, using the Object File Format (OFF). More...
 
template<typename Graph , typename NamedParameters = CGAL::parameters::Default_named_parameters>
bool CGAL::IO::read_OFF (const std::string &fname, Graph &g, const NamedParameters &np=parameters::default_values())
 reads the graph g from the file fname, using the Object File Format (OFF). More...
 
template<typename Graph , typename NamedParameters = CGAL::parameters::Default_named_parameters>
bool CGAL::IO::write_OFF (std::ostream &os, const Graph &g, const NamedParameters &np=parameters::default_values())
 writes the graph g in the output stream, using the Object File Format (OFF). More...
 
template<typename Graph , typename NamedParameters = CGAL::parameters::Default_named_parameters>
bool CGAL::IO::write_OFF (const std::string &fname, const Graph &g, const NamedParameters &np=parameters::default_values())
 writes the graph g in the file fname, using the Object File Format (OFF). More...
 

Function Documentation

◆ read_OFF() [1/2]

template<typename Graph , typename NamedParameters = CGAL::parameters::Default_named_parameters>
bool CGAL::IO::read_OFF ( std::istream &  is,
Graph &  g,
const NamedParameters &  np = parameters::default_values() 
)

#include <CGAL/boost/graph/IO/OFF.h>

reads the graph g from data in the input stream, using the Object File Format (OFF).

The data is expected to represent a 2-manifold (possibly with borders).

This function reads the point property as well as vertex normals (NOFF), vertex and face colors (COFF), and texture vertex coordinates (TOFF). Those properties are stored in property maps that are passed through named parameters (see below), when passed.

Ignores comment lines which start with a hash, and lines with whitespace.

Attention
The graph g is not cleared, and the data from the stream are appended.
Template Parameters
Grapha model of MutableFaceGraph
NamedParametersa sequence of Named Parameters
Parameters
isthe input stream
gthe graph to be built from the input data
npoptional Named Parameters described below
Optional Named Parameters
  • a property map associating points to the vertices of g
  • Type: a class model of WritablePropertyMap with boost::graph_traits<Graph>::vertex_descriptor as key type and Point_3 as value type
  • Default: boost::get(CGAL::vertex_point, g)
  • Extra: If this parameter is omitted, an internal property map for CGAL::vertex_point_t must be available in Graph.

  • a property map associating normals to the vertices of g
  • Type: a class model of WritablePropertyMap with boost::graph_traits<Graph>::vertex_descriptor as key type and Vector_3 as value type
  • Default: vertex normals that may exist in the input will be ignored

  • a property map associating colors to the vertices of g
  • Type: a class model of WritablePropertyMap with boost::graph_traits<Graph>::vertex_descriptor as key type and CGAL::IO::Color as value type
  • Default: vertex colors that may exist in the input will be ignored

  • a property map associating textures to the vertices of g
  • Type: a class model of WritablePropertyMap with boost::graph_traits<Graph>::vertex_descriptor as key type and Point_2 as value type
  • Default: vertex textures that may exist in the input will be ignored

  • a property map associating colors to the faces of g
  • Type: a class model of WritablePropertyMap with boost::graph_traits<Graph>::face_descriptor as key type and CGAL::IO::Color as value type
  • Default: face colors that may exist in the input will be ignored

  • whether extra information is printed when an incident occurs during reading
  • Type: Boolean
  • Default: false
Returns
true if reading was successful and the resulting mesh is valid, false otherwise.
See also
Overloads of this function for specific models of the concept FaceGraph.

◆ read_OFF() [2/2]

template<typename Graph , typename NamedParameters = CGAL::parameters::Default_named_parameters>
bool CGAL::IO::read_OFF ( const std::string &  fname,
Graph &  g,
const NamedParameters &  np = parameters::default_values() 
)

#include <CGAL/boost/graph/IO/OFF.h>

reads the graph g from the file fname, using the Object File Format (OFF).

The data is expected to represent a 2-manifold (possibly with borders).

This function reads the point property as well as vertex normals (NOFF), vertex and face colors (COFF), and texture vertex coordinates (TOFF). Those properties are stored in property maps that are passed through named parameters (see below), when passed.

Ignores comment lines which start with a hash, and lines with whitespace.

Attention
The graph g is not cleared, and the data from the file are appended.
Template Parameters
Grapha model of MutableFaceGraph
NamedParametersa sequence of Named Parameters
Parameters
fnamethe name of the input file
gthe graph to be built from the input data
npoptional Named Parameters described below
Optional Named Parameters
  • a property map associating points to the vertices of g
  • Type: a class model of WritablePropertyMap with boost::graph_traits<Graph>::vertex_descriptor as key type and Point_3 as value type
  • Default: boost::get(CGAL::vertex_point, g)
  • Extra: If this parameter is omitted, an internal property map for CGAL::vertex_point_t must be available in Graph.

  • a property map associating normals to the vertices of g
  • Type: a class model of WritablePropertyMap with boost::graph_traits<Graph>::vertex_descriptor as key type and Vector_3 as value type
  • Default: vertex normals that may exist in the input will be ignored

  • a property map associating colors to the vertices of g
  • Type: a class model of WritablePropertyMap with boost::graph_traits<Graph>::vertex_descriptor as key type and CGAL::IO::Color as value type
  • Default: vertex colors that may exist in the input will be ignored

  • a property map associating textures to the vertices of g
  • Type: a class model of WritablePropertyMap with boost::graph_traits<Graph>::vertex_descriptor as key type and Point_2 as value type
  • Default: vertex textures that may exist in the input will be ignored

  • a property map associating colors to the faces of g
  • Type: a class model of WritablePropertyMap with boost::graph_traits<Graph>::face_descriptor as key type and CGAL::IO::Color as value type
  • Default: face colors that may exist in the input will be ignored

  • whether extra information is printed when an incident occurs during reading
  • Type: Boolean
  • Default: false
Returns
true if reading was successful and the resulting mesh is valid, false otherwise.
See also
Overloads of this function for specific models of the concept FaceGraph.

◆ write_OFF() [1/2]

template<typename Graph , typename NamedParameters = CGAL::parameters::Default_named_parameters>
bool CGAL::IO::write_OFF ( std::ostream &  os,
const Graph &  g,
const NamedParameters &  np = parameters::default_values() 
)

#include <CGAL/boost/graph/IO/OFF.h>

writes the graph g in the output stream, using the Object File Format (OFF).

Template Parameters
Grapha model of FaceListGraph and HalfedgeListGraph
NamedParametersa sequence of Named Parameters
Parameters
osthe output stream
gthe graph to be written
npoptional Named Parameters described below
Optional Named Parameters
  • a property map associating points to the vertices of g
  • Type: a class model of ReadablePropertyMap with boost::graph_traits<Graph>::vertex_descriptor as key type and Point_3 as value type
  • Default: boost::get(CGAL::vertex_point, g)
  • Extra: If this parameter is omitted, an internal property map for CGAL::vertex_point_t must be available in Graph.

  • a property map associating normals to the vertices of g
  • Type: a class model of ReadablePropertyMap with boost::graph_traits<Graph>::vertex_descriptor as key type and Vector_3 as value type
  • Default: no vertex normals in the output

  • a property map associating colors to the vertices of g
  • Type: a class model of ReadablePropertyMap with boost::graph_traits<Graph>::vertex_descriptor as key type and CGAL::IO::Color as value type
  • Default: no vertex colors in the output

  • a property map associating textures to the vertices of g
  • Type: a class model of ReadablePropertyMap with boost::graph_traits<Graph>::vertex_descriptor as key type and Point_2 as value type
  • Default: no vertex textures in the output

  • a property map associating colors to the faces of g
  • Type: a class model of ReadablePropertyMap with boost::graph_traits<Graph>::face_descriptor as key type and CGAL::IO::Color as value type
  • Default: no face colors in the output

  • a parameter used to set the precision (i.e. how many digits are generated) of the output stream
  • Type: int
  • Default: the precision of the stream os
Returns
true if writing was successful, false otherwise.
See also
Overloads of this function for specific models of the concept FaceGraph.

◆ write_OFF() [2/2]

template<typename Graph , typename NamedParameters = CGAL::parameters::Default_named_parameters>
bool CGAL::IO::write_OFF ( const std::string &  fname,
const Graph &  g,
const NamedParameters &  np = parameters::default_values() 
)

#include <CGAL/boost/graph/IO/OFF.h>

writes the graph g in the file fname, using the Object File Format (OFF).

Template Parameters
Grapha model of FaceListGraph and HalfedgeListGraph
NamedParametersa sequence of Named Parameters
Parameters
fnamethe name of the output file
gthe graph to be written
npoptional Named Parameters described below
Optional Named Parameters
  • a property map associating points to the vertices of g
  • Type: a class model of ReadablePropertyMap with boost::graph_traits<Graph>::vertex_descriptor as key type and Point_3 as value type
  • Default: boost::get(CGAL::vertex_point, g)
  • Extra: If this parameter is omitted, an internal property map for CGAL::vertex_point_t must be available in Graph.

  • a property map associating normals to the vertices of g
  • Type: a class model of ReadablePropertyMap with boost::graph_traits<Graph>::vertex_descriptor as key type and Vector_3 as value type
  • Default: no vertex normals in the output

  • a property map associating colors to the vertices of g
  • Type: a class model of ReadablePropertyMap with boost::graph_traits<Graph>::vertex_descriptor as key type and CGAL::IO::Color as value type
  • Default: no vertex colors in the output

  • a property map associating textures to the vertices of g
  • Type: a class model of ReadablePropertyMap with boost::graph_traits<Graph>::vertex_descriptor as key type and Point_2 as value type
  • Default: no vertex textures in the output

  • a property map associating colors to the faces of g
  • Type: a class model of ReadablePropertyMap with boost::graph_traits<Graph>::face_descriptor as key type and CGAL::IO::Color as value type
  • Default: no face colors in the output

  • a parameter used to set the precision (i.e. how many digits are generated) of the output stream
  • Type: int
  • Default: 6
Returns
true if writing was successful, false otherwise.
See also
Overloads of this function for specific models of the concept FaceGraph.