Open CASCADE Technology: ElSLib Class Reference

Open CASCADE Technology 6.9.1

- Main Page
- Related Pages
- Namespaces
- Data Structures
- Files

- Data Structures
- Data Structure Index
- Class Hierarchy
- Data Fields

Static Public Member Functions
ElSLib Class Reference

Provides functions for basic geometric computation on elementary surfaces. This includes: More...

`#include <ElSLib.hxx>`

## Static Public Member Functions
static gp_Pnt | Value (const Standard_Real U, const Standard_Real V, const gp_Pln &Pl)
| For elementary surfaces from the gp package (planes, cones, cylinders, spheres and tori), computes the point of parameters (U, V). More...
static gp_Pnt | Value (const Standard_Real U, const Standard_Real V, const gp_Cone &C)
static gp_Pnt | Value (const Standard_Real U, const Standard_Real V, const gp_Cylinder &C)
static gp_Pnt | Value (const Standard_Real U, const Standard_Real V, const gp_Sphere &S)
static gp_Pnt | Value (const Standard_Real U, const Standard_Real V, const gp_Torus &T)
static gp_Vec | DN (const Standard_Real U, const Standard_Real V, const gp_Pln &Pl, const Standard_Integer Nu, const Standard_Integer Nv)
| For elementary surfaces from the gp package (planes, cones, cylinders, spheres and tori), computes the derivative vector of order Nu and Nv in the u and v parametric directions respectively, at the point of parameters (U, V). More...
static gp_Vec | DN (const Standard_Real U, const Standard_Real V, const gp_Cone &C, const Standard_Integer Nu, const Standard_Integer Nv)
static gp_Vec | DN (const Standard_Real U, const Standard_Real V, const gp_Cylinder &C, const Standard_Integer Nu, const Standard_Integer Nv)
static gp_Vec | DN (const Standard_Real U, const Standard_Real V, const gp_Sphere &S, const Standard_Integer Nu, const Standard_Integer Nv)
static gp_Vec | DN (const Standard_Real U, const Standard_Real V, const gp_Torus &T, const Standard_Integer Nu, const Standard_Integer Nv)
static void | D0 (const Standard_Real U, const Standard_Real V, const gp_Pln &Pl, gp_Pnt &P)
| For elementary surfaces from the gp package (planes, cones, cylinders, spheres and tori), computes the point P of parameters (U, V).inline. More...
static void | D0 (const Standard_Real U, const Standard_Real V, const gp_Cone &C, gp_Pnt &P)
static void | D0 (const Standard_Real U, const Standard_Real V, const gp_Cylinder &C, gp_Pnt &P)
static void | D0 (const Standard_Real U, const Standard_Real V, const gp_Sphere &S, gp_Pnt &P)
static void | D0 (const Standard_Real U, const Standard_Real V, const gp_Torus &T, gp_Pnt &P)
static void | D1 (const Standard_Real U, const Standard_Real V, const gp_Pln &Pl, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv)
| For elementary surfaces from the gp package (planes, cones, cylinders, spheres and tori), computes: More...
static void | D1 (const Standard_Real U, const Standard_Real V, const gp_Cone &C, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv)
static void | D1 (const Standard_Real U, const Standard_Real V, const gp_Cylinder &C, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv)
static void | D1 (const Standard_Real U, const Standard_Real V, const gp_Sphere &S, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv)
static void | D1 (const Standard_Real U, const Standard_Real V, const gp_Torus &T, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv)
static void | D2 (const Standard_Real U, const Standard_Real V, const gp_Cone &C, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv, gp_Vec &Vuu, gp_Vec &Vvv, gp_Vec &Vuv)
| For elementary surfaces from the gp package (cones, cylinders, spheres and tori), computes: More...
static void | D2 (const Standard_Real U, const Standard_Real V, const gp_Cylinder &C, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv, gp_Vec &Vuu, gp_Vec &Vvv, gp_Vec &Vuv)
static void | D2 (const Standard_Real U, const Standard_Real V, const gp_Sphere &S, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv, gp_Vec &Vuu, gp_Vec &Vvv, gp_Vec &Vuv)
static void | D2 (const Standard_Real U, const Standard_Real V, const gp_Torus &T, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv, gp_Vec &Vuu, gp_Vec &Vvv, gp_Vec &Vuv)
static void | D3 (const Standard_Real U, const Standard_Real V, const gp_Cone &C, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv, gp_Vec &Vuu, gp_Vec &Vvv, gp_Vec &Vuv, gp_Vec &Vuuu, gp_Vec &Vvvv, gp_Vec &Vuuv, gp_Vec &Vuvv)
| For elementary surfaces from the gp package (cones, cylinders, spheres and tori), computes: More...
static void | D3 (const Standard_Real U, const Standard_Real V, const gp_Cylinder &C, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv, gp_Vec &Vuu, gp_Vec &Vvv, gp_Vec &Vuv, gp_Vec &Vuuu, gp_Vec &Vvvv, gp_Vec &Vuuv, gp_Vec &Vuvv)
static void | D3 (const Standard_Real U, const Standard_Real V, const gp_Sphere &S, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv, gp_Vec &Vuu, gp_Vec &Vvv, gp_Vec &Vuv, gp_Vec &Vuuu, gp_Vec &Vvvv, gp_Vec &Vuuv, gp_Vec &Vuvv)
static void | D3 (const Standard_Real U, const Standard_Real V, const gp_Torus &T, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv, gp_Vec &Vuu, gp_Vec &Vvv, gp_Vec &Vuv, gp_Vec &Vuuu, gp_Vec &Vvvv, gp_Vec &Vuuv, gp_Vec &Vuvv)
| Surface evaluation The following functions compute the point and the derivatives on elementary surfaces defined with their geometric characterisitics. You don't need to create the surface to use these functions. These functions are called by the previous ones. Example : A cylinder is defined with its position and its radius. More...
static gp_Pnt | PlaneValue (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos)
static gp_Pnt | CylinderValue (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, const Standard_Real Radius)
static gp_Pnt | ConeValue (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, const Standard_Real Radius, const Standard_Real SAngle)
static gp_Pnt | SphereValue (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, const Standard_Real Radius)
static gp_Pnt | TorusValue (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, const Standard_Real MajorRadius, const Standard_Real MinorRadius)
static gp_Vec | PlaneDN (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, const Standard_Integer Nu, const Standard_Integer Nv)
static gp_Vec | CylinderDN (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, const Standard_Real Radius, const Standard_Integer Nu, const Standard_Integer Nv)
static gp_Vec | ConeDN (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, const Standard_Real Radius, const Standard_Real SAngle, const Standard_Integer Nu, const Standard_Integer Nv)
static gp_Vec | SphereDN (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, const Standard_Real Radius, const Standard_Integer Nu, const Standard_Integer Nv)
static gp_Vec | TorusDN (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, const Standard_Real MajorRadius, const Standard_Real MinorRadius, const Standard_Integer Nu, const Standard_Integer Nv)
static void | PlaneD0 (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, gp_Pnt &P)
static void | ConeD0 (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, const Standard_Real Radius, const Standard_Real SAngle, gp_Pnt &P)
static void | CylinderD0 (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, const Standard_Real Radius, gp_Pnt &P)
static void | SphereD0 (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, const Standard_Real Radius, gp_Pnt &P)
static void | TorusD0 (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, const Standard_Real MajorRadius, const Standard_Real MinorRadius, gp_Pnt &P)
static void | PlaneD1 (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv)
static void | ConeD1 (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, const Standard_Real Radius, const Standard_Real SAngle, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv)
static void | CylinderD1 (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, const Standard_Real Radius, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv)
static void | SphereD1 (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, const Standard_Real Radius, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv)
static void | TorusD1 (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, const Standard_Real MajorRadius, const Standard_Real MinorRadius, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv)
static void | ConeD2 (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, const Standard_Real Radius, const Standard_Real SAngle, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv, gp_Vec &Vuu, gp_Vec &Vvv, gp_Vec &Vuv)
static void | CylinderD2 (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, const Standard_Real Radius, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv, gp_Vec &Vuu, gp_Vec &Vvv, gp_Vec &Vuv)
static void | SphereD2 (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, const Standard_Real Radius, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv, gp_Vec &Vuu, gp_Vec &Vvv, gp_Vec &Vuv)
static void | TorusD2 (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, const Standard_Real MajorRadius, const Standard_Real MinorRadius, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv, gp_Vec &Vuu, gp_Vec &Vvv, gp_Vec &Vuv)
static void | ConeD3 (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, const Standard_Real Radius, const Standard_Real SAngle, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv, gp_Vec &Vuu, gp_Vec &Vvv, gp_Vec &Vuv, gp_Vec &Vuuu, gp_Vec &Vvvv, gp_Vec &Vuuv, gp_Vec &Vuvv)
static void | CylinderD3 (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, const Standard_Real Radius, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv, gp_Vec &Vuu, gp_Vec &Vvv, gp_Vec &Vuv, gp_Vec &Vuuu, gp_Vec &Vvvv, gp_Vec &Vuuv, gp_Vec &Vuvv)
static void | SphereD3 (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, const Standard_Real Radius, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv, gp_Vec &Vuu, gp_Vec &Vvv, gp_Vec &Vuv, gp_Vec &Vuuu, gp_Vec &Vvvv, gp_Vec &Vuuv, gp_Vec &Vuvv)
static void | TorusD3 (const Standard_Real U, const Standard_Real V, const gp_Ax3 &Pos, const Standard_Real MajorRadius, const Standard_Real MinorRadius, gp_Pnt &P, gp_Vec &Vu, gp_Vec &Vv, gp_Vec &Vuu, gp_Vec &Vvv, gp_Vec &Vuv, gp_Vec &Vuuu, gp_Vec &Vvvv, gp_Vec &Vuuv, gp_Vec &Vuvv)
| The following functions compute the parametric values corresponding to a given point on a elementary surface. The point should be on the surface. More...
static void | Parameters (const gp_Pln &Pl, const gp_Pnt &P, Standard_Real &U, Standard_Real &V)
| parametrization P (U, V) = Pl.Location() + U * Pl.XDirection() + V * Pl.YDirection() More...
static void | Parameters (const gp_Cylinder &C, const gp_Pnt &P, Standard_Real &U, Standard_Real &V)
| parametrization P (U, V) = Location + V * ZDirection + Radius * (Cos(U) * XDirection + Sin (U) * YDirection) More...
static void | Parameters (const gp_Cone &C, const gp_Pnt &P, Standard_Real &U, Standard_Real &V)
| parametrization P (U, V) = Location + V * ZDirection + (Radius + V * Tan (SemiAngle)) * (Cos(U) * XDirection + Sin(U) * YDirection) More...
static void | Parameters (const gp_Sphere &S, const gp_Pnt &P, Standard_Real &U, Standard_Real &V)
| parametrization P (U, V) = Location + Radius * Cos (V) * (Cos (U) * XDirection + Sin (U) * YDirection) + Radius * Sin (V) * ZDirection More...
static void | Parameters (const gp_Torus &T, const gp_Pnt &P, Standard_Real &U, Standard_Real &V)
| parametrization P (U, V) = Location + (MajorRadius + MinorRadius * Cos(U)) * (Cos(V) * XDirection - Sin(V) * YDirection) + MinorRadius * Sin(U) * ZDirection More...
static void | PlaneParameters (const gp_Ax3 &Pos, const gp_Pnt &P, Standard_Real &U, Standard_Real &V)
| parametrization P (U, V) = Pl.Location() + U * Pl.XDirection() + V * Pl.YDirection() More...
static void | CylinderParameters (const gp_Ax3 &Pos, const Standard_Real Radius, const gp_Pnt &P, Standard_Real &U, Standard_Real &V)
| parametrization P (U, V) = Location + V * ZDirection + Radius * (Cos(U) * XDirection + Sin (U) * YDirection) More...
static void | ConeParameters (const gp_Ax3 &Pos, const Standard_Real Radius, const Standard_Real SAngle, const gp_Pnt &P, Standard_Real &U, Standard_Real &V)
| parametrization P (U, V) = Location + V * ZDirection + (Radius + V * Tan (SemiAngle)) * (Cos(U) * XDirection + Sin(U) * YDirection) More...
static void | SphereParameters (const gp_Ax3 &Pos, const Standard_Real Radius, const gp_Pnt &P, Standard_Real &U, Standard_Real &V)
| parametrization P (U, V) = Location + Radius * Cos (V) * (Cos (U) * XDirection + Sin (U) * YDirection) + Radius * Sin (V) * ZDirection More...
static void | TorusParameters (const gp_Ax3 &Pos, const Standard_Real MajorRadius, const Standard_Real MinorRadius, const gp_Pnt &P, Standard_Real &U, Standard_Real &V)
| parametrization P (U, V) = Location + (MajorRadius + MinorRadius * Cos(U)) * (Cos(V) * XDirection - Sin(V) * YDirection) + MinorRadius * Sin(U) * ZDirection More...
static gp_Lin | PlaneUIso (const gp_Ax3 &Pos, const Standard_Real U)
| compute the U Isoparametric gp_Lin of the plane. More...
static gp_Lin | CylinderUIso (const gp_Ax3 &Pos, const Standard_Real Radius, const Standard_Real U)
| compute the U Isoparametric gp_Lin of the cylinder. More...
static gp_Lin | ConeUIso (const gp_Ax3 &Pos, const Standard_Real Radius, const Standard_Real SAngle, const Standard_Real U)
| compute the U Isoparametric gp_Lin of the cone. More...
static gp_Circ | SphereUIso (const gp_Ax3 &Pos, const Standard_Real Radius, const Standard_Real U)
| compute the U Isoparametric gp_Circ of the sphere, (the meridian is not trimmed). More...
static gp_Circ | TorusUIso (const gp_Ax3 &Pos, const Standard_Real MajorRadius, const Standard_Real MinorRadius, const Standard_Real U)
| compute the U Isoparametric gp_Circ of the torus. More...
static gp_Lin | PlaneVIso (const gp_Ax3 &Pos, const Standard_Real V)
| compute the V Isoparametric gp_Lin of the plane. More...
static gp_Circ | CylinderVIso (const gp_Ax3 &Pos, const Standard_Real Radius, const Standard_Real V)
| compute the V Isoparametric gp_Circ of the cylinder. More...
static gp_Circ | ConeVIso (const gp_Ax3 &Pos, const Standard_Real Radius, const Standard_Real SAngle, const Standard_Real V)
| compute the V Isoparametric gp_Circ of the cone. More...
static gp_Circ | SphereVIso (const gp_Ax3 &Pos, const Standard_Real Radius, const Standard_Real V)
| compute the V Isoparametric gp_Circ of the sphere, (the meridian is not trimmed). More...
static gp_Circ | TorusVIso (const gp_Ax3 &Pos, const Standard_Real MajorRadius, const Standard_Real MinorRadius, const Standard_Real V)
| compute the V Isoparametric gp_Circ of the torus. More...

## Detailed Description

Provides functions for basic geometric computation on elementary surfaces. This includes:

- calculation of a point or derived vector on a surface where the surface is provided by the gp package, or defined in canonical form (as in the gp package), and the point is defined with a parameter,
- evaluation of the parameters corresponding to a point on an elementary surface from gp,
- calculation of isoparametric curves on an elementary surface defined in canonical form (as in the gp package). Notes:
- ElSLib stands for Elementary Surfaces Library.
- If the surfaces provided by the gp package are not explicitly parameterized, they still have an implicit parameterization, similar to that which they infer on the equivalent Geom surfaces. Note: ElSLib stands for Elementary Surfaces Library.

## Member Function Documentation

static void ElSLib::ConeD0 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius,
|  | const Standard_Real | SAngle,
|  | gp_Pnt & | P
| ) |  |
| static

static void ElSLib::ConeD1 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius,
|  | const Standard_Real | SAngle,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv
| ) |  |
| static

static void ElSLib::ConeD2 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius,
|  | const Standard_Real | SAngle,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv,
|  | gp_Vec & | Vuu,
|  | gp_Vec & | Vvv,
|  | gp_Vec & | Vuv
| ) |  |
| static

static void ElSLib::ConeD3 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius,
|  | const Standard_Real | SAngle,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv,
|  | gp_Vec & | Vuu,
|  | gp_Vec & | Vvv,
|  | gp_Vec & | Vuv,
|  | gp_Vec & | Vuuu,
|  | gp_Vec & | Vvvv,
|  | gp_Vec & | Vuuv,
|  | gp_Vec & | Vuvv
| ) |  |
| static

static gp_Vec ElSLib::ConeDN | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius,
|  | const Standard_Real | SAngle,
|  | const Standard_Integer | Nu,
|  | const Standard_Integer | Nv
| ) |  |
| static

static void ElSLib::ConeParameters | ( | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius,
|  | const Standard_Real | SAngle,
|  | const gp_Pnt & | P,
|  | Standard_Real & | U,
|  | Standard_Real & | V
| ) |  |
| static

parametrization P (U, V) = Location + V * ZDirection + (Radius + V * Tan (SemiAngle)) * (Cos(U) * XDirection + Sin(U) * YDirection)

static gp_Lin ElSLib::ConeUIso | ( | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius,
|  | const Standard_Real | SAngle,
|  | const Standard_Real | U
| ) |  |
| static

compute the U Isoparametric gp_Lin of the cone.

static gp_Pnt ElSLib::ConeValue | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius,
|  | const Standard_Real | SAngle
| ) |  |
| static

static gp_Circ ElSLib::ConeVIso | ( | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius,
|  | const Standard_Real | SAngle,
|  | const Standard_Real | V
| ) |  |
| static

compute the V Isoparametric gp_Circ of the cone.

static void ElSLib::CylinderD0 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius,
|  | gp_Pnt & | P
| ) |  |
| static

static void ElSLib::CylinderD1 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv
| ) |  |
| static

static void ElSLib::CylinderD2 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv,
|  | gp_Vec & | Vuu,
|  | gp_Vec & | Vvv,
|  | gp_Vec & | Vuv
| ) |  |
| static

static void ElSLib::CylinderD3 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv,
|  | gp_Vec & | Vuu,
|  | gp_Vec & | Vvv,
|  | gp_Vec & | Vuv,
|  | gp_Vec & | Vuuu,
|  | gp_Vec & | Vvvv,
|  | gp_Vec & | Vuuv,
|  | gp_Vec & | Vuvv
| ) |  |
| static

static gp_Vec ElSLib::CylinderDN | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius,
|  | const Standard_Integer | Nu,
|  | const Standard_Integer | Nv
| ) |  |
| static

static void ElSLib::CylinderParameters | ( | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius,
|  | const gp_Pnt & | P,
|  | Standard_Real & | U,
|  | Standard_Real & | V
| ) |  |
| static

parametrization P (U, V) = Location + V * ZDirection + Radius * (Cos(U) * XDirection + Sin (U) * YDirection)

static gp_Lin ElSLib::CylinderUIso | ( | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius,
|  | const Standard_Real | U
| ) |  |
| static

compute the U Isoparametric gp_Lin of the cylinder.

static gp_Pnt ElSLib::CylinderValue | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius
| ) |  |
| static

static gp_Circ ElSLib::CylinderVIso | ( | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius,
|  | const Standard_Real | V
| ) |  |
| static

compute the V Isoparametric gp_Circ of the cylinder.

static void ElSLib::D0 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Pln & | Pl,
|  | gp_Pnt & | P
| ) |  |
| static

For elementary surfaces from the gp package (planes, cones, cylinders, spheres and tori), computes the point P of parameters (U, V).inline.

static void ElSLib::D0 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Cone & | C,
|  | gp_Pnt & | P
| ) |  |
| static

static void ElSLib::D0 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Cylinder & | C,
|  | gp_Pnt & | P
| ) |  |
| static

static void ElSLib::D0 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Sphere & | S,
|  | gp_Pnt & | P
| ) |  |
| static

static void ElSLib::D0 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Torus & | T,
|  | gp_Pnt & | P
| ) |  |
| static

static void ElSLib::D1 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Pln & | Pl,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv
| ) |  |
| static

For elementary surfaces from the gp package (planes, cones, cylinders, spheres and tori), computes:

- the point P of parameters (U, V), and
- the first derivative vectors Vu and Vv at this point in the u and v parametric directions respectively.

static void ElSLib::D1 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Cone & | C,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv
| ) |  |
| static

static void ElSLib::D1 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Cylinder & | C,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv
| ) |  |
| static

static void ElSLib::D1 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Sphere & | S,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv
| ) |  |
| static

static void ElSLib::D1 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Torus & | T,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv
| ) |  |
| static

static void ElSLib::D2 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Cone & | C,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv,
|  | gp_Vec & | Vuu,
|  | gp_Vec & | Vvv,
|  | gp_Vec & | Vuv
| ) |  |
| static

For elementary surfaces from the gp package (cones, cylinders, spheres and tori), computes:

- the point P of parameters (U, V), and
- the first derivative vectors Vu and Vv at this point in the u and v parametric directions respectively, and
- the second derivative vectors Vuu, Vvv and Vuv at this point.

static void ElSLib::D2 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Cylinder & | C,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv,
|  | gp_Vec & | Vuu,
|  | gp_Vec & | Vvv,
|  | gp_Vec & | Vuv
| ) |  |
| static

static void ElSLib::D2 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Sphere & | S,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv,
|  | gp_Vec & | Vuu,
|  | gp_Vec & | Vvv,
|  | gp_Vec & | Vuv
| ) |  |
| static

static void ElSLib::D2 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Torus & | T,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv,
|  | gp_Vec & | Vuu,
|  | gp_Vec & | Vvv,
|  | gp_Vec & | Vuv
| ) |  |
| static

static void ElSLib::D3 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Cone & | C,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv,
|  | gp_Vec & | Vuu,
|  | gp_Vec & | Vvv,
|  | gp_Vec & | Vuv,
|  | gp_Vec & | Vuuu,
|  | gp_Vec & | Vvvv,
|  | gp_Vec & | Vuuv,
|  | gp_Vec & | Vuvv
| ) |  |
| static

For elementary surfaces from the gp package (cones, cylinders, spheres and tori), computes:

- the point P of parameters (U,V), and
- the first derivative vectors Vu and Vv at this point in the u and v parametric directions respectively, and
- the second derivative vectors Vuu, Vvv and Vuv at this point, and
- the third derivative vectors Vuuu, Vvvv, Vuuv and Vuvv at this point.

static void ElSLib::D3 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Cylinder & | C,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv,
|  | gp_Vec & | Vuu,
|  | gp_Vec & | Vvv,
|  | gp_Vec & | Vuv,
|  | gp_Vec & | Vuuu,
|  | gp_Vec & | Vvvv,
|  | gp_Vec & | Vuuv,
|  | gp_Vec & | Vuvv
| ) |  |
| static

static void ElSLib::D3 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Sphere & | S,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv,
|  | gp_Vec & | Vuu,
|  | gp_Vec & | Vvv,
|  | gp_Vec & | Vuv,
|  | gp_Vec & | Vuuu,
|  | gp_Vec & | Vvvv,
|  | gp_Vec & | Vuuv,
|  | gp_Vec & | Vuvv
| ) |  |
| static

static void ElSLib::D3 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Torus & | T,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv,
|  | gp_Vec & | Vuu,
|  | gp_Vec & | Vvv,
|  | gp_Vec & | Vuv,
|  | gp_Vec & | Vuuu,
|  | gp_Vec & | Vvvv,
|  | gp_Vec & | Vuuv,
|  | gp_Vec & | Vuvv
| ) |  |
| static

Surface evaluation The following functions compute the point and the derivatives on elementary surfaces defined with their geometric characterisitics. You don't need to create the surface to use these functions. These functions are called by the previous ones. Example : A cylinder is defined with its position and its radius.

static gp_Vec ElSLib::DN | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Pln & | Pl,
|  | const Standard_Integer | Nu,
|  | const Standard_Integer | Nv
| ) |  |
| static

For elementary surfaces from the gp package (planes, cones, cylinders, spheres and tori), computes the derivative vector of order Nu and Nv in the u and v parametric directions respectively, at the point of parameters (U, V).

static gp_Vec ElSLib::DN | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Cone & | C,
|  | const Standard_Integer | Nu,
|  | const Standard_Integer | Nv
| ) |  |
| static

static gp_Vec ElSLib::DN | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Cylinder & | C,
|  | const Standard_Integer | Nu,
|  | const Standard_Integer | Nv
| ) |  |
| static

static gp_Vec ElSLib::DN | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Sphere & | S,
|  | const Standard_Integer | Nu,
|  | const Standard_Integer | Nv
| ) |  |
| static

static gp_Vec ElSLib::DN | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Torus & | T,
|  | const Standard_Integer | Nu,
|  | const Standard_Integer | Nv
| ) |  |
| static

static void ElSLib::Parameters | ( | const gp_Pln & | Pl,
|  | const gp_Pnt & | P,
|  | Standard_Real & | U,
|  | Standard_Real & | V
| ) |  |
| static

parametrization P (U, V) = Pl.Location() + U * Pl.XDirection() + V * Pl.YDirection()

static void ElSLib::Parameters | ( | const gp_Cylinder & | C,
|  | const gp_Pnt & | P,
|  | Standard_Real & | U,
|  | Standard_Real & | V
| ) |  |
| static

parametrization P (U, V) = Location + V * ZDirection + Radius * (Cos(U) * XDirection + Sin (U) * YDirection)

static void ElSLib::Parameters | ( | const gp_Cone & | C,
|  | const gp_Pnt & | P,
|  | Standard_Real & | U,
|  | Standard_Real & | V
| ) |  |
| static

parametrization P (U, V) = Location + V * ZDirection + (Radius + V * Tan (SemiAngle)) * (Cos(U) * XDirection + Sin(U) * YDirection)

static void ElSLib::Parameters | ( | const gp_Sphere & | S,
|  | const gp_Pnt & | P,
|  | Standard_Real & | U,
|  | Standard_Real & | V
| ) |  |
| static

parametrization P (U, V) = Location + Radius * Cos (V) * (Cos (U) * XDirection + Sin (U) * YDirection) + Radius * Sin (V) * ZDirection

static void ElSLib::Parameters | ( | const gp_Torus & | T,
|  | const gp_Pnt & | P,
|  | Standard_Real & | U,
|  | Standard_Real & | V
| ) |  |
| static

parametrization P (U, V) = Location + (MajorRadius + MinorRadius * Cos(U)) * (Cos(V) * XDirection - Sin(V) * YDirection) + MinorRadius * Sin(U) * ZDirection

static void ElSLib::PlaneD0 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | gp_Pnt & | P
| ) |  |
| static

static void ElSLib::PlaneD1 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv
| ) |  |
| static

static gp_Vec ElSLib::PlaneDN | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | const Standard_Integer | Nu,
|  | const Standard_Integer | Nv
| ) |  |
| static

static void ElSLib::PlaneParameters | ( | const gp_Ax3 & | Pos,
|  | const gp_Pnt & | P,
|  | Standard_Real & | U,
|  | Standard_Real & | V
| ) |  |
| static

parametrization P (U, V) = Pl.Location() + U * Pl.XDirection() + V * Pl.YDirection()

static gp_Lin ElSLib::PlaneUIso | ( | const gp_Ax3 & | Pos,
|  | const Standard_Real | U
| ) |  |
| static

compute the U Isoparametric gp_Lin of the plane.

static gp_Pnt ElSLib::PlaneValue | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos
| ) |  |
| static

static gp_Lin ElSLib::PlaneVIso | ( | const gp_Ax3 & | Pos,
|  | const Standard_Real | V
| ) |  |
| static

compute the V Isoparametric gp_Lin of the plane.

static void ElSLib::SphereD0 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius,
|  | gp_Pnt & | P
| ) |  |
| static

static void ElSLib::SphereD1 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv
| ) |  |
| static

static void ElSLib::SphereD2 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv,
|  | gp_Vec & | Vuu,
|  | gp_Vec & | Vvv,
|  | gp_Vec & | Vuv
| ) |  |
| static

static void ElSLib::SphereD3 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv,
|  | gp_Vec & | Vuu,
|  | gp_Vec & | Vvv,
|  | gp_Vec & | Vuv,
|  | gp_Vec & | Vuuu,
|  | gp_Vec & | Vvvv,
|  | gp_Vec & | Vuuv,
|  | gp_Vec & | Vuvv
| ) |  |
| static

static gp_Vec ElSLib::SphereDN | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius,
|  | const Standard_Integer | Nu,
|  | const Standard_Integer | Nv
| ) |  |
| static

static void ElSLib::SphereParameters | ( | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius,
|  | const gp_Pnt & | P,
|  | Standard_Real & | U,
|  | Standard_Real & | V
| ) |  |
| static

parametrization P (U, V) = Location + Radius * Cos (V) * (Cos (U) * XDirection + Sin (U) * YDirection) + Radius * Sin (V) * ZDirection

static gp_Circ ElSLib::SphereUIso | ( | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius,
|  | const Standard_Real | U
| ) |  |
| static

compute the U Isoparametric gp_Circ of the sphere, (the meridian is not trimmed).

static gp_Pnt ElSLib::SphereValue | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius
| ) |  |
| static

static gp_Circ ElSLib::SphereVIso | ( | const gp_Ax3 & | Pos,
|  | const Standard_Real | Radius,
|  | const Standard_Real | V
| ) |  |
| static

compute the V Isoparametric gp_Circ of the sphere, (the meridian is not trimmed).

static void ElSLib::TorusD0 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | const Standard_Real | MajorRadius,
|  | const Standard_Real | MinorRadius,
|  | gp_Pnt & | P
| ) |  |
| static

static void ElSLib::TorusD1 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | const Standard_Real | MajorRadius,
|  | const Standard_Real | MinorRadius,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv
| ) |  |
| static

static void ElSLib::TorusD2 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | const Standard_Real | MajorRadius,
|  | const Standard_Real | MinorRadius,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv,
|  | gp_Vec & | Vuu,
|  | gp_Vec & | Vvv,
|  | gp_Vec & | Vuv
| ) |  |
| static

static void ElSLib::TorusD3 | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | const Standard_Real | MajorRadius,
|  | const Standard_Real | MinorRadius,
|  | gp_Pnt & | P,
|  | gp_Vec & | Vu,
|  | gp_Vec & | Vv,
|  | gp_Vec & | Vuu,
|  | gp_Vec & | Vvv,
|  | gp_Vec & | Vuv,
|  | gp_Vec & | Vuuu,
|  | gp_Vec & | Vvvv,
|  | gp_Vec & | Vuuv,
|  | gp_Vec & | Vuvv
| ) |  |
| static

The following functions compute the parametric values corresponding to a given point on a elementary surface. The point should be on the surface.

static gp_Vec ElSLib::TorusDN | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | const Standard_Real | MajorRadius,
|  | const Standard_Real | MinorRadius,
|  | const Standard_Integer | Nu,
|  | const Standard_Integer | Nv
| ) |  |
| static

static void ElSLib::TorusParameters | ( | const gp_Ax3 & | Pos,
|  | const Standard_Real | MajorRadius,
|  | const Standard_Real | MinorRadius,
|  | const gp_Pnt & | P,
|  | Standard_Real & | U,
|  | Standard_Real & | V
| ) |  |
| static

parametrization P (U, V) = Location + (MajorRadius + MinorRadius * Cos(U)) * (Cos(V) * XDirection - Sin(V) * YDirection) + MinorRadius * Sin(U) * ZDirection

static gp_Circ ElSLib::TorusUIso | ( | const gp_Ax3 & | Pos,
|  | const Standard_Real | MajorRadius,
|  | const Standard_Real | MinorRadius,
|  | const Standard_Real | U
| ) |  |
| static

compute the U Isoparametric gp_Circ of the torus.

static gp_Pnt ElSLib::TorusValue | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Ax3 & | Pos,
|  | const Standard_Real | MajorRadius,
|  | const Standard_Real | MinorRadius
| ) |  |
| static

static gp_Circ ElSLib::TorusVIso | ( | const gp_Ax3 & | Pos,
|  | const Standard_Real | MajorRadius,
|  | const Standard_Real | MinorRadius,
|  | const Standard_Real | V
| ) |  |
| static

compute the V Isoparametric gp_Circ of the torus.

static gp_Pnt ElSLib::Value | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Pln & | Pl
| ) |  |
| static

For elementary surfaces from the gp package (planes, cones, cylinders, spheres and tori), computes the point of parameters (U, V).

static gp_Pnt ElSLib::Value | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Cone & | C
| ) |  |
| static

static gp_Pnt ElSLib::Value | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Cylinder & | C
| ) |  |
| static

static gp_Pnt ElSLib::Value | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Sphere & | S
| ) |  |
| static

static gp_Pnt ElSLib::Value | ( | const Standard_Real | U,
|  | const Standard_Real | V,
|  | const gp_Torus & | T
| ) |  |
| static

The documentation for this class was generated from the following file:

- ElSLib.hxx