.. _group__a3d__srf:

###############
Surfaces Module
###############

Creates and accesses entities that represent geometric surfaces.

Geometric surfaces (:c:type:`~A3DSurfBase`\ ) are a mandatory part of the topology construct that is represented by an :c:type:`~A3DTopoBrepData`\ entity.

All surfaces are defined as follows:


1. Define the canonical form of the whole surface.
2. Define the actual parameterization and the portion of surface (trimming information) (:c:struct:`~A3DUVParameterizationData`\ ).
3. Define the orientation and scaling of the curve using a Cartesian transformation. The transformation cannot specify mirror or non-uniform scaling transformations (see :c:struct:`~A3DMiscCartesianTransformationData`\ ).


   Depending on how surfaces were defined, please notice that some might have their parameterization implicitly reverted (and more especially for periodic ones).


.. rst-class:: kind-group kind-topic

.. rubric:: Topics
   :class: kind-group-title


.. rst-class:: api-xref-list


* :ref:`NURBS Surface (the base surface entity) <group__a3d__srfnurbs>`
* :ref:`Spherical Surface <group__a3d__srfsphere>`
* :ref:`Cylindrical Surface <group__a3d__srfcylinder>`
* :ref:`Toric Surface <group__a3d__srftorus>`
* :ref:`Revolution Surface <group__a3d__srfrevolution>`
* :ref:`Extrusion Surface <group__a3d__srfextrusion>`
* :ref:`Offset Surface <group__a3d__srfoffset>`
* :ref:`Plane Surface <group__a3d__srfplane>`
* :ref:`Blend Surface Type 1 <group__a3d__srfblend01>`
* :ref:`Blend Surface Type 2 <group__a3d__srfblend02>`
* :ref:`Blend Surface Type 3 <group__a3d__srfblend03>`
* :ref:`Conic Surface <group__a3d__srfcone>`
* :ref:`Cylindrical-Space Surface <group__a3d__srfcylindrical>`
* :ref:`Ruled Surface <group__a3d__srfruled>`
* :ref:`Pipe Surface <group__a3d__srfpipe>`
* :ref:`Transform Surface <group__a3d__srftransform>`
* :ref:`From Curves Surface <group__a3d__srffromcurves>`

.. toctree::
   :maxdepth: 1
   :hidden:

   a3d_srfnurbs
   a3d_srfsphere
   a3d_srfcylinder
   a3d_srftorus
   a3d_srfrevolution
   a3d_srfextrusion
   a3d_srfoffset
   a3d_srfplane
   a3d_srfblend01
   a3d_srfblend02
   a3d_srfblend03
   a3d_srfcone
   a3d_srfcylindrical
   a3d_srfruled
   a3d_srfpipe
   a3d_srftransform
   a3d_srffromcurves


