"Fossies" - the Fresh Open Source Software Archive

Member "doc_html/Envelope_3/classCGAL_1_1Env__surface__data__traits__3.html" (8 Nov 2019, 16930 Bytes) of package /linux/misc/CGAL-5.0-doc_html.tar.xz:

Caution: In this restricted "Fossies" environment the current HTML page may not be correctly presentated and may have some non-functional links. You can here alternatively try to browse the pure source code or just view or download the uninterpreted raw source code. If the rendering is insufficient you may try to find and view the page on the project site itself.

\( \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 5.0 - 3D Envelopes
CGAL::Env_surface_data_traits_3< Traits, XyData, SData, Cnv > Class Template Reference

#include <CGAL/Env_surface_data_traits_3.h>

Inherits from



The class Env_surface_data_traits_3 is a model of the EnvelopeTraits_3 concept and serves as a decorator class that allows the extension of the surfaces defined by the base traits-class (the Traits parameter), which serves as a geometric traits-class (a model of the EnvelopeTraits_3 concept), with extraneous (non-geometric) data fields.

The traits-class decorator extends the Surface_3 and the Xy_monotone_surface_3 types as detailed below. Each Surface_3 object is associated with a single data field of type SData, and each Xy_monotone_surface_3 object is associated with a single data field of type XyData. When a surface is subdivided into \( xy\)-monotone surfaces, its data field is converted using the conversion functor, which is specified by the Cnv template-parameter, and the resulting objects is copied to all Xy_monotone_surface_3 objects induced by this surface. The conversion functor should provide an operator with the following prototype:

XyData operator() (const SData& d) const;

By default, the two data types are the same, so the conversion operator is trivial and just copies the data object:

SData = XyData
Cnv = _Default_convert_functor<SData,XyData>
Is Model Of:


class  Surface_3
 The Surface_3 class nested within the surface-data traits extends the Base_traits_3::Surface_3 type with an extra data field. More...
class  Xy_monotone_surface_3
 The Xy_monotone_surface_3 class nested within the surface-data traits extends the Base_traits_3::Xy_monotone_surface_3 type with an extra data field. More...


typedef Traits Base_traits_3
 the base traits-class.
typedef Base_traits_3::Surface_3 Base_surface_3
 the base surface.
typedef Base_traits_3::Xy_monotone_surface_3 Base_xy_monotone_surface_3
 the base \( xy\)-monotone surface surface.
typedef Cnv Convert
 the conversion functor.
typedef SData Surface_data
 the type of data associated with surfaces.
typedef XyData Xy_monotone_surface_data
 the type of data associated with \( xy\)-monotone surfaces.