// File: BRepBlend_HCurveToolGen.gxx // Created: Mon Jul 17 17:39:39 1995 // Author: Modelistation // #include CurveGen_hxx #include #include #include #include #include //============================================================ Standard_Integer BRepBlend_HCurveToolGen::NbSamples (const CurveGen& C, const Standard_Real U0, const Standard_Real U1) { GeomAbs_CurveType typC = C->GetType(); static Standard_Real nbsOther = 10.0; Standard_Real nbs = nbsOther; if(typC == GeomAbs_Line) nbs = 2; else if(typC == GeomAbs_BezierCurve) nbs = 3 + C->Bezier()->NbPoles(); else if(typC == GeomAbs_BSplineCurve) { Handle(Geom_BSplineCurve) BSC = C->BSpline(); nbs = BSC->NbKnots(); nbs*= BSC->Degree(); nbs*= BSC->LastParameter()- BSC->FirstParameter(); nbs/= U1-U0; if(nbs < 2.0) nbs=2; } if(nbs>50) nbs = 50; return((Standard_Integer)nbs); }