OCC Main Page | ModelingAlgorithms | Toolkits | Packages | Class Hierarchy | Data Structures | File List | Data Fields | Globals

ModelingAlgorithms
TKShHealing
ShapeExtend


ShapeExtend_CompositeSurface Class Reference

Composite surface is represented by a grid of surfaces
(patches) connected geometrically. Patches may have different
parametrisation ranges, but they should be parametrised in
the same manner so that parameter of each patch (u,v) can be converted
to global parameter on the whole surface (U,V) with help of linear
transformation:
.

#include <ShapeExtend_CompositeSurface.hxx>


Public Member Functions

Standard_EXPORT ShapeExtend_CompositeSurface ()
 Empty constructor.
.
Standard_EXPORT ShapeExtend_CompositeSurface (const Handle(TColGeom_HArray2OfSurface)&GridSurf, const ShapeExtend_Parametrisation param=ShapeExtend_Natural)
 Initializes by a grid of surfaces (calls Init()).
.
Standard_EXPORT ShapeExtend_CompositeSurface (const Handle(TColGeom_HArray2OfSurface)&GridSurf, const TColStd_Array1OfReal &UJoints, const TColStd_Array1OfReal &VJoints)
 Initializes by a grid of surfaces (calls Init()).
.
Standard_EXPORT Standard_Boolean Init (const Handle(TColGeom_HArray2OfSurface)&GridSurf, const ShapeExtend_Parametrisation param=ShapeExtend_Natural)
 Initializes by a grid of surfaces.
All the Surfaces of the grid must have geometrical
connectivity as stated above.
If geometrical connectivity is not satisfied, method
returns False.
However, class is initialized even in that case.
.
Standard_EXPORT Standard_Boolean Init (const Handle(TColGeom_HArray2OfSurface)&GridSurf, const TColStd_Array1OfReal &UJoints, const TColStd_Array1OfReal &VJoints)
 Initializes by a grid of surfaces with given global
parametrisation defined by UJoints and VJoints arrays,
each having langth equal to number of patches in corresponding
direction + 1. Global joint values should be sorted in
increasing order.
All the Surfaces of the grid must have geometrical
connectivity as stated above.
If geometrical connectivity is not satisfied, method
returns False.
However, class is initialized even in that case.
.
Standard_EXPORT Standard_Integer NbUPatches () const
 Returns number of patches in U direction.
.
Standard_EXPORT Standard_Integer NbVPatches () const
 Returns number of patches in V direction.
.
Standard_EXPORT const Handle_Geom_Surface & Patch (const Standard_Integer i, const Standard_Integer j) const
 Returns one surface patch
.
Standard_EXPORT const Handle_TColGeom_HArray2OfSurface & Patches () const
 Returns grid of surfaces
.
Standard_EXPORT Handle_TColStd_HArray1OfReal UJointValues () const
 Returns the array of U values corresponding to joint
points between patches as well as to start and end points,
which define global parametrisation of the surface
.
Standard_EXPORT Handle_TColStd_HArray1OfReal VJointValues () const
 Returns the array of V values corresponding to joint
points between patches as well as to start and end points,
which define global parametrisation of the surface
.
Standard_EXPORT Standard_Real UJointValue (const Standard_Integer i) const
 Returns i-th joint value in U direction
(1-st is global Umin, (NbUPatches()+1)-th is global Umax
on the composite surface)
.
Standard_EXPORT Standard_Real VJointValue (const Standard_Integer j) const
 Returns j-th joint value in V direction
(1-st is global Vmin, (NbVPatches()+1)-th is global Vmax
on the composite surface)
.
Standard_EXPORT Standard_Boolean SetUJointValues (const TColStd_Array1OfReal &UJoints)
 Sets the array of U values corresponding to joint
points, which define global parametrisation of the surface.
Number of values in array should be equal to NbUPatches()+1.
All the values should be sorted in increasing order.
If this is not satisfied, does nothing and returns False.
.
Standard_EXPORT Standard_Boolean SetVJointValues (const TColStd_Array1OfReal &VJoints)
 Sets the array of V values corresponding to joint
points, which define global parametrisation of the surface
Number of values in array should be equal to NbVPatches()+1.
All the values should be sorted in increasing order.
If this is not satisfied, does nothing and returns False.
.
Standard_EXPORT void SetUFirstValue (const Standard_Real UFirst)
 Changes starting value for global U parametrisation (all
other joint values are shifted accordingly)
.
Standard_EXPORT void SetVFirstValue (const Standard_Real VFirst)
 Changes starting value for global V parametrisation (all
other joint values are shifted accordingly)
.
Standard_EXPORT Standard_Integer LocateUParameter (const Standard_Real U) const
 Returns number of col that contains given (global) parameter
.
Standard_EXPORT Standard_Integer LocateVParameter (const Standard_Real V) const
 Returns number of row that contains given (global) parameter
.
Standard_EXPORT void LocateUVPoint (const gp_Pnt2d &pnt, Standard_Integer &i, Standard_Integer &j) const
 Returns number of row and col of surface that contains
given point
.
Standard_EXPORT const Handle_Geom_Surface & Patch (const Standard_Real U, const Standard_Real V) const
 Returns one surface patch that contains given (global) parameters
.
Standard_EXPORT const Handle_Geom_Surface & Patch (const gp_Pnt2d &pnt) const
 Returns one surface patch that contains given point
.
Standard_EXPORT Standard_Real ULocalToGlobal (const Standard_Integer i, const Standard_Integer j, const Standard_Real u) const
 Converts local parameter u on patch i,j to global parameter U
.
Standard_EXPORT Standard_Real VLocalToGlobal (const Standard_Integer i, const Standard_Integer j, const Standard_Real v) const
 Converts local parameter v on patch i,j to global parameter V
.
Standard_EXPORT gp_Pnt2d LocalToGlobal (const Standard_Integer i, const Standard_Integer j, const gp_Pnt2d &uv) const
 Converts local parameters uv on patch i,j to global parameters UV
.
Standard_EXPORT Standard_Real UGlobalToLocal (const Standard_Integer i, const Standard_Integer j, const Standard_Real U) const
 Converts global parameter U to local parameter u on patch i,j
.
Standard_EXPORT Standard_Real VGlobalToLocal (const Standard_Integer i, const Standard_Integer j, const Standard_Real V) const
 Converts global parameter V to local parameter v on patch i,j
.
Standard_EXPORT gp_Pnt2d GlobalToLocal (const Standard_Integer i, const Standard_Integer j, const gp_Pnt2d &UV) const
 Converts global parameters UV to local parameters uv on patch i,j
.
Standard_EXPORT Standard_Boolean GlobalToLocalTransformation (const Standard_Integer i, const Standard_Integer j, Standard_Real &uFact, gp_Trsf2d &Trsf) const
 Computes transformation operator and uFactor descrinbing affine <br> transformation required to convert global parameters on composite <br> surface to local parameters on patch (i,j):
uv = ( uFactor, 1. ) X Trsf * UV;
NOTE: Thus Trsf contains shift and scale by V, scale by U is stored in uFact.
Returns True if transformation is not an identity
.
virtual Standard_EXPORT void Transform (const gp_Trsf &T)
 Applies transformation to all the patches
.
virtual Standard_EXPORT Handle_Geom_Geometry Copy () const
 Returns a copy of the surface
.
virtual Standard_EXPORT void UReverse ()
 NOT IMPLEMENTED (does nothing)
.
virtual Standard_EXPORT Standard_Real UReversedParameter (const Standard_Real U) const
 Returns U
.
virtual Standard_EXPORT void VReverse ()
 NOT IMPLEMENTED (does nothing)
.
virtual Standard_EXPORT Standard_Real VReversedParameter (const Standard_Real V) const
 Returns V
.
virtual Standard_EXPORT void Bounds (Standard_Real &U1, Standard_Real &U2, Standard_Real &V1, Standard_Real &V2) const
 Returns the parametric bounds of grid
.
virtual Standard_EXPORT Standard_Boolean IsUClosed () const
 Returns True if grid is closed in U direction
(i.e. connected with Precision::Confusion)
.
virtual Standard_EXPORT Standard_Boolean IsVClosed () const
 Returns True if grid is closed in V direction
(i.e. connected with Precision::Confusion)
.
virtual Standard_EXPORT Standard_Boolean IsUPeriodic () const
 Returns False
.
virtual Standard_EXPORT Standard_Boolean IsVPeriodic () const
 Returns False
.
virtual Standard_EXPORT Handle_Geom_Curve UIso (const Standard_Real U) const
 NOT IMPLEMENTED (returns Null curve)
.
virtual Standard_EXPORT Handle_Geom_Curve VIso (const Standard_Real V) const
 NOT IMPLEMENTED (returns Null curve)
.
virtual Standard_EXPORT GeomAbs_Shape Continuity () const
 returns C0

virtual Standard_EXPORT Standard_Boolean IsCNu (const Standard_Integer N) const
 returns True if N <=0

virtual Standard_EXPORT Standard_Boolean IsCNv (const Standard_Integer N) const
 returns True if N <=0

virtual Standard_EXPORT void D0 (const Standard_Real U, const Standard_Real V, gp_Pnt &P) const
 Computes the point of parameter U,V on the grid.
.
virtual Standard_EXPORT 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.
.
virtual Standard_EXPORT 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.
.
virtual Standard_EXPORT 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.
.
virtual Standard_EXPORT 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 direction U and Nv
in the direction V at the point P(U, V).
.
Standard_EXPORT gp_Pnt Value (const gp_Pnt2d &pnt) const
 Computes the point of parameter pnt on the grid.
.
Standard_EXPORT void ComputeJointValues (const ShapeExtend_Parametrisation param=ShapeExtend_Natural)
 Computes Joint values according to parameter
.
Standard_EXPORT Standard_Boolean CheckConnectivity (const Standard_Real prec)
 Checks geometrical connectivity of the patches, including
closedness (sets fields muUClosed and myVClosed)
.
Standard_EXPORT const Handle (Standard_Type)&DynamicType() const

Private Attributes

Handle_TColGeom_HArray2OfSurface myPatches
Handle_TColStd_HArray1OfReal myUJointValues
Handle_TColStd_HArray1OfReal myVJointValues
Standard_Boolean myUClosed
Standard_Boolean myVClosed


Constructor & Destructor Documentation

Standard_EXPORT ShapeExtend_CompositeSurface::ShapeExtend_CompositeSurface  ) 
 

Standard_EXPORT ShapeExtend_CompositeSurface::ShapeExtend_CompositeSurface const Handle(TColGeom_HArray2OfSurface)&  GridSurf,
const ShapeExtend_Parametrisation  param = ShapeExtend_Natural
 

Standard_EXPORT ShapeExtend_CompositeSurface::ShapeExtend_CompositeSurface const Handle(TColGeom_HArray2OfSurface)&  GridSurf,
const TColStd_Array1OfReal &  UJoints,
const TColStd_Array1OfReal &  VJoints
 


Member Function Documentation

virtual Standard_EXPORT void ShapeExtend_CompositeSurface::Bounds Standard_Real &  U1,
Standard_Real &  U2,
Standard_Real &  V1,
Standard_Real &  V2
const [virtual]
 

Standard_EXPORT Standard_Boolean ShapeExtend_CompositeSurface::CheckConnectivity const Standard_Real  prec  ) 
 

Standard_EXPORT void ShapeExtend_CompositeSurface::ComputeJointValues const ShapeExtend_Parametrisation  param = ShapeExtend_Natural  ) 
 

virtual Standard_EXPORT GeomAbs_Shape ShapeExtend_CompositeSurface::Continuity  )  const [virtual]
 

virtual Standard_EXPORT Handle_Geom_Geometry ShapeExtend_CompositeSurface::Copy  )  const [virtual]
 

virtual Standard_EXPORT void ShapeExtend_CompositeSurface::D0 const Standard_Real  U,
const Standard_Real  V,
gp_Pnt &  P
const [virtual]
 

virtual Standard_EXPORT void ShapeExtend_CompositeSurface::D1 const Standard_Real  U,
const Standard_Real  V,
gp_Pnt &  P,
gp_Vec &  D1U,
gp_Vec &  D1V
const [virtual]
 

virtual Standard_EXPORT void ShapeExtend_CompositeSurface::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]
 

virtual Standard_EXPORT void ShapeExtend_CompositeSurface::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]
 

virtual Standard_EXPORT gp_Vec ShapeExtend_CompositeSurface::DN const Standard_Real  U,
const Standard_Real  V,
const Standard_Integer  Nu,
const Standard_Integer  Nv
const [virtual]
 

Standard_EXPORT gp_Pnt2d ShapeExtend_CompositeSurface::GlobalToLocal const Standard_Integer  i,
const Standard_Integer  j,
const gp_Pnt2d &  UV
const
 

Standard_EXPORT Standard_Boolean ShapeExtend_CompositeSurface::GlobalToLocalTransformation const Standard_Integer  i,
const Standard_Integer  j,
Standard_Real &  uFact,
gp_Trsf2d &  Trsf
const
 

Standard_EXPORT const ShapeExtend_CompositeSurface::Handle Standard_Type   )  const
 

Standard_EXPORT Standard_Boolean ShapeExtend_CompositeSurface::Init const Handle(TColGeom_HArray2OfSurface)&  GridSurf,
const TColStd_Array1OfReal &  UJoints,
const TColStd_Array1OfReal &  VJoints
 

Standard_EXPORT Standard_Boolean ShapeExtend_CompositeSurface::Init const Handle(TColGeom_HArray2OfSurface)&  GridSurf,
const ShapeExtend_Parametrisation  param = ShapeExtend_Natural
 

virtual Standard_EXPORT Standard_Boolean ShapeExtend_CompositeSurface::IsCNu const Standard_Integer  N  )  const [virtual]
 

virtual Standard_EXPORT Standard_Boolean ShapeExtend_CompositeSurface::IsCNv const Standard_Integer  N  )  const [virtual]
 

virtual Standard_EXPORT Standard_Boolean ShapeExtend_CompositeSurface::IsUClosed  )  const [virtual]
 

virtual Standard_EXPORT Standard_Boolean ShapeExtend_CompositeSurface::IsUPeriodic  )  const [virtual]
 

virtual Standard_EXPORT Standard_Boolean ShapeExtend_CompositeSurface::IsVClosed  )  const [virtual]
 

virtual Standard_EXPORT Standard_Boolean ShapeExtend_CompositeSurface::IsVPeriodic  )  const [virtual]
 

Standard_EXPORT gp_Pnt2d ShapeExtend_CompositeSurface::LocalToGlobal const Standard_Integer  i,
const Standard_Integer  j,
const gp_Pnt2d &  uv
const
 

Standard_EXPORT Standard_Integer ShapeExtend_CompositeSurface::LocateUParameter const Standard_Real  U  )  const
 

Standard_EXPORT void ShapeExtend_CompositeSurface::LocateUVPoint const gp_Pnt2d &  pnt,
Standard_Integer &  i,
Standard_Integer &  j
const
 

Standard_EXPORT Standard_Integer ShapeExtend_CompositeSurface::LocateVParameter const Standard_Real  V  )  const
 

Standard_EXPORT Standard_Integer ShapeExtend_CompositeSurface::NbUPatches  )  const
 

Standard_EXPORT Standard_Integer ShapeExtend_CompositeSurface::NbVPatches  )  const
 

Standard_EXPORT const Handle_Geom_Surface& ShapeExtend_CompositeSurface::Patch const gp_Pnt2d &  pnt  )  const
 

Standard_EXPORT const Handle_Geom_Surface& ShapeExtend_CompositeSurface::Patch const Standard_Real  U,
const Standard_Real  V
const
 

Standard_EXPORT const Handle_Geom_Surface& ShapeExtend_CompositeSurface::Patch const Standard_Integer  i,
const Standard_Integer  j
const
 

Standard_EXPORT const Handle_TColGeom_HArray2OfSurface& ShapeExtend_CompositeSurface::Patches  )  const
 

Standard_EXPORT void ShapeExtend_CompositeSurface::SetUFirstValue const Standard_Real  UFirst  ) 
 

Standard_EXPORT Standard_Boolean ShapeExtend_CompositeSurface::SetUJointValues const TColStd_Array1OfReal &  UJoints  ) 
 

Standard_EXPORT void ShapeExtend_CompositeSurface::SetVFirstValue const Standard_Real  VFirst  ) 
 

Standard_EXPORT Standard_Boolean ShapeExtend_CompositeSurface::SetVJointValues const TColStd_Array1OfReal &  VJoints  ) 
 

virtual Standard_EXPORT void ShapeExtend_CompositeSurface::Transform const gp_Trsf &  T  )  [virtual]
 

Standard_EXPORT Standard_Real ShapeExtend_CompositeSurface::UGlobalToLocal const Standard_Integer  i,
const Standard_Integer  j,
const Standard_Real  U
const
 

virtual Standard_EXPORT Handle_Geom_Curve ShapeExtend_CompositeSurface::UIso const Standard_Real  U  )  const [virtual]
 

Standard_EXPORT Standard_Real ShapeExtend_CompositeSurface::UJointValue const Standard_Integer  i  )  const
 

Standard_EXPORT Handle_TColStd_HArray1OfReal ShapeExtend_CompositeSurface::UJointValues  )  const
 

Standard_EXPORT Standard_Real ShapeExtend_CompositeSurface::ULocalToGlobal const Standard_Integer  i,
const Standard_Integer  j,
const Standard_Real  u
const
 

virtual Standard_EXPORT void ShapeExtend_CompositeSurface::UReverse  )  [virtual]
 

virtual Standard_EXPORT Standard_Real ShapeExtend_CompositeSurface::UReversedParameter const Standard_Real  U  )  const [virtual]
 

Standard_EXPORT gp_Pnt ShapeExtend_CompositeSurface::Value const gp_Pnt2d &  pnt  )  const
 

Standard_EXPORT Standard_Real ShapeExtend_CompositeSurface::VGlobalToLocal const Standard_Integer  i,
const Standard_Integer  j,
const Standard_Real  V
const
 

virtual Standard_EXPORT Handle_Geom_Curve ShapeExtend_CompositeSurface::VIso const Standard_Real  V  )  const [virtual]
 

Standard_EXPORT Standard_Real ShapeExtend_CompositeSurface::VJointValue const Standard_Integer  j  )  const
 

Standard_EXPORT Handle_TColStd_HArray1OfReal ShapeExtend_CompositeSurface::VJointValues  )  const
 

Standard_EXPORT Standard_Real ShapeExtend_CompositeSurface::VLocalToGlobal const Standard_Integer  i,
const Standard_Integer  j,
const Standard_Real  v
const
 

virtual Standard_EXPORT void ShapeExtend_CompositeSurface::VReverse  )  [virtual]
 

virtual Standard_EXPORT Standard_Real ShapeExtend_CompositeSurface::VReversedParameter const Standard_Real  V  )  const [virtual]
 


Field Documentation

Handle_TColGeom_HArray2OfSurface ShapeExtend_CompositeSurface::myPatches [private]
 

Standard_Boolean ShapeExtend_CompositeSurface::myUClosed [private]
 

Handle_TColStd_HArray1OfReal ShapeExtend_CompositeSurface::myUJointValues [private]
 

Standard_Boolean ShapeExtend_CompositeSurface::myVClosed [private]
 

Handle_TColStd_HArray1OfReal ShapeExtend_CompositeSurface::myVJointValues [private]
 


The documentation for this class was generated from the following file:
Generated on Mon Aug 25 13:42:36 2008 for OpenCASCADE by  doxygen 1.4.1