// File: IntPolyh_SectionLine.cxx // Created: Tue Apr 6 11:05:39 1999 // Author: Fabrice SERVANT // // modified by Edward AGAPOV (eap) Thu Feb 14 2002 (occ139) // Add Prepend(), replace array with sequence #include #include #include //======================================================================= //function : IntPolyh_SectionLine //purpose : //======================================================================= IntPolyh_SectionLine::IntPolyh_SectionLine() /*: n(0),nbstartpoints(0),ptr(0)*/ { } //======================================================================= //function : IntPolyh_SectionLine //purpose : //======================================================================= IntPolyh_SectionLine::IntPolyh_SectionLine(const Standard_Integer N)/* : nbstartpoints(0)*/{ Init(N); } //======================================================================= //function : Init //purpose : //======================================================================= void IntPolyh_SectionLine::Init(const Standard_Integer /*N*/) { // ptr = (void*) (new IntPolyh_StartPoint [N]); // n=N; if (!mySeqOfSPoints.Length()) IncrementNbStartPoints(); } //======================================================================= //function : GetN //purpose : //======================================================================= Standard_Integer IntPolyh_SectionLine::GetN() const { //return(n); return mySeqOfSPoints.Length(); } //======================================================================= //function : NbStartPoints //purpose : //======================================================================= Standard_Integer IntPolyh_SectionLine::NbStartPoints() const { // return(nbstartpoints); return mySeqOfSPoints.Length() - 1; } //======================================================================= //function : IncrementNbStartPoints //purpose : //======================================================================= void IntPolyh_SectionLine::IncrementNbStartPoints() { // nbstartpoints++; IntPolyh_StartPoint aSP; mySeqOfSPoints.Append(aSP); } //======================================================================= //function : Value //purpose : //======================================================================= // # ifdef DEB // #define BORNES1 // # endif const IntPolyh_StartPoint& IntPolyh_SectionLine::Value(const Standard_Integer Index) const { // IntPolyh_StartPoint *ptrstpoint = (IntPolyh_StartPoint *)ptr; // #if BORNES // if(Index<0 || Index>=n) { // cerr<<" Erreur1 "<=n) { // cerr<<" Erreur1 "< %d",/*nbstartpoints*/NbStartPoints()-1); for(Standard_Integer i=0;i