Add missing doc

This commit is contained in:
Maxime Gimeno 2020-06-17 14:01:02 +02:00
parent c25e9bc37e
commit f83de97125
10 changed files with 440 additions and 100 deletions

View File

@ -107,11 +107,21 @@ public:
/// \returns `true` if the resulting mesh is valid.
///
/// \see \ref IOStreamGocad
template <typename FaceGraph, typename CGAL_BGL_NP_TEMPLATE_PARAMETERS>
template <typename FaceGraph,
#ifndef DOXYGEN_RUNNING
typename CGAL_BGL_NP_TEMPLATE_PARAMETERS
#else
typename NamedParameters
#endif
>
bool read_GOCAD(std::istream& is,
std::pair<std::string, std::string>& name_and_color,
FaceGraph& g,
const CGAL_BGL_NP_CLASS& np,
#ifndef DOXYGEN_RUNNING
const CGAL_BGL_NP_CLASS& np,
#else
const NamedParameters& np,
#endif
bool verbose = true)
{
typedef typename CGAL::GetVertexPointMap<FaceGraph, CGAL_BGL_NP_CLASS>::type VPM;
@ -166,12 +176,22 @@ bool read_GOCAD(std::istream& is,
///
/// \pre The data must represent a 2-manifold
///
/// \see \ref IOStreamGOCAD
template <typename FaceGraph, typename CGAL_BGL_NP_TEMPLATE_PARAMETERS>
/// \see \ref IOStreamGocad
template <typename FaceGraph,
#ifndef DOXYGEN_RUNNING
typename CGAL_BGL_NP_TEMPLATE_PARAMETERS
#else
typename NamedParameters
#endif
>
bool read_GOCAD(const char* fname,
std::pair<std::string, std::string>& name_and_color,
FaceGraph& g,
#ifndef DOXYGEN_RUNNING
const CGAL_BGL_NP_CLASS& np,
#else
const NamedParameters& np,
#endif
bool verbose = true)
{
std::ifstream is(fname);
@ -222,7 +242,13 @@ bool read_GOCAD(const std::string& fname, FaceGraph& g) { return read_GOCAD(fnam
/// \cgalNamedParamsEnd
///
/// \see \ref IOStreamGocad
template <typename FaceGraph, typename CGAL_BGL_NP_TEMPLATE_PARAMETERS>
template <typename FaceGraph,
#ifndef DOXYGEN_RUNNING
typename CGAL_BGL_NP_TEMPLATE_PARAMETERS
#else
typename NamedParameters
#endif
>
bool write_GOCAD(std::ostream& os,
const char* name,
const FaceGraph& g,
@ -309,17 +335,34 @@ bool write_GOCAD(std::ostream& os,
///
/// \sa Overloads of this function for specific models of the concept `FaceGraph`.
///
/// \see \ref IOStreamGOCAD
template <typename FaceGraph, typename CGAL_BGL_NP_TEMPLATE_PARAMETERS>
/// \see \ref IOStreamGocad
template <typename FaceGraph,
#ifndef DOXYGEN_RUNNING
typename CGAL_BGL_NP_TEMPLATE_PARAMETERS
#else
typename NamedParameters
#endif
>
bool write_GOCAD(const char* fname,
const FaceGraph& g,
const CGAL_BGL_NP_CLASS& np)
#ifndef DOXYGEN_RUNNING
const CGAL_BGL_NP_CLASS& np
#else
const NamedParameters& np
#endif
)
{
std::ofstream os(fname);
return write_GOCAD(os, fname, g, np);
}
template <typename FaceGraph, typename CGAL_BGL_NP_TEMPLATE_PARAMETERS>
template <typename FaceGraph,
#ifndef DOXYGEN_RUNNING
typename CGAL_BGL_NP_TEMPLATE_PARAMETERS
#else
typename NamedParameters
#endif
>
bool write_GOCAD(const std::string& fname, const FaceGraph& g, const CGAL_BGL_NP_CLASS& np)
{
return write_GOCAD(fname.c_str(), g, np);
@ -345,8 +388,20 @@ bool write_GOCAD(const std::string& fname, const FaceGraph& g, const CGAL_BGL_NP
/// \cgalNamedParamsEnd
///
/// \see \ref IOStreamGocad
template <typename FaceGraph, typename CGAL_BGL_NP_TEMPLATE_PARAMETERS>
bool write_GOCAD(std::ostream& os, const FaceGraph& g, const CGAL_BGL_NP_CLASS& np)
template <typename FaceGraph,
#ifndef DOXYGEN_RUNNING
typename CGAL_BGL_NP_TEMPLATE_PARAMETERS
#else
typename NamedParameters
#endif
>
bool write_GOCAD(std::ostream& os, const FaceGraph& g,
#ifndef DOXYGEN_RUNNING
const CGAL_BGL_NP_CLASS& np
#else
const NamedParameters& np
#endif
)
{
return write_GOCAD(os, "anonymous", g, np);
}

View File

@ -84,7 +84,6 @@ public:
\cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `g`.
If this parameter is omitted, an internal property map for
`CGAL::vertex_point_t` should be available in `FaceGraph`\cgalParamEnd
\cgalParamBegin{vertex_normal_map} the property map with the normals associated to the vertices of `g`.\cgalParamEnd
\cgalNamedParamsEnd
\pre The data must represent a 2-manifold
@ -96,11 +95,21 @@ public:
\sa Overloads of this function for specific models of the concept `FaceGraph`.
\see \ref IOStreamOBJ
*/
template <typename FaceGraph, typename CGAL_BGL_NP_TEMPLATE_PARAMETERS>
template <typename FaceGraph,
#ifndef DOXYGEN_RUNNING
typename CGAL_BGL_NP_TEMPLATE_PARAMETERS
#else
typename NamedParameters
#endif
>
bool read_OBJ(std::istream& is,
FaceGraph& g,
const CGAL_BGL_NP_CLASS& np,
bool verbose = true)
#ifndef DOXYGEN_RUNNING
const CGAL_BGL_NP_CLASS& np
#else
const NamedParameters& np
#endif
,bool verbose = true)
{
typedef typename CGAL::GetVertexPointMap<FaceGraph, CGAL_BGL_NP_CLASS>::type VPM;
typedef typename boost::property_traits<VPM>::value_type Point;
@ -127,7 +136,6 @@ bool read_OBJ(std::istream& is,
\cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `g`.
If this parameter is omitted, an internal property map for
`CGAL::vertex_point_t` should be available in `FaceGraph`\cgalParamEnd
\cgalParamBegin{vertex_normal_map} the property map with the normals associated to the vertices of `g`.\cgalParamEnd
\cgalNamedParamsEnd
\pre The data must represent a 2-manifold
@ -139,11 +147,21 @@ bool read_OBJ(std::istream& is,
\sa Overloads of this function for specific models of the concept `FaceGraph`.
\see \ref IOStreamOBJ
*/
template <typename FaceGraph, typename CGAL_BGL_NP_TEMPLATE_PARAMETERS>
template <typename FaceGraph,
#ifndef DOXYGEN_RUNNING
typename CGAL_BGL_NP_TEMPLATE_PARAMETERS
#else
typename NamedParameters
#endif
>
bool read_OBJ(const char* fname,
FaceGraph& g,
const CGAL_BGL_NP_CLASS& np,
bool verbose = true)
#ifndef DOXYGEN_RUNNING
const CGAL_BGL_NP_CLASS& np
#else
const NamedParameters& np
#endif
,bool verbose = true)
{
std::ifstream in(fname);
return read_OBJ(in, g, np, verbose);
@ -185,7 +203,6 @@ bool read_OBJ(const std::string& fname, FaceGraph& g) { return read_OBJ(fname, g
\cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `g`.
If this parameter is omitted, an internal property map for
`CGAL::vertex_point_t` should be available in `FaceGraph`\cgalParamEnd
\cgalParamBegin{vertex_normal_map} the property map with the normals associated to the vertices of `g`.\cgalParamEnd
\cgalNamedParamsEnd
\returns `true` if writing was successful.
@ -193,10 +210,21 @@ bool read_OBJ(const std::string& fname, FaceGraph& g) { return read_OBJ(fname, g
\sa Overloads of this function for specific models of the concept `FaceGraph`.
\see \ref IOStreamOBJ
*/
template <typename FaceGraph, typename CGAL_BGL_NP_TEMPLATE_PARAMETERS>
template <typename FaceGraph,
#ifndef DOXYGEN_RUNNING
typename CGAL_BGL_NP_TEMPLATE_PARAMETERS
#else
typename NamedParameters
#endif
>
bool write_OBJ(std::ostream& os,
const FaceGraph& g,
const CGAL_BGL_NP_CLASS& np)
#ifndef DOXYGEN_RUNNING
const CGAL_BGL_NP_CLASS& np
#else
const NamedParameters& np
#endif
)
{
IO::internal::Generic_facegraph_printer<std::ostream, FaceGraph, CGAL::File_writer_wavefront> printer(os);
return printer(g, np);
@ -218,7 +246,6 @@ bool write_OBJ(std::ostream& os,
\cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `g`.
If this parameter is omitted, an internal property map for
`CGAL::vertex_point_t` should be available in `FaceGraph`\cgalParamEnd
\cgalParamBegin{vertex_normal_map} the property map with the normals associated to the vertices of `g`.\cgalParamEnd
\cgalNamedParamsEnd
\returns `true` if writing was successful.
@ -226,10 +253,21 @@ bool write_OBJ(std::ostream& os,
\sa Overloads of this function for specific models of the concept `FaceGraph`.
\see \ref IOStreamOBJ
*/
template <typename FaceGraph, typename CGAL_BGL_NP_TEMPLATE_PARAMETERS>
template <typename FaceGraph,
#ifndef DOXYGEN_RUNNING
typename CGAL_BGL_NP_TEMPLATE_PARAMETERS
#else
typename NamedParameters
#endif
>
bool write_OBJ(const char* fname,
const FaceGraph& g,
const CGAL_BGL_NP_CLASS& np)
#ifndef DOXYGEN_RUNNING
const CGAL_BGL_NP_CLASS& np
#else
const NamedParameters& np
#endif
)
{
std::ofstream os(fname);
return write_OBJ(os, g, np);

View File

@ -97,10 +97,10 @@ bool read_OFF_BGL(std::istream& is,
\cgalNamedParamsBegin
\cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `g`.
If this parameter is omitted, an internal property map for `CGAL::vertex_point_t` should be available in `FaceGraph`\cgalParamEnd
\cgalParamBegin{vertex_normal_map} the property map with the normals associated to the vertices of `g`.\cgalParamEnd
\cgalParamBegin{vertex_color_map} the property map with the colors associated to the vertices of `g`.\cgalParamEnd
\cgalParamBegin{vertex_texture_map} the property map with the textures associated to the vertices of `g`.\cgalParamEnd
\cgalParamBegin{face_color_map} the property map with the colors associated to the faces of `g`.\cgalParamEnd
`vertex_normal_map` the property map with the normals associated to the vertices of `g`.
`vertex_color_map` the property map with the colors associated to the vertices of `g`.
`vertex_texture_map` the property map with the textures associated to the vertices of `g`.
`face_color_map` the property map with the colors associated to the faces of `g`.
\cgalNamedParamsEnd
\pre The data must represent a 2-manifold
@ -113,8 +113,20 @@ bool read_OFF_BGL(std::istream& is,
\see \ref IOStreamOFF
*/
template <typename FaceGraph, typename CGAL_BGL_NP_TEMPLATE_PARAMETERS>
bool read_OFF(std::istream& is, FaceGraph& g, const CGAL_BGL_NP_CLASS& np, bool verbose = true)
template <typename FaceGraph,
#ifndef DOXYGEN_RUNNING
typename CGAL_BGL_NP_TEMPLATE_PARAMETERS
#else
typename NamedParameters
#endif
>
bool read_OFF(std::istream& is, FaceGraph& g,
#ifndef DOXYGEN_RUNNING
const CGAL_BGL_NP_CLASS& np
#else
const NamedParameters& np
#endif
, bool verbose = true)
{
return IO::internal::read_OFF_BGL(is, g, np, verbose);
}
@ -137,11 +149,11 @@ bool read_OFF(std::istream& is, FaceGraph& g, const CGAL_BGL_NP_CLASS& np, bool
\cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `g`.
If this parameter is omitted, an internal property map for
`CGAL::vertex_point_t` should be available in `FaceGraph`\cgalParamEnd
\cgalParamBegin{vertex_normal_map} the property map with the normals associated to the vertices of `g`.\cgalParamEnd
\cgalParamBegin{vertex_color_map} the property map with the colors associated to the vertices of `g`.\cgalParamEnd
\cgalParamBegin{vertex_texture_map} the property map with the textures associated to the vertices of `g`.\cgalParamEnd
\cgalParamBegin{face_color_map} the property map with the colors associated to the faces of `g`.\cgalParamEnd
\cgalNamedParamsEnd
`vertex_normal_map` the property map with the normals associated to the vertices of `g`.
`vertex_color_map` the property map with the colors associated to the vertices of `g`.
`vertex_texture_map` the property map with the textures associated to the vertices of `g`.
`face_color_map` the property map with the colors associated to the faces of `g`.
\pre The data must represent a 2-manifold
@ -152,9 +164,20 @@ bool read_OFF(std::istream& is, FaceGraph& g, const CGAL_BGL_NP_CLASS& np, bool
\sa Overloads of this function for specific models of the concept `FaceGraph`.
\see \ref IOStreamOFF
*/
template <typename FaceGraph, typename CGAL_BGL_NP_TEMPLATE_PARAMETERS>
bool read_OFF(const char* fname, FaceGraph& g, const CGAL_BGL_NP_CLASS& np,
bool verbose = true)
template <typename FaceGraph,
#ifndef DOXYGEN_RUNNING
typename CGAL_BGL_NP_TEMPLATE_PARAMETERS
#else
typename NamedParameters
#endif
>
bool read_OFF(const char* fname, FaceGraph& g,
#ifndef DOXYGEN_RUNNING
const CGAL_BGL_NP_CLASS& np
#else
const NamedParameters& np
#endif
,bool verbose = true)
{
std::ifstream is(fname);
return read_OFF(is, g, np, verbose);
@ -215,10 +238,10 @@ bool write_OFF_BGL(std::ostream& os,
\cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `g`.
If this parameter is omitted, an internal property map for
`CGAL::vertex_point_t` should be available in `FaceGraph`\cgalParamEnd
\cgalParamBegin{vertex_normal_map} the property map with the normals associated to the vertices of `g`.\cgalParamEnd
\cgalParamBegin{vertex_color_map} the property map with the colors associated to the vertices of `g`.\cgalParamEnd
\cgalParamBegin{vertex_texture_map} the property map with the textures associated to the vertices of `g`.\cgalParamEnd
\cgalParamBegin{face_color_map} the property map with the colors associated to the faces of `g`.\cgalParamEnd
`vertex_normal_map` the property map with the normals associated to the vertices of `g`.
`vertex_color_map` the property map with the colors associated to the vertices of `g`.
`vertex_texture_map` the property map with the textures associated to the vertices of `g`.
`face_color_map` the property map with the colors associated to the faces of `g`.
\cgalNamedParamsEnd
\returns `true` if writing was successful.
@ -226,11 +249,23 @@ bool write_OFF_BGL(std::ostream& os,
\sa Overloads of this function for specific models of the concept `FaceGraph`.
\see \ref IOStreamOFF
*/
template <typename FaceGraph, typename CGAL_BGL_NP_TEMPLATE_PARAMETERS>
bool write_OFF(std::ostream& os, const FaceGraph& g, const CGAL_BGL_NP_CLASS& np,
typename boost::disable_if<
typename boost::has_range_const_iterator<FaceGraph>::type
>::type* =0)
template <typename FaceGraph,
#ifndef DOXYGEN_RUNNING
typename CGAL_BGL_NP_TEMPLATE_PARAMETERS
#else
typename NamedParameters
#endif
>
bool write_OFF(std::ostream& os, const FaceGraph& g,
#ifndef DOXYGEN_RUNNING
const CGAL_BGL_NP_CLASS& np
,typename boost::disable_if<
typename boost::has_range_const_iterator<FaceGraph>::type
>::type* =0
#else
const NamedParameters& np
#endif
)
{
return IO::internal::write_OFF_BGL(os, g, np);
}
@ -251,10 +286,10 @@ bool write_OFF(std::ostream& os, const FaceGraph& g, const CGAL_BGL_NP_CLASS& np
\cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `g`.
If this parameter is omitted, an internal property map for
`CGAL::vertex_point_t` should be available in `FaceGraph`\cgalParamEnd
\cgalParamBegin{vertex_normal_map} the property map with the normals associated to the vertices of `g`.\cgalParamEnd
\cgalParamBegin{vertex_color_map} the property map with the colors associated to the vertices of `g`.\cgalParamEnd
\cgalParamBegin{vertex_texture_map} the property map with the textures associated to the vertices of `g`.\cgalParamEnd
\cgalParamBegin{face_color_map} the property map with the colors associated to the faces of `g`.\cgalParamEnd
`vertex_normal_map` the property map with the normals associated to the vertices of `g`.
`vertex_color_map` the property map with the colors associated to the vertices of `g`.
`vertex_texture_map` the property map with the textures associated to the vertices of `g`.
`face_color_map` the property map with the colors associated to the faces of `g`.
\cgalNamedParamsEnd
\returns `true` if writing was successful.
@ -262,11 +297,23 @@ bool write_OFF(std::ostream& os, const FaceGraph& g, const CGAL_BGL_NP_CLASS& np
\sa Overloads of this function for specific models of the concept `FaceGraph`.
\see \ref IOStreamOFF
*/
template <typename FaceGraph, typename CGAL_BGL_NP_TEMPLATE_PARAMETERS>
bool write_OFF(const char* fname, const FaceGraph& g, const CGAL_BGL_NP_CLASS& np,
template <typename FaceGraph,
#ifndef DOXYGEN_RUNNING
typename CGAL_BGL_NP_TEMPLATE_PARAMETERS
#else
typename NamedParameters
#endif
>
bool write_OFF(const char* fname, const FaceGraph& g,
#ifndef DOXYGEN_RUNNING
const CGAL_BGL_NP_CLASS& np,
typename boost::disable_if<
typename boost::has_range_const_iterator<FaceGraph>::type
>::type* =0)
typename boost::has_range_const_iterator<FaceGraph>::type
>::type* =0
#else
const NamedParameters& np
#endif
)
{
std::ofstream os(fname);
if(!os)

View File

@ -94,8 +94,8 @@ bool read_PLY_BGL(std::istream& is,
\cgalParamBegin{vertex_index_map}
is a property map containing for each vertex of `g` a unique index between `0` and `num_vertices(g)-1`.
\cgalParamEnd
\cgalParamBegin{face_color_map} the property map with the colors associated to the faces of `g`.\cgalParamEnd
\cgalParamBegin{vertex_color_map} the property map with the colors associated to the vertices of `g`.\cgalParamEnd
`face_color_map` the property map with the colors associated to the faces of `g`.
`vertex_color_map` the property map with the colors associated to the vertices of `g`.
\cgalNamedParamsEnd
\pre The data must represent a 2-manifold
@ -132,8 +132,8 @@ bool read_PLY(std::istream& is, FaceGraph& g, const CGAL_BGL_NP_CLASS& np, bool
\cgalParamBegin{vertex_index_map}
is a property map containing for each vertex of `g` a unique index between `0` and `num_vertices(g)-1`.
\cgalParamEnd
\cgalParamBegin{face_color_map} the property map with the colors associated to the faces of `g`.\cgalParamEnd
\cgalParamBegin{vertex_color_map} the property map with the colors associated to the vertices of `g`.\cgalParamEnd
`face_color_map` the property map with the colors associated to the faces of `g`.
`vertex_color_map` the property map with the colors associated to the vertices of `g`.
\cgalNamedParamsEnd
\pre The data must represent a 2-manifold
@ -203,8 +203,8 @@ bool read_PLY(const std::string& fname, FaceGraph& g)
\cgalParamBegin{vertex_index_map}
is a property map containing for each vertex of `g` a unique index between `0` and `num_vertices(g)-1`.
\cgalParamEnd
\cgalParamBegin{face_color_map} the property map with the colors associated to the faces of `g`.\cgalParamEnd
\cgalParamBegin{vertex_color_map} the property map with the colors associated to the vertices of `g`.\cgalParamEnd
`face_color_map` the property map with the colors associated to the faces of `g`.
`vertex_color_map` the property map with the colors associated to the vertices of `g`.
\cgalNamedParamsEnd
\returns `true` if writing was successful.
@ -376,8 +376,8 @@ bool write_PLY(std::ostream& os,
\cgalParamBegin{vertex_index_map}
is a property map containing for each vertex of `g` a unique index between `0` and `num_vertices(g)-1`.
\cgalParamEnd
\cgalParamBegin{face_color_map} the property map with the colors associated to the faces of `g`.\cgalParamEnd
\cgalParamBegin{vertex_color_map} the property map with the colors associated to the vertices of `g`.\cgalParamEnd
`face_color_map` the property map with the colors associated to the faces of `g`.
`vertex_color_map` the property map with the colors associated to the vertices of `g`.
\cgalNamedParamsEnd
\returns `true` if writing was successful.

View File

@ -213,12 +213,21 @@ public:
/*!
\ingroup PkgPointSet3IO
reads the content of an intput stream in the XYZ format into a point set.
\tparam Point a `CGAL::Point_3`
\tparam Vector a `CGAL::Vector_3`
\param stream the input stream
\param point_set the point set.
\return `true` if the reading was successful, `false` otherwise.
\see \ref IOStreamXYZ
*/
template <typename Point, typename Vector>
bool
read_XYZ(
std::istream& stream, ///< input stream.
CGAL::Point_set_3<Point, Vector>& point_set) ///< point set
std::istream& stream,
CGAL::Point_set_3<Point, Vector>& point_set)
{
point_set.add_normal_map();
@ -243,6 +252,19 @@ read_XYZ(
return out;
}
/*!
\ingroup PkgPointSet3IO
reads the content of an input XYZ file in a point set.
\tparam Point a `CGAL::Point_3`
\tparam Vector a `CGAL::Vector_3`
\param fname the path to the input file.
\param point_set the point set.
\return `true` if the reading was successful, `false` otherwise.
\see \ref IOStreamXYZ
*/
template <typename Point, typename Vector>
bool
read_XYZ(
@ -264,12 +286,21 @@ read_XYZ(
/*!
\ingroup PkgPointSet3IO
reads the content of an intput stream in the OFF format into a point set.
\tparam Point a `CGAL::Point_3`
\tparam Vector a `CGAL::Vector_3`
\param stream the input stream
\param point_set the point set.
\return `true` if the reading was successful, `false` otherwise.
\see \ref IOStreamOFF
*/
template <typename Point, typename Vector>
bool
read_OFF(
std::istream& stream, ///< input stream.
CGAL::Point_set_3<Point, Vector>& point_set) ///< point set
std::istream& stream,
CGAL::Point_set_3<Point, Vector>& point_set)
{
point_set.add_normal_map();
@ -294,6 +325,19 @@ read_OFF(
return out;
}
/*!
\ingroup PkgPointSet3IO
reads the content of an input OFF file in a point set.
\tparam Point a `CGAL::Point_3`
\tparam Vector a `CGAL::Vector_3`
\param fname the path to the input file.
\param point_set the point set.
\return `true` if the reading was successful, `false` otherwise.
\see \ref IOStreamOFF
*/
template <typename Point, typename Vector>
bool
read_OFF(
@ -360,13 +404,23 @@ read_PLY(
used to store the potential comments found in the PLY
header. Each line starting by "comment " in the header is
appended to the `comments` string (without the "comment " word).
\tparam Point a `CGAL::Point_3`
\tparam Vector a `CGAL::Vector_3`
\param stream the input stream
\param point_set the point set.
\param comments optional PLY comments.
\return `true` if the reading was successful, `false` otherwise.
\see \ref IOStreamPLY
*/
template <typename Point, typename Vector>
bool
read_PLY(
std::istream& stream, ///< input stream.
CGAL::Point_set_3<Point, Vector>& point_set, ///< point set
std::string& comments) ///< PLY comments.
std::istream& stream,
CGAL::Point_set_3<Point, Vector>& point_set,
std::string& comments)
{
if(!stream)
{
@ -427,13 +481,23 @@ read_PLY(
If provided, the `comments` string is included line by line in
the header of the PLY stream (each line will be precedeed by
"comment ").
\tparam Point a `CGAL::Point_3`
\tparam Vector a `CGAL::Vector_3`
\param stream the path to the input file.
\param point_set the point set.
\param comments optional PLY comments
\return `true` if the reading was successful, `false` otherwise.
\see \ref IOStreamPLY
*/
template <typename Point, typename Vector>
bool
write_PLY(
std::ostream& stream, ///< output stream.
const CGAL::Point_set_3<Point, Vector>& point_set, ///< point set.
const std::string& comments = std::string()) ///< PLY comments.
std::ostream& stream,
const CGAL::Point_set_3<Point, Vector>& point_set,
const std::string& comments = std::string())
{
typedef CGAL::Point_set_3<Point, Vector> Point_set;
typedef typename Point_set::Index Index;
@ -670,12 +734,20 @@ void check_if_property_is_used (PointSet& point_set,
/*!
\ingroup PkgPointSet3IO
reads the content of an intput stream in the LAS format into a point set.
\tparam Point a `CGAL::Point_3`
\tparam Vector a `CGAL::Vector_3`
\param stream the input stream
\param point_set the point set.
\return `true` if the reading was successful, `false` otherwise.
*/
template <typename Point, typename Vector>
bool
read_LAS(
std::istream& stream, ///< input stream.
CGAL::Point_set_3<Point, Vector>& point_set) ///< point set
std::istream& stream,
CGAL::Point_set_3<Point, Vector>& point_set)
{
if(!stream)
{
@ -773,14 +845,24 @@ read_LAS(
return read_LAS(fname.c_str(), point_set);
}
/*!
\ingroup PkgPointSet3IO
writes the content of a point set into an output stream in the LAS format.
\tparam Point a `CGAL::Point_3`
\tparam Vector a `CGAL::Vector_3`
\param stream the output stream
\param point_set the point set.
\return `true` if the writing was successful, `false` otherwise.
*/
template <typename Point, typename Vector>
bool
write_LAS(
std::ostream& stream, ///< output stream.
CGAL::Point_set_3<Point, Vector>& point_set) ///< point set
std::ostream& stream,
CGAL::Point_set_3<Point, Vector>& point_set)
{
if(!stream)
{
@ -948,6 +1030,18 @@ write_LAS(
return okay;
}
/*!
\ingroup PkgPointSet3IO
writes the content of a point set into an output file in the XYZ format.
\tparam Point a `CGAL::Point_3`
\tparam Vector a `CGAL::Vector_3`
\param fname the path to the output file
\param point_set the point set.
\return `true` if the writing was successful, `false` otherwise.
*/
template <typename Point, typename Vector>
bool
write_LAS(
@ -971,12 +1065,22 @@ write_LAS(
/*!
\ingroup PkgPointSet3IO
writes the content of a point set into an output stream in the XYZ format.
\tparam Point a `CGAL::Point_3`
\tparam Vector a `CGAL::Vector_3`
\param stream the output stream
\param point_set the point set.
\return `true` if the writing was successful, `false` otherwise.
\see \ref IOStreamXYZ
*/
template <typename Point, typename Vector>
bool
write_XYZ(
std::ostream& stream, ///< output stream.
const CGAL::Point_set_3<Point, Vector>& point_set) ///< point set
std::ostream& stream,
const CGAL::Point_set_3<Point, Vector>& point_set)
{
if (point_set.has_normal_map())
return CGAL::write_XYZ
@ -989,6 +1093,19 @@ write_XYZ(
CGAL::parameters::point_map(point_set.point_map()));
}
/*!
\ingroup PkgPointSet3IO
writes the content of a point set into an output file in the XYZ format.
\tparam Point a `CGAL::Point_3`
\tparam Vector a `CGAL::Vector_3`
\param fname the path to the output file
\param point_set the point set.
\return `true` if the writing was successful, `false` otherwise.
\see \ref IOStreamXYZ
*/
template <typename Point, typename Vector>
bool
write_XYZ(
@ -1007,14 +1124,25 @@ write_XYZ(
{
return write_XYZ(fname.c_str(), point_set);
}
/*!
\ingroup PkgPointSet3IO
writes the content of a point set into an output stream in the OFF format.
\tparam Point a `CGAL::Point_3`
\tparam Vector a `CGAL::Vector_3`
\param stream the output stream
\param point_set the point set.
\return `true` if the writing was successful, `false` otherwise.
\see \ref IOStreamOFF
*/
template <typename Point, typename Vector>
bool
write_OFF(
std::ostream& stream, ///< output stream.
const CGAL::Point_set_3<Point, Vector>& point_set) ///< point set
std::ostream& stream,
const CGAL::Point_set_3<Point, Vector>& point_set)
{
if (point_set.has_normal_map())
return CGAL::write_OFF
@ -1027,6 +1155,19 @@ write_OFF(
CGAL::parameters::point_map(point_set.point_map()));
}
/*!
\ingroup PkgPointSet3IO
writes the content of a point set into an output file in the OFF format.
\tparam Point a `CGAL::Point_3`
\tparam Vector a `CGAL::Vector_3`
\param fname the path to the output file
\param point_set the point set.
\return `true` if the writing was successful, `false` otherwise.
\see \ref IOStreamOFF
*/
template <typename Point, typename Vector>
bool
write_OFF(
@ -1061,6 +1202,15 @@ write_OFF(
normal vectors, the normal map is added to the point set. For PLY
input, all point properties found in the header are added.
\relates Point_set_3
\tparam Point a `CGAL::Point_3`
\tparam Vector a `CGAL::Vector_3`
\param is the input stream
\param ps the point set.
\return `is`
*/
template <typename Point, typename Vector>
std::istream& operator>>(std::istream& is,
@ -1094,6 +1244,14 @@ std::istream& operator>>(std::istream& is,
format. All properties are inserted in their instantiation order.
\relates Point_set_3
\tparam Point a `CGAL::Point_3`
\tparam Vector a `CGAL::Vector_3`
\param os the output stream
\param ps the point set.
\return `os`
*/
template <typename Point, typename Vector>
std::ostream& operator<<(std::ostream& os,

View File

@ -21,6 +21,26 @@ namespace CGAL {
/*!
\ingroup PkgPointSet3IO
\brief Reads the point set from an input file that can be either:
- XYZ
- OFF
- PLY
- LAS
The format is detected from the extension. If the file contains
normal vectors, the normal map is added to the point set. For PLY
input, all point properties found in the header are added.
\relates Point_set_3
\tparam Point a `CGAL::Point_3`
\tparam Vector a `CGAL::Vector_3`
\param fname the path to the input file
\param ps the point set.
\return `true` if the reading was successful, `false` otherwise.
*/
template <typename Point,
typename Vector>
@ -59,8 +79,27 @@ bool read_point_set(const char* fname,
}
/*!
\ingroup PkgPointSet3IO
*/
\brief Inserts the point set in an output filethat can be either:
- XYZ
- OFF
- PLY
- LAS
The format is detected from the extension.
\relates Point_set_3
\tparam Point a `CGAL::Point_3`
\tparam Vector a `CGAL::Vector_3`
\param fname the path to the output file
\param ps the point set.
\return `true` if the writing was successful, `false` otherwise.
*/
template <typename Point,
typename Vector>
bool write_point_set(const std::string& fname,

View File

@ -205,7 +205,7 @@ bool read_OBJ(const std::string& fname, PointRange& points, PolygonRange& polygo
//! \ingroup ObjIoFuncs
//!
/// reads the content of `is` into `points` and `faces`, using the `OBJ` format.
/// reads the content of `is` into `points` and `polygons`, using the `OBJ` format.
///
/// \tparam PointRange a model of the concept `RandomAccessContainer` whose value type is the point type.
/// \tparam PolygonRange a model of the concept `SequenceContainer`
@ -221,14 +221,14 @@ bool read_OBJ(const std::string& fname, PointRange& points, PolygonRange& polygo
/// \returns `true` if the reading was successful, `false` otherwise.
/// \see \ref IOStreamOBJ
template <typename PointRange, typename PolygonRange>
bool read_OBJ(std::istream& is, PointRange& points, PolygonRange& faces)
bool read_OBJ(std::istream& is, PointRange& points, PolygonRange& polygons)
{
return read_OBJ(is, points, faces, parameters::all_default());
return read_OBJ(is, points, polygons, parameters::all_default());
}
//! \ingroup ObjIoFuncs
//!
/// reads the content of the file `fname` into `points` and `faces`, using the `OBJ` format.
/// reads the content of the file `fname` into `points` and `polygons`, using the `OBJ` format.
///
/// \tparam PointRange a model of the concept `RandomAccessContainer` whose value type is the point type.
/// \tparam PolygonRange a model of the concept `SequenceContainer`
@ -244,9 +244,9 @@ bool read_OBJ(std::istream& is, PointRange& points, PolygonRange& faces)
/// \returns `true` if the reading was successful, `false` otherwise.
/// \see \ref IOStreamOBJ
template <typename PointRange, typename PolygonRange>
bool read_OBJ(const char* fname, PointRange& points, PolygonRange& faces)
bool read_OBJ(const char* fname, PointRange& points, PolygonRange& polygons)
{
return read_OBJ(fname, points, faces, parameters::all_default());
return read_OBJ(fname, points, polygons, parameters::all_default());
}
template <typename PointRange, typename PolygonRange>

View File

@ -288,6 +288,7 @@ bool read_PLY(std::istream& is,
* \param points points of the soup of polygons.
* \param polygons a `PolygonRange`. Each element in it describes a polygon
* using the indices of the points in `points`.
* \param verbose: if `true`, will output warnings and error messages. Default is `false`.
*
* \returns `true` if the reading was successful, `false` otherwise.
* \see \ref IOStreamPLY
@ -516,7 +517,7 @@ bool write_PLY(std::ostream& out,
* whose value_type is an integer type.
*
* \param os the output stream
* \param out the output stream
* \param points points of the soup of polygons.
* \param polygons a `PolygonRange`. Each element in it describes a polygon
* using the indices of the points in `points`.

View File

@ -141,9 +141,9 @@ bool read_STL(std::istream& is,
* \see \ref IOStreamSTL
*/
template <typename PointRange, typename TriangleRange>
bool read_STL(std::istream& is, PointRange& points, TriangleRange& facets)
bool read_STL(std::istream& is, PointRange& points, TriangleRange& polygons)
{
return read_STL(is, points, facets, parameters::all_default());
return read_STL(is, points, polygons, parameters::all_default());
}
template <typename PointRange, typename TriangleRange, typename CGAL_BGL_NP_TEMPLATE_PARAMETERS>
@ -163,7 +163,7 @@ bool read_STL(const std::string& fname, PointRange& points, TriangleRange& facet
/*!
* \ingroup StlIoFuncs
*
* reads the content of a file named `fname` into `points` and `facets`, in the STL format.
* reads the content of a file named `fname` into `points` and `polygons`, in the STL format.
*
* \tparam PointRange a model of the concept `RandomAccessContainer` whose value type is the point type.
* \tparam PolygonRange a model of the concept `SequenceContainer`
@ -180,9 +180,9 @@ bool read_STL(const std::string& fname, PointRange& points, TriangleRange& facet
* \see \ref IOStreamSTL
*/
template <typename PointRange, typename TriangleRange>
bool read_STL(const char* fname, PointRange& points, TriangleRange& facets)
bool read_STL(const char* fname, PointRange& points, TriangleRange& polygons)
{
return read_STL(fname, points, facets, parameters::all_default());
return read_STL(fname, points, polygons, parameters::all_default());
}
template <typename PointRange, typename TriangleRange>
@ -263,7 +263,7 @@ bool write_STL(std::ostream& os,
/*!
* \ingroup StlIoFuncs
*
* writes the content of `points` and `facets` in `os`, in the STL format.
* writes the content of `points` and `polygons` in `os`, in the STL format.
*
* \tparam PointRange a model of the concept `RandomAccessContainer` whose value type is the point type.
* \tparam PolygonRange a model of the concept `SequenceContainer`
@ -280,9 +280,9 @@ bool write_STL(std::ostream& os,
* \see \ref IOStreamSTL
*/
template <typename PointRange, typename TriangleRange>
bool write_STL(std::ostream& os, const PointRange& points, const TriangleRange& facets)
bool write_STL(std::ostream& os, const PointRange& points, const TriangleRange& polygons)
{
return write_STL(os, points, facets, parameters::all_default());
return write_STL(os, points, polygons, parameters::all_default());
}
template <typename PointRange, typename TriangleRange, typename CGAL_BGL_NP_TEMPLATE_PARAMETERS>
@ -296,7 +296,7 @@ bool write_STL(const char* fname, const PointRange& points, const TriangleRange&
/*!
* \ingroup StlIoFuncs
*
* writes the content of `points` and `facets` in a file named `fname`, in the STL format.
* writes the content of `points` and `polygons` in a file named `fname`, in the STL format.
*
* \tparam PointRange a model of the concept `RandomAccessContainer` whose value type is the point type.
* \tparam PolygonRange a model of the concept `SequenceContainer`
@ -313,9 +313,9 @@ bool write_STL(const char* fname, const PointRange& points, const TriangleRange&
* \see \ref IOStreamSTL
*/
template <typename PointRange, typename TriangleRange>
bool write_STL(const char* fname, const PointRange& points, const TriangleRange& facets)
bool write_STL(const char* fname, const PointRange& points, const TriangleRange& polygons)
{
return write_STL(fname, points, facets, parameters::all_default());
return write_STL(fname, points, polygons, parameters::all_default());
}
template <typename PointRange, typename TriangleRange, typename CGAL_BGL_NP_TEMPLATE_PARAMETERS>

View File

@ -69,6 +69,7 @@ std::string get_file_extension(const std::string fname)
* \param polygons each element in the range describes a polygon
* using the indices of the vertices.
* \param points points of the soup of polygons
* \param verbose: if `true`, will output warnings and error messages. Default is `false`.
*
* \return `true` if reading was successful, `false` otherwise.
*
@ -130,6 +131,7 @@ bool read_polygon_soup(const std::string& fname,
* \param polygons each element in the range describes a polygon
* using the indices of the vertices.
* \param points points of the soup of polygons
* \param verbose: if `true`, will output warnings and error messages. Default is `false`.
*
* \return `true` if writing was successful, `false` otherwise.
*