class CurveUZ : public std::vector<PointUZ>
{
public:
- CurveUZ( double theXcurv, const gp_Vec2d& theProfileDir = gp_Vec2d() );
+ CurveUZ( double theXcurv, const gp_Vec2d& theProfileDir, double theDeltaZ );
~CurveUZ();
double Xcurv() const;
- gp_Vec2d ProfileDir() const;
+ gp_Vec2d ProfileDir() const;
+ double DeltaZ() const;
CurveUZ operator + ( const CurveUZ& ) const;
CurveUZ operator * ( double ) const;
private:
double myXcurv;
gp_Vec2d myProfileDir;
+ double myDeltaZ;
};
protected:
static void CurveTo3D( const Handle_Geom2d_BSplineCurve& theHydraulicAxis,
const CurveUZ& theMidCurve, const CurveUZ& theWidthCurve,
- AltitudePoints& thePoints, double dz );
+ AltitudePoints& thePoints );
static void Interpolate( const CurveUZ& theCurveA, const CurveUZ& theCurveB,
int theNbSteps, std::vector<CurveUZ>& theInterpolation,
TopoDS_Shape& OutOutlet,
bool Create3dPres,
bool Create2dPres,
- std::set<int>& InvInd );
+ std::set<int>& InvInd,
+ bool& WireIntersections);
- static void Get2dFaceFrom3dPres(const TopoDS_Compound& cmp, TopoDS_Face& outF );
+ static bool Get2dFaceFrom3dPres(const TopoDS_Compound& cmp, TopoDS_Face& outF );
static int EstimateNbPoints( const std::vector<Handle_HYDROData_Profile>& theProfiles,
double theDDZ, double theSpatialStep );
bool Create3dPres,
bool Create2dPres,
std::set<int>& InvInd,
- int thePntsLimit );
+ int thePntsLimit,
+ bool& WireIntersections);
};