Open CASCADE Technology  6.5.4
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions
GeomPlate_Surface Class Reference

Describes the characteristics of plate surface objects
returned by BuildPlateSurface::Surface. These can be
used to verify the quality of the resulting surface before
approximating it to a Geom_BSpline surface generated
by MakeApprox. This proves necessary in cases where
you want to use the resulting surface as the support for
a shape. The algorithmically generated surface cannot
fill this function as is, and as a result must be converted first.

#include <GeomPlate_Surface.hxx>

Inheritance diagram for GeomPlate_Surface:
Inheritance graph
[legend]

Public Member Functions

 GeomPlate_Surface (const Handle< Geom_Surface > &Surfinit, const Plate_Plate &Surfinter)
void UReverse ()
 Reverses the U direction of parametrization of <me>.
The bounds of the surface are not modified.

Standard_Real UReversedParameter (const Standard_Real U) const
 Return the parameter on the Ureversed surface for
the point of parameter U on <me>.

me->UReversed()->Value(me->UReversedParameter(U),V)

is the same point as

me->Value(U,V)

void VReverse ()
 Reverses the V direction of parametrization of <me>.
The bounds of the surface are not modified.

Standard_Real VReversedParameter (const Standard_Real V) const
 Return the parameter on the Vreversed surface for
the point of parameter V on <me>.

me->VReversed()->Value(U,me->VReversedParameter(V))

is the same point as

me->Value(U,V)

virtual void TransformParameters (Standard_Real &U, Standard_Real &V, const gp_Trsf &T) const
 Computes the parameters on the transformed surface for
the transform of the point of parameters U,V on <me>.

me->Transformed(T)->Value(U',V')

is the same point as

me->Value(U,V).Transformed(T)

Where U',V' are the new values of U,V after calling

me->TranformParameters(U,V,T)

This methods does not change <U> and <V>

It can be redefined. For example on the Plane,
Cylinder, Cone, Revolved and Extruded surfaces.

virtual gp_GTrsf2d ParametricTransformation (const gp_Trsf &T) const
 Returns a 2d transformation used to find the new
parameters of a point on the transformed surface.

me->Transformed(T)->Value(U',V')

is the same point as

me->Value(U,V).Transformed(T)

Where U',V' are obtained by transforming U,V with
th 2d transformation returned by

me->ParametricTransformation(T)

This methods returns an identity transformation

It can be redefined. For example on the Plane,
Cylinder, Cone, Revolved and Extruded surfaces.


void Bounds (Standard_Real &U1, Standard_Real &U2, Standard_Real &V1, Standard_Real &V2) const
 Returns the parametric bounds U1, U2, V1 and V2 of this surface.
If the surface is infinite, this function can return a value
equal to Precision::Infinite: instead of Standard_Real::LastReal.

Standard_Boolean IsUClosed () const
 Is the surface closed in the parametric direction U ?
Returns True if for each parameter V the distance
between the point P (UFirst, V) and P (ULast, V) is
lower or equal to Resolution from gp. UFirst and ULast
are the parametric bounds in the U direction.

Standard_Boolean IsVClosed () const
 Is the surface closed in the parametric direction V ?
Returns True if for each parameter U the distance
between the point P (U, VFirst) and P (U, VLast) is
lower or equal to Resolution from gp. VFirst and VLast
are the parametric bounds in the V direction.

Standard_Boolean IsUPeriodic () const
 Is the parametrization of a surface periodic in the
direction U ?
It is possible only if the surface is closed in this
parametric direction and if the following relation is
satisfied :
for each parameter V the distance between the point
P (U, V) and the point P (U + T, V) is lower or equal
to Resolution from package gp. T is the parametric period
and must be a constant.

virtual Standard_Real UPeriod () const
 returns the Uperiod.
//! raises if the surface is not uperiodic.

Standard_Boolean IsVPeriodic () const
 Is the parametrization of a surface periodic in the
direction U ?
It is possible only if the surface is closed in this
parametric direction and if the following relation is
satisfied :
for each parameter V the distance between the point
P (U, V) and the point P (U + T, V) is lower or equal
to Resolution from package gp. T is the parametric period
and must be a constant.

virtual Standard_Real VPeriod () const
 returns the Vperiod.
//! raises if the surface is not vperiodic.

Handle_Geom_Curve UIso (const Standard_Real U) const
 Computes the U isoparametric curve.

Handle_Geom_Curve VIso (const Standard_Real V) const
 Computes the V isoparametric curve.

GeomAbs_Shape Continuity () const
 Global Continuity of the surface in direction U and V :
C0 : only geometric continuity,
C1 : continuity of the first derivative all along the surface,
C2 : continuity of the second derivative all along the surface,
C3 : continuity of the third derivative all along the surface,
G1 : tangency continuity all along the surface,
G2 : curvature continuity all along the surface,
CN : the order of continuity is infinite.
Example :
If the surface is C1 in the V parametric direction and C2
in the U parametric direction Shape = C1.

Standard_Boolean IsCNu (const Standard_Integer N) const
 Returns the order of continuity of the surface in the
U parametric direction.
//! Raised if N < 0.

Standard_Boolean IsCNv (const Standard_Integer N) const
 Returns the order of continuity of the surface in the
V parametric direction.
//! Raised if N < 0.

void D0 (const Standard_Real U, const Standard_Real V, gp_Pnt &P) const
 Computes the point of parameter U,V on the surface.
Raised only for an "OffsetSurface" if it is not possible to
compute the current point.

void D1 (const Standard_Real U, const Standard_Real V, gp_Pnt &P, gp_Vec &D1U, gp_Vec &D1V) const
 Computes the point P and the first derivatives in the
directions U and V at this point.
//! Raised if the continuity of the surface is not C1.

void D2 (const Standard_Real U, const Standard_Real V, gp_Pnt &P, gp_Vec &D1U, gp_Vec &D1V, gp_Vec &D2U, gp_Vec &D2V, gp_Vec &D2UV) const
 Computes the point P, the first and the second derivatives in
the directions U and V at this point.
//! Raised if the continuity of the surface is not C2.

void D3 (const Standard_Real U, const Standard_Real V, gp_Pnt &P, gp_Vec &D1U, gp_Vec &D1V, gp_Vec &D2U, gp_Vec &D2V, gp_Vec &D2UV, gp_Vec &D3U, gp_Vec &D3V, gp_Vec &D3UUV, gp_Vec &D3UVV) const
 Computes the point P, the first,the second and the third
derivatives in the directions U and V at this point.
//! Raised if the continuity of the surface is not C2.

gp_Vec DN (const Standard_Real U, const Standard_Real V, const Standard_Integer Nu, const Standard_Integer Nv) const
 ---Purpose ;
Computes the derivative of order Nu in the direction U and Nv
in the direction V at the point P(U, V).
Raised if the continuity of the surface is not CNu in the U
direction or not CNv in the V direction.
//! Raised if Nu + Nv < 1 or Nu < 0 or Nv < 0.

Handle_Geom_Geometry Copy () const
 Creates a new object which is a copy of this geometric object.

void Transform (const gp_Trsf &T)
 Transformation of a geometric object. This tansformation
can be a translation, a rotation, a symmetry, a scaling
or a complex transformation obtained by combination of
the previous elementaries transformations.
(see class Transformation of the package Geom).

Handle_Geom_Surface CallSurfinit () const
void SetBounds (const Standard_Real Umin, const Standard_Real Umax, const Standard_Real Vmin, const Standard_Real Vmax)
void RealBounds (Standard_Real &U1, Standard_Real &U2, Standard_Real &V1, Standard_Real &V2) const
void Constraints (TColgp_SequenceOfXY &Seq) const

Constructor & Destructor Documentation


Member Function Documentation

void GeomPlate_Surface::Bounds ( Standard_Real U1,
Standard_Real U2,
Standard_Real V1,
Standard_Real V2 
) const [virtual]

Implements Geom_Surface.

Handle_Geom_Surface GeomPlate_Surface::CallSurfinit ( ) const

Implements Geom_Surface.

Handle_Geom_Geometry GeomPlate_Surface::Copy ( ) const [virtual]

Implements Geom_Geometry.

void GeomPlate_Surface::D0 ( const Standard_Real  U,
const Standard_Real  V,
gp_Pnt P 
) const [virtual]

Implements Geom_Surface.

void GeomPlate_Surface::D1 ( const Standard_Real  U,
const Standard_Real  V,
gp_Pnt P,
gp_Vec D1U,
gp_Vec D1V 
) const [virtual]

Implements Geom_Surface.

void GeomPlate_Surface::D2 ( const Standard_Real  U,
const Standard_Real  V,
gp_Pnt P,
gp_Vec D1U,
gp_Vec D1V,
gp_Vec D2U,
gp_Vec D2V,
gp_Vec D2UV 
) const [virtual]

Implements Geom_Surface.

void GeomPlate_Surface::D3 ( const Standard_Real  U,
const Standard_Real  V,
gp_Pnt P,
gp_Vec D1U,
gp_Vec D1V,
gp_Vec D2U,
gp_Vec D2V,
gp_Vec D2UV,
gp_Vec D3U,
gp_Vec D3V,
gp_Vec D3UUV,
gp_Vec D3UVV 
) const [virtual]

Implements Geom_Surface.

Implements Geom_Surface.

Implements Geom_Surface.

Implements Geom_Surface.

Implements Geom_Surface.

Implements Geom_Surface.

Implements Geom_Surface.

Implements Geom_Surface.

Reimplemented from Geom_Surface.

Implements Geom_Geometry.

virtual void GeomPlate_Surface::TransformParameters ( Standard_Real U,
Standard_Real V,
const gp_Trsf T 
) const [virtual]

Reimplemented from Geom_Surface.

Handle_Geom_Curve GeomPlate_Surface::UIso ( const Standard_Real  U) const [virtual]

Implements Geom_Surface.

virtual Standard_Real GeomPlate_Surface::UPeriod ( ) const [virtual]

Reimplemented from Geom_Surface.

Implements Geom_Surface.

Implements Geom_Surface.

Handle_Geom_Curve GeomPlate_Surface::VIso ( const Standard_Real  V) const [virtual]

Implements Geom_Surface.

virtual Standard_Real GeomPlate_Surface::VPeriod ( ) const [virtual]

Reimplemented from Geom_Surface.

Implements Geom_Surface.

Implements Geom_Surface.


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