Open CASCADE Technology  6.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions
GeomAdaptor_Surface Class Reference

An interface between the services provided by any
surface from the package Geom and those required
of the surface by algorithms which use it.
More...

#include <GeomAdaptor_Surface.hxx>

Inheritance diagram for GeomAdaptor_Surface:
Inheritance graph
[legend]

Public Member Functions

 GeomAdaptor_Surface ()
 
 GeomAdaptor_Surface (const Handle< Geom_Surface > &S)
 
 GeomAdaptor_Surface (const Handle< Geom_Surface > &S, const Standard_Real UFirst, const Standard_Real ULast, const Standard_Real VFirst, const Standard_Real VLast, const Standard_Real TolU=0.0, const Standard_Real TolV=0.0)
 ConstructionError is raised if UFirst>ULast or VFirst>VLast
More...
 
void Load (const Handle< Geom_Surface > &S)
 
void Load (const Handle< Geom_Surface > &S, const Standard_Real UFirst, const Standard_Real ULast, const Standard_Real VFirst, const Standard_Real VLast, const Standard_Real TolU=0.0, const Standard_Real TolV=0.0)
 ConstructionError is raised if UFirst>ULast or VFirst>VLast
More...
 
const Handle_Geom_Surface & Surface () const
 
Standard_Real FirstUParameter () const
 
Standard_Real LastUParameter () const
 
Standard_Real FirstVParameter () const
 
Standard_Real LastVParameter () const
 
GeomAbs_Shape UContinuity () const
 
GeomAbs_Shape VContinuity () const
 
Standard_Integer NbUIntervals (const GeomAbs_Shape S) const
 Returns the number of U intervals for continuity
<S>. May be one if UContinuity(me) >= <S>
More...
 
Standard_Integer NbVIntervals (const GeomAbs_Shape S) const
 Returns the number of V intervals for continuity
<S>. May be one if VContinuity(me) >= <S>
More...
 
void UIntervals (TColStd_Array1OfReal &T, const GeomAbs_Shape S) const
 Returns the intervals with the requested continuity
in the U direction.
More...
 
void VIntervals (TColStd_Array1OfReal &T, const GeomAbs_Shape S) const
 Returns the intervals with the requested continuity
in the V direction.
More...
 
Handle_Adaptor3d_HSurface UTrim (const Standard_Real First, const Standard_Real Last, const Standard_Real Tol) const
 Returns a surface trimmed in the U direction
equivalent of <me> between
parameters <First> and <Last>. <Tol> is used to
test for 3d points confusion.
//! If <First> >= <Last>
More...
 
Handle_Adaptor3d_HSurface VTrim (const Standard_Real First, const Standard_Real Last, const Standard_Real Tol) const
 Returns a surface trimmed in the V direction between
parameters <First> and <Last>. <Tol> is used to
test for 3d points confusion.
//! If <First> >= <Last>
More...
 
Standard_Boolean IsUClosed () const
 
Standard_Boolean IsVClosed () const
 
Standard_Boolean IsUPeriodic () const
 
Standard_Real UPeriod () const
 
Standard_Boolean IsVPeriodic () const
 
Standard_Real VPeriod () const
 
gp_Pnt Value (const Standard_Real U, const Standard_Real V) const
 Computes the point of parameters U,V on the surface.
More...
 
void D0 (const Standard_Real U, const Standard_Real V, gp_Pnt &P) const
 Computes the point of parameters U,V on the surface.
More...
 
void D1 (const Standard_Real U, const Standard_Real V, gp_Pnt &P, gp_Vec &D1U, gp_Vec &D1V) const
 
 Computes the point  and the first derivatives on <br>

the surface.

Warning : On the specific case of BSplineSurface:
if the surface is cut in interval of continuity at least C1,
the derivatives are computed on the current interval.
else the derivatives are computed on the basis surface.
More...

 
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,  the  first  and  second <br>

derivatives on the surface.

Warning : On the specific case of BSplineSurface:
if the surface is cut in interval of continuity at least C2,
the derivatives are computed on the current interval.
else the derivatives are computed on the basis surface.
More...

 
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,  the first, second and third <br>

derivatives on the surface.

Warning : On the specific case of BSplineSurface:
if the surface is cut in interval of continuity at least C3,
the derivatives are computed on the current interval.
else the derivatives are computed on the basis surface.
More...

 
gp_Vec DN (const Standard_Real U, const Standard_Real V, const Standard_Integer Nu, const Standard_Integer Nv) const
 
  Computes the derivative of order Nu in the <br>

direction U and Nv in the direction V at the point P(U, V).

Warning : On the specific case of BSplineSurface:
if the surface is cut in interval of continuity CN,
the derivatives are computed on the current interval.
else the derivatives are computed on the basis surface.
//! Raised if Nu + Nv < 1 or Nu < 0 or Nv < 0.
More...

 
Standard_Real UResolution (const Standard_Real R3d) const
 Returns the parametric U resolution corresponding
to the real space resolution <R3d>.
More...
 
Standard_Real VResolution (const Standard_Real R3d) const
 Returns the parametric V resolution corresponding
to the real space resolution <R3d>.
More...
 
GeomAbs_SurfaceType GetType () const
 Returns the type of the surface : Plane, Cylinder,
Cone, Sphere, Torus, BezierSurface,
BSplineSurface, SurfaceOfRevolution,
SurfaceOfExtrusion, OtherSurface
More...
 
gp_Pln Plane () const
 
gp_Cylinder Cylinder () const
 
gp_Cone Cone () const
 
gp_Sphere Sphere () const
 
gp_Torus Torus () const
 
Standard_Integer UDegree () const
 
Standard_Integer NbUPoles () const
 
Standard_Integer VDegree () const
 
Standard_Integer NbVPoles () const
 
Standard_Integer NbUKnots () const
 
Standard_Integer NbVKnots () const
 
Standard_Boolean IsURational () const
 
Standard_Boolean IsVRational () const
 
Handle_Geom_BezierSurface Bezier () const
 This will NOT make a copy of the
Bezier Surface : If you want to modify
the Surface please make a copy yourself
Also it will NOT trim the surface to
myU/VFirst/Last.
More...
 
Handle_Geom_BSplineSurface BSpline () const
 This will NOT make a copy of the
BSpline Surface : If you want to modify
the Surface please make a copy yourself
Also it will NOT trim the surface to
myU/VFirst/Last.
More...
 
gp_Ax1 AxeOfRevolution () const
 
gp_Dir Direction () const
 
Handle_Adaptor3d_HCurve BasisCurve () const
 
Handle_Adaptor3d_HSurface BasisSurface () const
 
Standard_Real OffsetValue () const
 
- Public Member Functions inherited from Adaptor3d_Surface
virtual void Delete ()
 
virtual ~Adaptor3d_Surface ()
 

Detailed Description

An interface between the services provided by any
surface from the package Geom and those required
of the surface by algorithms which use it.

Constructor & Destructor Documentation

GeomAdaptor_Surface::GeomAdaptor_Surface ( )
GeomAdaptor_Surface::GeomAdaptor_Surface ( const Handle< Geom_Surface > &  S)
GeomAdaptor_Surface::GeomAdaptor_Surface ( const Handle< Geom_Surface > &  S,
const Standard_Real  UFirst,
const Standard_Real  ULast,
const Standard_Real  VFirst,
const Standard_Real  VLast,
const Standard_Real  TolU = 0.0,
const Standard_Real  TolV = 0.0 
)

ConstructionError is raised if UFirst>ULast or VFirst>VLast

Member Function Documentation

gp_Ax1 GeomAdaptor_Surface::AxeOfRevolution ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

Handle_Adaptor3d_HCurve GeomAdaptor_Surface::BasisCurve ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

Handle_Adaptor3d_HSurface GeomAdaptor_Surface::BasisSurface ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

Handle_Geom_BezierSurface GeomAdaptor_Surface::Bezier ( ) const
virtual

This will NOT make a copy of the
Bezier Surface : If you want to modify
the Surface please make a copy yourself
Also it will NOT trim the surface to
myU/VFirst/Last.

Reimplemented from Adaptor3d_Surface.

Handle_Geom_BSplineSurface GeomAdaptor_Surface::BSpline ( ) const
virtual

This will NOT make a copy of the
BSpline Surface : If you want to modify
the Surface please make a copy yourself
Also it will NOT trim the surface to
myU/VFirst/Last.

Reimplemented from Adaptor3d_Surface.

gp_Cone GeomAdaptor_Surface::Cone ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

gp_Cylinder GeomAdaptor_Surface::Cylinder ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

void GeomAdaptor_Surface::D0 ( const Standard_Real  U,
const Standard_Real  V,
gp_Pnt P 
) const
virtual

Computes the point of parameters U,V on the surface.

Reimplemented from Adaptor3d_Surface.

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

 Computes the point  and the first derivatives on <br>

the surface.

Warning : On the specific case of BSplineSurface:
if the surface is cut in interval of continuity at least C1,
the derivatives are computed on the current interval.
else the derivatives are computed on the basis surface.

Reimplemented from Adaptor3d_Surface.

void GeomAdaptor_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

  Computes   the point,  the  first  and  second <br>

derivatives on the surface.

Warning : On the specific case of BSplineSurface:
if the surface is cut in interval of continuity at least C2,
the derivatives are computed on the current interval.
else the derivatives are computed on the basis surface.

Reimplemented from Adaptor3d_Surface.

void GeomAdaptor_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

 Computes the point,  the first, second and third <br>

derivatives on the surface.

Warning : On the specific case of BSplineSurface:
if the surface is cut in interval of continuity at least C3,
the derivatives are computed on the current interval.
else the derivatives are computed on the basis surface.

Reimplemented from Adaptor3d_Surface.

gp_Dir GeomAdaptor_Surface::Direction ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

gp_Vec GeomAdaptor_Surface::DN ( const Standard_Real  U,
const Standard_Real  V,
const Standard_Integer  Nu,
const Standard_Integer  Nv 
) const
virtual

  Computes the derivative of order Nu in the <br>

direction U and Nv in the direction V at the point P(U, V).

Warning : On the specific case of BSplineSurface:
if the surface is cut in interval of continuity CN,
the derivatives are computed on the current interval.
else the derivatives are computed on the basis surface.
//! Raised if Nu + Nv < 1 or Nu < 0 or Nv < 0.

Reimplemented from Adaptor3d_Surface.

Standard_Real GeomAdaptor_Surface::FirstUParameter ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

Standard_Real GeomAdaptor_Surface::FirstVParameter ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

GeomAbs_SurfaceType GeomAdaptor_Surface::GetType ( ) const
virtual

Returns the type of the surface : Plane, Cylinder,
Cone, Sphere, Torus, BezierSurface,
BSplineSurface, SurfaceOfRevolution,
SurfaceOfExtrusion, OtherSurface

Reimplemented from Adaptor3d_Surface.

Standard_Boolean GeomAdaptor_Surface::IsUClosed ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

Standard_Boolean GeomAdaptor_Surface::IsUPeriodic ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

Standard_Boolean GeomAdaptor_Surface::IsURational ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

Standard_Boolean GeomAdaptor_Surface::IsVClosed ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

Standard_Boolean GeomAdaptor_Surface::IsVPeriodic ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

Standard_Boolean GeomAdaptor_Surface::IsVRational ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

Standard_Real GeomAdaptor_Surface::LastUParameter ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

Standard_Real GeomAdaptor_Surface::LastVParameter ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

void GeomAdaptor_Surface::Load ( const Handle< Geom_Surface > &  S)
void GeomAdaptor_Surface::Load ( const Handle< Geom_Surface > &  S,
const Standard_Real  UFirst,
const Standard_Real  ULast,
const Standard_Real  VFirst,
const Standard_Real  VLast,
const Standard_Real  TolU = 0.0,
const Standard_Real  TolV = 0.0 
)

ConstructionError is raised if UFirst>ULast or VFirst>VLast

Standard_Integer GeomAdaptor_Surface::NbUIntervals ( const GeomAbs_Shape  S) const
virtual

Returns the number of U intervals for continuity
<S>. May be one if UContinuity(me) >= <S>

Reimplemented from Adaptor3d_Surface.

Standard_Integer GeomAdaptor_Surface::NbUKnots ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

Standard_Integer GeomAdaptor_Surface::NbUPoles ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

Standard_Integer GeomAdaptor_Surface::NbVIntervals ( const GeomAbs_Shape  S) const
virtual

Returns the number of V intervals for continuity
<S>. May be one if VContinuity(me) >= <S>

Reimplemented from Adaptor3d_Surface.

Standard_Integer GeomAdaptor_Surface::NbVKnots ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

Standard_Integer GeomAdaptor_Surface::NbVPoles ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

Standard_Real GeomAdaptor_Surface::OffsetValue ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

gp_Pln GeomAdaptor_Surface::Plane ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

gp_Sphere GeomAdaptor_Surface::Sphere ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

const Handle_Geom_Surface& GeomAdaptor_Surface::Surface ( ) const
gp_Torus GeomAdaptor_Surface::Torus ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

GeomAbs_Shape GeomAdaptor_Surface::UContinuity ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

Standard_Integer GeomAdaptor_Surface::UDegree ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

void GeomAdaptor_Surface::UIntervals ( TColStd_Array1OfReal T,
const GeomAbs_Shape  S 
) const
virtual

Returns the intervals with the requested continuity
in the U direction.

Reimplemented from Adaptor3d_Surface.

Standard_Real GeomAdaptor_Surface::UPeriod ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

Standard_Real GeomAdaptor_Surface::UResolution ( const Standard_Real  R3d) const
virtual

Returns the parametric U resolution corresponding
to the real space resolution <R3d>.

Reimplemented from Adaptor3d_Surface.

Handle_Adaptor3d_HSurface GeomAdaptor_Surface::UTrim ( const Standard_Real  First,
const Standard_Real  Last,
const Standard_Real  Tol 
) const
virtual

Returns a surface trimmed in the U direction
equivalent of <me> between
parameters <First> and <Last>. <Tol> is used to
test for 3d points confusion.
//! If <First> >= <Last>

Reimplemented from Adaptor3d_Surface.

gp_Pnt GeomAdaptor_Surface::Value ( const Standard_Real  U,
const Standard_Real  V 
) const
virtual

Computes the point of parameters U,V on the surface.

Reimplemented from Adaptor3d_Surface.

GeomAbs_Shape GeomAdaptor_Surface::VContinuity ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

Standard_Integer GeomAdaptor_Surface::VDegree ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

void GeomAdaptor_Surface::VIntervals ( TColStd_Array1OfReal T,
const GeomAbs_Shape  S 
) const
virtual

Returns the intervals with the requested continuity
in the V direction.

Reimplemented from Adaptor3d_Surface.

Standard_Real GeomAdaptor_Surface::VPeriod ( ) const
virtual

Reimplemented from Adaptor3d_Surface.

Standard_Real GeomAdaptor_Surface::VResolution ( const Standard_Real  R3d) const
virtual

Returns the parametric V resolution corresponding
to the real space resolution <R3d>.

Reimplemented from Adaptor3d_Surface.

Handle_Adaptor3d_HSurface GeomAdaptor_Surface::VTrim ( const Standard_Real  First,
const Standard_Real  Last,
const Standard_Real  Tol 
) const
virtual

Returns a surface trimmed in the V direction between
parameters <First> and <Last>. <Tol> is used to
test for 3d points confusion.
//! If <First> >= <Last>

Reimplemented from Adaptor3d_Surface.


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