Open CASCADE Technology  7.1.0.beta
Public Member Functions | Protected Attributes

ChFiDS_Spine Class Reference

Contains information necessary for construction of a 3D fillet or chamfer: More...

#include <ChFiDS_Spine.hxx>

Inheritance diagram for ChFiDS_Spine:
Inheritance graph
[legend]

Public Member Functions

 ChFiDS_Spine ()
 
 ChFiDS_Spine (const Standard_Real Tol)
 
void SetEdges (const TopoDS_Edge &E)
 store edges composing the guideline More...
 
void PutInFirst (const TopoDS_Edge &E)
 store the edge at the first position before all others More...
 
Standard_Integer NbEdges () const
 
const TopoDS_EdgeEdges (const Standard_Integer I) const
 
void SetFirstStatus (const ChFiDS_State S)
 stores if the start of a set of edges starts on a section of free border or forms a closed contour More...
 
void SetLastStatus (const ChFiDS_State S)
 stores if the end of a set of edges starts on a section of free border or forms a closed contour More...
 
virtual void AppendElSpine (const Handle< ChFiDS_HElSpine > &Els)
 
Handle< ChFiDS_HElSpineElSpine (const Standard_Integer IE) const
 
Handle< ChFiDS_HElSpineElSpine (const TopoDS_Edge &E) const
 
Handle< ChFiDS_HElSpineElSpine (const Standard_Real W) const
 
ChFiDS_ListOfHElSpineChangeElSpines ()
 
virtual void Reset (const Standard_Boolean AllData=Standard_False)
 
Standard_Boolean SplitDone () const
 
void SplitDone (const Standard_Boolean B)
 
void Load ()
 prepare the guideline depending on the edges that are elementary arks (take parameters from a single curvilinear abscissa); to be able to call methods on the geometry (first,last,value,d1,d2) it is necessary to start with preparation otherwise an exception will be raised More...
 
Standard_Real Resolution (const Standard_Real R3d) const
 
Standard_Boolean IsClosed () const
 
Standard_Real FirstParameter () const
 
Standard_Real LastParameter () const
 
void SetFirstParameter (const Standard_Real Par)
 
void SetLastParameter (const Standard_Real Par)
 
Standard_Real FirstParameter (const Standard_Integer IndexSpine) const
 gives the total length of all arcs before the number IndexSp More...
 
Standard_Real LastParameter (const Standard_Integer IndexSpine) const
 gives the total length till the ark with number IndexSpine (inclus) More...
 
Standard_Real Length (const Standard_Integer IndexSpine) const
 gives the length of ark with number IndexSp More...
 
Standard_Boolean IsPeriodic () const
 
Standard_Real Period () const
 
Standard_Real Absc (const Standard_Real U)
 
Standard_Real Absc (const Standard_Real U, const Standard_Integer I)
 
void Parameter (const Standard_Real AbsC, Standard_Real &U, const Standard_Boolean Oriented=Standard_True)
 
void Parameter (const Standard_Integer Index, const Standard_Real AbsC, Standard_Real &U, const Standard_Boolean Oriented=Standard_True)
 
gp_Pnt Value (const Standard_Real AbsC)
 
void D0 (const Standard_Real AbsC, gp_Pnt &P)
 
void D1 (const Standard_Real AbsC, gp_Pnt &P, gp_Vec &V1)
 
void D2 (const Standard_Real AbsC, gp_Pnt &P, gp_Vec &V1, gp_Vec &V2)
 
void SetCurrent (const Standard_Integer Index)
 
const BRepAdaptor_CurveCurrentElementarySpine (const Standard_Integer Index)
 sets the current curve and returns it More...
 
Standard_Integer CurrentIndexOfElementarySpine () const
 
GeomAbs_CurveType GetType () const
 
gp_Lin Line () const
 
gp_Circ Circle () const
 
ChFiDS_State FirstStatus () const
 returns if the set of edges starts on a free boundary or if the first vertex is a breakpoint or if the set is closed More...
 
ChFiDS_State LastStatus () const
 returns the state at the end of the set More...
 
ChFiDS_State Status (const Standard_Boolean IsFirst) const
 
void SetStatus (const ChFiDS_State S, const Standard_Boolean IsFirst)
 
Standard_Boolean IsTangencyExtremity (const Standard_Boolean IsFirst) const
 returns if the set of edges starts (or end) on Tangency point. More...
 
void SetTangencyExtremity (const Standard_Boolean IsTangency, const Standard_Boolean IsFirst)
 
Standard_Real Absc (const TopoDS_Vertex &V) const
 
TopoDS_Vertex FirstVertex () const
 
TopoDS_Vertex LastVertex () const
 
void SetFirstTgt (const Standard_Real W)
 
void SetLastTgt (const Standard_Real W)
 
Standard_Boolean HasFirstTgt () const
 
Standard_Boolean HasLastTgt () const
 
void SetReference (const Standard_Real W)
 set a parameter reference for the approx. More...
 
void SetReference (const Standard_Integer I)
 set a parameter reference for the approx, at the middle of edge I. More...
 
Standard_Integer Index (const Standard_Real W, const Standard_Boolean Forward=Standard_True) const
 
Standard_Integer Index (const TopoDS_Edge &E) const
 
void UnsetReference ()
 
void SetErrorStatus (const ChFiDS_ErrorStatus state)
 
ChFiDS_ErrorStatus ErrorStatus () const
 
- Public Member Functions inherited from MMgt_TShared
virtual void Delete () const override
 Memory deallocator for transient classes. More...
 
- Public Member Functions inherited from Standard_Transient
 Standard_Transient ()
 Empty constructor. More...
 
 Standard_Transient (const Standard_Transient &)
 Copy constructor – does nothing. More...
 
Standard_Transientoperator= (const Standard_Transient &)
 Assignment operator, needed to avoid copying reference counter. More...
 
virtual ~Standard_Transient ()
 Destructor must be virtual. More...
 
virtual const opencascade::handle< Standard_Type > & DynamicType () const
 Returns a type descriptor about this object. More...
 
Standard_Boolean IsInstance (const opencascade::handle< Standard_Type > &theType) const
 Returns a true value if this is an instance of Type. More...
 
Standard_Boolean IsInstance (const Standard_CString theTypeName) const
 Returns a true value if this is an instance of TypeName. More...
 
Standard_Boolean IsKind (const opencascade::handle< Standard_Type > &theType) const
 Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More...
 
Standard_Boolean IsKind (const Standard_CString theTypeName) const
 Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More...
 
Standard_TransientThis () const
 Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero. More...
 
Standard_Integer GetRefCount () const
 Get the reference counter of this object. More...
 
void IncrementRefCounter () const
 Increments the reference counter of this object. More...
 
Standard_Integer DecrementRefCounter () const
 Decrements the reference counter of this object; returns the decremented value. More...
 

Protected Attributes

Standard_Boolean splitdone
 
ChFiDS_ListOfHElSpine elspines
 

Additional Inherited Members

- Public Types inherited from Standard_Transient
typedef void base_type
 Returns a type descriptor about this object. More...
 
- Static Public Member Functions inherited from Standard_Transient
static const char * get_type_name ()
 Returns a type descriptor about this object. More...
 
static const opencascade::handle< Standard_Type > & get_type_descriptor ()
 Returns type descriptor of Standard_Transient class. More...
 

Detailed Description

Contains information necessary for construction of a 3D fillet or chamfer:

Tools for construction of the Sp by propagation from an edge of solid are provided in the Builder of Fil3d.

The Spine contains among others the information about the nature of extremities of the fillet ( on free border , on section or closed ).

IMPORTANT NOTE : the guideline represented in this way is not C2, although the path claims it. Several palliative workarounds (see the methods at the end) are planned, but they are not enough. It is necessary to change the approach and double the Spine of line C2 with the known consequences for management of interactions between KPart Blend in Fil3d.

Constructor & Destructor Documentation

ChFiDS_Spine::ChFiDS_Spine ( )
ChFiDS_Spine::ChFiDS_Spine ( const Standard_Real  Tol)

Member Function Documentation

Standard_Real ChFiDS_Spine::Absc ( const Standard_Real  U)
Standard_Real ChFiDS_Spine::Absc ( const Standard_Real  U,
const Standard_Integer  I 
)
Standard_Real ChFiDS_Spine::Absc ( const TopoDS_Vertex V) const
virtual void ChFiDS_Spine::AppendElSpine ( const Handle< ChFiDS_HElSpine > &  Els)
virtual

Reimplemented in ChFiDS_FilSpine.

ChFiDS_ListOfHElSpine& ChFiDS_Spine::ChangeElSpines ( )
gp_Circ ChFiDS_Spine::Circle ( ) const
const BRepAdaptor_Curve& ChFiDS_Spine::CurrentElementarySpine ( const Standard_Integer  Index)

sets the current curve and returns it

Standard_Integer ChFiDS_Spine::CurrentIndexOfElementarySpine ( ) const
void ChFiDS_Spine::D0 ( const Standard_Real  AbsC,
gp_Pnt P 
)
void ChFiDS_Spine::D1 ( const Standard_Real  AbsC,
gp_Pnt P,
gp_Vec V1 
)
void ChFiDS_Spine::D2 ( const Standard_Real  AbsC,
gp_Pnt P,
gp_Vec V1,
gp_Vec V2 
)
const TopoDS_Edge& ChFiDS_Spine::Edges ( const Standard_Integer  I) const
Handle< ChFiDS_HElSpine > ChFiDS_Spine::ElSpine ( const Standard_Integer  IE) const
Handle< ChFiDS_HElSpine > ChFiDS_Spine::ElSpine ( const TopoDS_Edge E) const
Handle< ChFiDS_HElSpine > ChFiDS_Spine::ElSpine ( const Standard_Real  W) const
ChFiDS_ErrorStatus ChFiDS_Spine::ErrorStatus ( ) const
Standard_Real ChFiDS_Spine::FirstParameter ( ) const
Standard_Real ChFiDS_Spine::FirstParameter ( const Standard_Integer  IndexSpine) const

gives the total length of all arcs before the number IndexSp

ChFiDS_State ChFiDS_Spine::FirstStatus ( ) const

returns if the set of edges starts on a free boundary or if the first vertex is a breakpoint or if the set is closed

TopoDS_Vertex ChFiDS_Spine::FirstVertex ( ) const
GeomAbs_CurveType ChFiDS_Spine::GetType ( ) const
Standard_Boolean ChFiDS_Spine::HasFirstTgt ( ) const
Standard_Boolean ChFiDS_Spine::HasLastTgt ( ) const
Standard_Integer ChFiDS_Spine::Index ( const Standard_Real  W,
const Standard_Boolean  Forward = Standard_True 
) const
Standard_Integer ChFiDS_Spine::Index ( const TopoDS_Edge E) const
Standard_Boolean ChFiDS_Spine::IsClosed ( ) const
Standard_Boolean ChFiDS_Spine::IsPeriodic ( ) const
Standard_Boolean ChFiDS_Spine::IsTangencyExtremity ( const Standard_Boolean  IsFirst) const

returns if the set of edges starts (or end) on Tangency point.

Standard_Real ChFiDS_Spine::LastParameter ( ) const
Standard_Real ChFiDS_Spine::LastParameter ( const Standard_Integer  IndexSpine) const

gives the total length till the ark with number IndexSpine (inclus)

ChFiDS_State ChFiDS_Spine::LastStatus ( ) const

returns the state at the end of the set

TopoDS_Vertex ChFiDS_Spine::LastVertex ( ) const
Standard_Real ChFiDS_Spine::Length ( const Standard_Integer  IndexSpine) const

gives the length of ark with number IndexSp

gp_Lin ChFiDS_Spine::Line ( ) const
void ChFiDS_Spine::Load ( )

prepare the guideline depending on the edges that are elementary arks (take parameters from a single curvilinear abscissa); to be able to call methods on the geometry (first,last,value,d1,d2) it is necessary to start with preparation otherwise an exception will be raised

Standard_Integer ChFiDS_Spine::NbEdges ( ) const
void ChFiDS_Spine::Parameter ( const Standard_Real  AbsC,
Standard_Real U,
const Standard_Boolean  Oriented = Standard_True 
)
void ChFiDS_Spine::Parameter ( const Standard_Integer  Index,
const Standard_Real  AbsC,
Standard_Real U,
const Standard_Boolean  Oriented = Standard_True 
)
Standard_Real ChFiDS_Spine::Period ( ) const
void ChFiDS_Spine::PutInFirst ( const TopoDS_Edge E)

store the edge at the first position before all others

virtual void ChFiDS_Spine::Reset ( const Standard_Boolean  AllData = Standard_False)
virtual

Reimplemented in ChFiDS_FilSpine.

Standard_Real ChFiDS_Spine::Resolution ( const Standard_Real  R3d) const
void ChFiDS_Spine::SetCurrent ( const Standard_Integer  Index)
void ChFiDS_Spine::SetEdges ( const TopoDS_Edge E)

store edges composing the guideline

void ChFiDS_Spine::SetErrorStatus ( const ChFiDS_ErrorStatus  state)
void ChFiDS_Spine::SetFirstParameter ( const Standard_Real  Par)
void ChFiDS_Spine::SetFirstStatus ( const ChFiDS_State  S)

stores if the start of a set of edges starts on a section of free border or forms a closed contour

void ChFiDS_Spine::SetFirstTgt ( const Standard_Real  W)
void ChFiDS_Spine::SetLastParameter ( const Standard_Real  Par)
void ChFiDS_Spine::SetLastStatus ( const ChFiDS_State  S)

stores if the end of a set of edges starts on a section of free border or forms a closed contour

void ChFiDS_Spine::SetLastTgt ( const Standard_Real  W)
void ChFiDS_Spine::SetReference ( const Standard_Real  W)

set a parameter reference for the approx.

void ChFiDS_Spine::SetReference ( const Standard_Integer  I)

set a parameter reference for the approx, at the middle of edge I.

void ChFiDS_Spine::SetStatus ( const ChFiDS_State  S,
const Standard_Boolean  IsFirst 
)
void ChFiDS_Spine::SetTangencyExtremity ( const Standard_Boolean  IsTangency,
const Standard_Boolean  IsFirst 
)
Standard_Boolean ChFiDS_Spine::SplitDone ( ) const
void ChFiDS_Spine::SplitDone ( const Standard_Boolean  B)
ChFiDS_State ChFiDS_Spine::Status ( const Standard_Boolean  IsFirst) const
void ChFiDS_Spine::UnsetReference ( )
gp_Pnt ChFiDS_Spine::Value ( const Standard_Real  AbsC)

Field Documentation

ChFiDS_ListOfHElSpine ChFiDS_Spine::elspines
protected
Standard_Boolean ChFiDS_Spine::splitdone
protected

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