Open CASCADE Technology 6.6.0
|
Defined Discrete Trihedron Law.
The requirement for path curve is only G1.
The result is C0-continuous surface
that can be later approximated to C1.
#include <GeomFill_DiscreteTrihedron.hxx>
Public Member Functions | |
GeomFill_DiscreteTrihedron () | |
virtual Handle_GeomFill_TrihedronLaw | Copy () const |
void | Init () |
virtual void | SetCurve (const Handle< Adaptor3d_HCurve > &C) |
virtual Standard_Boolean | D0 (const Standard_Real Param, gp_Vec &Tangent, gp_Vec &Normal, gp_Vec &BiNormal) |
compute Trihedron on curve at parameter | |
virtual Standard_Boolean | D1 (const Standard_Real Param, gp_Vec &Tangent, gp_Vec &DTangent, gp_Vec &Normal, gp_Vec &DNormal, gp_Vec &BiNormal, gp_Vec &DBiNormal) |
compute Trihedron and derivative Trihedron on curve at parameter Warning : It used only for C1 or C2 aproximation For the moment it returns null values for DTangent, DNormal and DBiNormal. | |
virtual Standard_Boolean | D2 (const Standard_Real Param, gp_Vec &Tangent, gp_Vec &DTangent, gp_Vec &D2Tangent, gp_Vec &Normal, gp_Vec &DNormal, gp_Vec &D2Normal, gp_Vec &BiNormal, gp_Vec &DBiNormal, gp_Vec &D2BiNormal) |
compute Trihedron on curve first and seconde derivatives. Warning : It used only for C2 aproximation For the moment it returns null values for DTangent, DNormal DBiNormal, D2Tangent, D2Normal, D2BiNormal. | |
virtual Standard_Integer | NbIntervals (const GeomAbs_Shape S) const |
Returns the number of intervals for continuity <S>. May be one if Continuity(me) >= <S> | |
virtual void | Intervals (TColStd_Array1OfReal &T, const GeomAbs_Shape S) const |
Stores in <T> the parameters bounding the intervals of continuity <S>. The array must provide enough room to accomodate for the parameters. i.e. T.Length() > NbIntervals() | |
virtual void | GetAverageLaw (gp_Vec &ATangent, gp_Vec &ANormal, gp_Vec &ABiNormal) |
Get average value of Tangent(t) and Normal(t) it is usful to make fast approximation of rational surfaces. | |
virtual Standard_Boolean | IsConstant () const |
Say if the law is Constant. | |
virtual Standard_Boolean | IsOnlyBy3dCurve () const |
Return True. |
GeomFill_DiscreteTrihedron::GeomFill_DiscreteTrihedron | ( | ) |
virtual Handle_GeomFill_TrihedronLaw GeomFill_DiscreteTrihedron::Copy | ( | ) | const [virtual] |
Implements GeomFill_TrihedronLaw.
virtual Standard_Boolean GeomFill_DiscreteTrihedron::D0 | ( | const Standard_Real | Param, |
gp_Vec & | Tangent, | ||
gp_Vec & | Normal, | ||
gp_Vec & | BiNormal | ||
) | [virtual] |
Implements GeomFill_TrihedronLaw.
virtual Standard_Boolean GeomFill_DiscreteTrihedron::D1 | ( | const Standard_Real | Param, |
gp_Vec & | Tangent, | ||
gp_Vec & | DTangent, | ||
gp_Vec & | Normal, | ||
gp_Vec & | DNormal, | ||
gp_Vec & | BiNormal, | ||
gp_Vec & | DBiNormal | ||
) | [virtual] |
Reimplemented from GeomFill_TrihedronLaw.
virtual Standard_Boolean GeomFill_DiscreteTrihedron::D2 | ( | const Standard_Real | Param, |
gp_Vec & | Tangent, | ||
gp_Vec & | DTangent, | ||
gp_Vec & | D2Tangent, | ||
gp_Vec & | Normal, | ||
gp_Vec & | DNormal, | ||
gp_Vec & | D2Normal, | ||
gp_Vec & | BiNormal, | ||
gp_Vec & | DBiNormal, | ||
gp_Vec & | D2BiNormal | ||
) | [virtual] |
Reimplemented from GeomFill_TrihedronLaw.
virtual void GeomFill_DiscreteTrihedron::GetAverageLaw | ( | gp_Vec & | ATangent, |
gp_Vec & | ANormal, | ||
gp_Vec & | ABiNormal | ||
) | [virtual] |
Implements GeomFill_TrihedronLaw.
void GeomFill_DiscreteTrihedron::Init | ( | ) |
virtual void GeomFill_DiscreteTrihedron::Intervals | ( | TColStd_Array1OfReal & | T, |
const GeomAbs_Shape | S | ||
) | const [virtual] |
Implements GeomFill_TrihedronLaw.
virtual Standard_Boolean GeomFill_DiscreteTrihedron::IsConstant | ( | ) | const [virtual] |
Reimplemented from GeomFill_TrihedronLaw.
virtual Standard_Boolean GeomFill_DiscreteTrihedron::IsOnlyBy3dCurve | ( | ) | const [virtual] |
Reimplemented from GeomFill_TrihedronLaw.
virtual Standard_Integer GeomFill_DiscreteTrihedron::NbIntervals | ( | const GeomAbs_Shape | S | ) | const [virtual] |
Implements GeomFill_TrihedronLaw.
virtual void GeomFill_DiscreteTrihedron::SetCurve | ( | const Handle< Adaptor3d_HCurve > & | C | ) | [virtual] |
Reimplemented from GeomFill_TrihedronLaw.