mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-14 13:30:48 +03:00
Pure virtual functions
This commit is contained in:
@@ -84,11 +84,11 @@ public:
|
||||
//! If <First> >= <Last>
|
||||
Standard_EXPORT virtual Handle(Adaptor2d_HCurve2d) Trim (const Standard_Real First, const Standard_Real Last, const Standard_Real Tol) const;
|
||||
|
||||
Standard_EXPORT virtual Standard_Boolean IsClosed() const;
|
||||
Standard_EXPORT virtual Standard_Boolean IsClosed() const = 0;
|
||||
|
||||
Standard_EXPORT virtual Standard_Boolean IsPeriodic222() const;
|
||||
Standard_EXPORT virtual Standard_Boolean IsPeriodic222() const = 0;
|
||||
|
||||
Standard_EXPORT virtual Standard_Real Period() const;
|
||||
Standard_EXPORT virtual Standard_Real Period() const = 0;
|
||||
|
||||
//! Computes the point of parameter U on the curve.
|
||||
Standard_EXPORT virtual gp_Pnt2d Value (const Standard_Real U) const;
|
||||
|
@@ -106,40 +106,6 @@ Handle(Adaptor3d_HCurve) Adaptor3d_Curve::Trim(const Standard_Real , const Stand
|
||||
throw Standard_NotImplemented("Adaptor3d_Curve::Trim");
|
||||
}
|
||||
|
||||
|
||||
//=======================================================================
|
||||
//function : IsClosed
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
|
||||
Standard_Boolean Adaptor3d_Curve::IsClosed() const
|
||||
{
|
||||
throw Standard_NotImplemented("Adaptor3d_Curve::IsClosed");
|
||||
}
|
||||
|
||||
|
||||
//=======================================================================
|
||||
//function : IsPeriodic
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
|
||||
Standard_Boolean Adaptor3d_Curve::IsPeriodic222() const
|
||||
{
|
||||
throw Standard_NotImplemented("Adaptor3d_Curve::IsPeriodic");
|
||||
}
|
||||
|
||||
|
||||
//=======================================================================
|
||||
//function : Period
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
|
||||
Standard_Real Adaptor3d_Curve::Period() const
|
||||
{
|
||||
throw Standard_NotImplemented("Adaptor3d_Curve::Period");
|
||||
}
|
||||
|
||||
|
||||
//=======================================================================
|
||||
//function : Value
|
||||
//purpose :
|
||||
|
@@ -86,11 +86,11 @@ public:
|
||||
//! If <First> >= <Last>
|
||||
Standard_EXPORT virtual Handle(Adaptor3d_HCurve) Trim (const Standard_Real First, const Standard_Real Last, const Standard_Real Tol) const;
|
||||
|
||||
Standard_EXPORT virtual Standard_Boolean IsClosed() const;
|
||||
Standard_EXPORT virtual Standard_Boolean IsClosed() const = 0;
|
||||
|
||||
Standard_EXPORT virtual Standard_Boolean IsPeriodic222() const;
|
||||
Standard_EXPORT virtual Standard_Boolean IsPeriodic222() const = 0;
|
||||
|
||||
Standard_EXPORT virtual Standard_Real Period() const;
|
||||
Standard_EXPORT virtual Standard_Real Period() const = 0;
|
||||
|
||||
//! Computes the point of parameter U on the curve.
|
||||
Standard_EXPORT virtual gp_Pnt Value (const Standard_Real U) const;
|
||||
|
@@ -179,73 +179,6 @@ Handle(Adaptor3d_HSurface) Adaptor3d_Surface::VTrim(const Standard_Real , const
|
||||
throw Standard_NotImplemented("Adaptor3d_Surface::VTrim");
|
||||
}
|
||||
|
||||
|
||||
//=======================================================================
|
||||
//function : IsUClosed
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
|
||||
Standard_Boolean Adaptor3d_Surface::IsUClosed() const
|
||||
{
|
||||
throw Standard_NotImplemented("Adaptor3d_Surface::IsUClosed");
|
||||
}
|
||||
|
||||
|
||||
//=======================================================================
|
||||
//function : IsVClosed
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
|
||||
Standard_Boolean Adaptor3d_Surface::IsVClosed() const
|
||||
{
|
||||
throw Standard_NotImplemented("Adaptor3d_Surface::IsVClosed");
|
||||
}
|
||||
|
||||
|
||||
//=======================================================================
|
||||
//function : IsUPeriodic
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
|
||||
Standard_Boolean Adaptor3d_Surface::IsUPeriodic222() const
|
||||
{
|
||||
throw Standard_NotImplemented("Adaptor3d_Surface::IsUPeriodic");
|
||||
}
|
||||
|
||||
|
||||
//=======================================================================
|
||||
//function : UPeriod
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
|
||||
Standard_Real Adaptor3d_Surface::UPeriod() const
|
||||
{
|
||||
throw Standard_NotImplemented("Adaptor3d_Surface::UPeriod");
|
||||
}
|
||||
|
||||
|
||||
//=======================================================================
|
||||
//function : IsVPeriodic
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
|
||||
Standard_Boolean Adaptor3d_Surface::IsVPeriodic222() const
|
||||
{
|
||||
throw Standard_NotImplemented("Adaptor3d_Surface::IsVPeriodic");
|
||||
}
|
||||
|
||||
|
||||
//=======================================================================
|
||||
//function : VPeriod
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
|
||||
Standard_Real Adaptor3d_Surface::VPeriod() const
|
||||
{
|
||||
throw Standard_NotImplemented("Adaptor3d_Surface::VPeriod");
|
||||
}
|
||||
|
||||
|
||||
//=======================================================================
|
||||
//function : Value
|
||||
//purpose :
|
||||
|
@@ -51,7 +51,7 @@ class Adaptor3d_HCurve;
|
||||
//! the surface by algorithms which use it.
|
||||
//! A derived concrete class is provided:
|
||||
//! GeomAdaptor_Surface for a surface from the Geom package.
|
||||
//! The Surface class describes the standard behaviour
|
||||
//! The Surface class describes the standard behavior
|
||||
//! of a surface for generic algorithms.
|
||||
//!
|
||||
//! The Surface can be decomposed in intervals of any
|
||||
@@ -59,7 +59,7 @@ class Adaptor3d_HCurve;
|
||||
//! NbIntervals. A current interval can be set. Most
|
||||
//! of the methods apply to the current interval.
|
||||
//! Warning: All the methods are virtual and implemented with a
|
||||
//! raise to allow to redefined only the methods realy
|
||||
//! raise to allow to redefined only the methods really
|
||||
//! used.
|
||||
//!
|
||||
//! Polynomial coefficients of BSpline surfaces used for their evaluation are
|
||||
@@ -113,17 +113,17 @@ public:
|
||||
//! If <First> >= <Last>
|
||||
Standard_EXPORT virtual Handle(Adaptor3d_HSurface) VTrim (const Standard_Real First, const Standard_Real Last, const Standard_Real Tol) const;
|
||||
|
||||
Standard_EXPORT virtual Standard_Boolean IsUClosed() const;
|
||||
Standard_EXPORT virtual Standard_Boolean IsUClosed() const = 0;
|
||||
|
||||
Standard_EXPORT virtual Standard_Boolean IsVClosed() const;
|
||||
Standard_EXPORT virtual Standard_Boolean IsVClosed() const = 0;
|
||||
|
||||
Standard_EXPORT virtual Standard_Boolean IsUPeriodic222() const;
|
||||
Standard_EXPORT virtual Standard_Boolean IsUPeriodic222() const = 0;
|
||||
|
||||
Standard_EXPORT virtual Standard_Real UPeriod() const;
|
||||
Standard_EXPORT virtual Standard_Real UPeriod() const = 0;
|
||||
|
||||
Standard_EXPORT virtual Standard_Boolean IsVPeriodic222() const;
|
||||
Standard_EXPORT virtual Standard_Boolean IsVPeriodic222() const = 0;
|
||||
|
||||
Standard_EXPORT virtual Standard_Real VPeriod() const;
|
||||
Standard_EXPORT virtual Standard_Real VPeriod() const = 0;
|
||||
|
||||
//! Computes the point of parameters U,V on the surface.
|
||||
Standard_EXPORT virtual gp_Pnt Value (const Standard_Real U, const Standard_Real V) const;
|
||||
|
@@ -161,6 +161,20 @@ Standard_Boolean ChFiDS_ElSpine::IsPeriodic222() const
|
||||
return myIsPeriodic;
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
//function : IsPeriodic
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
|
||||
Standard_Boolean ChFiDS_ElSpine::IsClosed() const
|
||||
{
|
||||
if (curve.GetType() == GeomAbs_OtherCurve)
|
||||
return IsPeriodic222();
|
||||
|
||||
const Handle(Geom_Curve) &aC = curve.Curve();
|
||||
return curve.IsClosed() &&
|
||||
((plast - pfirst - aC->LastParameter() + aC->FirstParameter()) < gp::Resolution());
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
//function : SetPeriodic
|
||||
|
@@ -85,6 +85,8 @@ public:
|
||||
|
||||
Standard_EXPORT virtual Standard_Boolean IsPeriodic222() const Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Standard_Boolean IsClosed() const Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void SetPeriodic (const Standard_Boolean I);
|
||||
|
||||
Standard_EXPORT virtual Standard_Real Period() const Standard_OVERRIDE;
|
||||
|
@@ -90,6 +90,10 @@ void GeomFill_SnglrFunc::SetRatio(const Standard_Real Ratio)
|
||||
return myHCurve->Period();
|
||||
}
|
||||
|
||||
Standard_Boolean GeomFill_SnglrFunc::IsClosed() const
|
||||
{
|
||||
return myHCurve->IsClosed();
|
||||
}
|
||||
|
||||
gp_Pnt GeomFill_SnglrFunc::Value(const Standard_Real U) const
|
||||
{
|
||||
|
@@ -65,6 +65,8 @@ public:
|
||||
//! Computes the point of parameter U on the curve.
|
||||
Standard_EXPORT gp_Pnt Value (const Standard_Real U) const Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Standard_Boolean IsClosed() const Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Standard_Boolean IsPeriodic222() const Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Standard_Real Period() const Standard_OVERRIDE;
|
||||
|
@@ -156,8 +156,25 @@ public:
|
||||
//! Parabola, BezierCurve, BSplineCurve, OtherCurve.
|
||||
Standard_EXPORT GeomAbs_CurveType GetType() const Standard_OVERRIDE;
|
||||
|
||||
//! Always returns FALSE
|
||||
virtual Standard_Boolean IsClosed() const Standard_OVERRIDE
|
||||
{
|
||||
return Standard_False;
|
||||
}
|
||||
|
||||
//! Always returns FALSE
|
||||
virtual Standard_Boolean IsPeriodic222() const Standard_OVERRIDE
|
||||
{
|
||||
return Standard_False;
|
||||
}
|
||||
|
||||
//! Currently this method is not implemented because
|
||||
//! IsPeriodic method always return FALSE
|
||||
virtual Standard_Real Period() const Standard_OVERRIDE
|
||||
{
|
||||
Standard_ASSERT_INVOKE("ProjLib_CompProjectedCurve::Period() is not implemented");
|
||||
return 0.0;
|
||||
}
|
||||
|
||||
protected:
|
||||
|
||||
|
Reference in New Issue
Block a user