}
if(found){
if(BRep_Tool::Continuity(E,F1,F2)<=GeomAbs_C0){
- if(tgtfaces(E, F1, F2, TolAng, couture)){
- B.Continuity(E,F1,F2,GeomAbs_G1);
- }
+
+ try {
+ if(tgtfaces(E, F1, F2, TolAng, couture)){
+ B.Continuity(E,F1,F2,GeomAbs_G1);
+ }
+ }
+ catch(Standard_Failure)
+ {
+ }
}
}
}
{
BRep_Builder B;
if(BRep_Tool::Continuity(E,F1,F2)<=GeomAbs_C0){
- if( tgtfaces(E, F1, F2, TolAng, F1.IsEqual(F2))) {
- B.Continuity(E,F1,F2,GeomAbs_G1);
- }
+ try {
+ if( tgtfaces(E, F1, F2, TolAng, F1.IsEqual(F2))) {
+ B.Continuity(E,F1,F2,GeomAbs_G1);
+ }
+ }
+ catch(Standard_Failure)
+ {
+ }
}
}
Geom2dAdaptor_Curve anOtherPCurve;
if (IShape == aData->IndexOfS1())
{
- anOtherPCurve.Load (aData->InterferenceOnS1().PCurveOnFace(),
+ const Handle(Geom2d_Curve)& aPCurve = aData->InterferenceOnS1().PCurveOnFace();
+ if(aPCurve.IsNull())
+ continue;
+
+ anOtherPCurve.Load (aPCurve,
aData->InterferenceOnS1().FirstParameter(),
aData->InterferenceOnS1().LastParameter());
}
else if (IShape == aData->IndexOfS2())
{
- anOtherPCurve.Load (aData->InterferenceOnS2().PCurveOnFace(),
+ const Handle(Geom2d_Curve)& aPCurve = aData->InterferenceOnS2().PCurveOnFace();
+ if(aPCurve.IsNull())
+ continue;
+
+ anOtherPCurve.Load (aPCurve,
aData->InterferenceOnS2().FirstParameter(),
aData->InterferenceOnS2().LastParameter());
}
---Purpose: ConstructionError is raised if Ufirst>Ulast
Load(me : in out; C : Curve from Geom2d);
+ ---C++: inline
Load(me : in out; C : Curve from Geom2d; UFirst,ULast : Real)
raises
ConstructionError from Standard;
+ ---C++: inline
---Purpose: ConstructionError is raised if Ufirst>Ulast
Curve(me) returns Curve from Geom2d
LocalContinuity(me; U1, U2 : Real) returns Shape from GeomAbs
is static private;
+
+ load(me : in out; C : Curve from Geom2d; UFirst,ULast : Real)
+ is private;
fields
#include <Standard_OutOfRange.hxx>
#include <Standard_NoSuchObject.hxx>
+#include <Standard_NullObject.hxx>
#include <Standard_NotImplemented.hxx>
#define myBspl (*((Handle(Geom2d_BSplineCurve)*)&myCurve))
//=======================================================================
Geom2dAdaptor_Curve::Geom2dAdaptor_Curve()
+ : myTypeCurve(GeomAbs_OtherCurve),
+ myFirst(0.),
+ myLast(0.)
{
}
//purpose :
//=======================================================================
-Geom2dAdaptor_Curve::Geom2dAdaptor_Curve(const Handle(Geom2d_Curve)& C) {
- Load(C,C->FirstParameter(),C->LastParameter());
+Geom2dAdaptor_Curve::Geom2dAdaptor_Curve(const Handle(Geom2d_Curve)& C)
+{
+ Load(C);
}
//=======================================================================
Geom2dAdaptor_Curve::Geom2dAdaptor_Curve(const Handle(Geom2d_Curve)& C,
const Standard_Real UFirst,
- const Standard_Real ULast) {
- if ( UFirst > ULast) Standard_ConstructionError::Raise();
+ const Standard_Real ULast)
+{
Load(C,UFirst,ULast);
}
-//=======================================================================
-//function : Load
-//purpose :
-//=======================================================================
-
-void Geom2dAdaptor_Curve::Load(const Handle(Geom2d_Curve)& C) {
- Load(C,C->FirstParameter(),C->LastParameter());
-}
//=======================================================================
//function : Load
//purpose :
//=======================================================================
-void Geom2dAdaptor_Curve::Load(const Handle(Geom2d_Curve)& C,
- const Standard_Real UFirst,
- const Standard_Real ULast) {
- if ( UFirst > ULast) Standard_ConstructionError::Raise();
+void Geom2dAdaptor_Curve::load(const Handle(Geom2d_Curve)& C,
+ const Standard_Real UFirst,
+ const Standard_Real ULast)
+{
myFirst = UFirst;
myLast = ULast;
#include <gp_Pnt2d.hxx>
#include <Geom2d_Curve.hxx>
+#include <Standard_NoSuchObject.hxx>
+#include <Standard_NullObject.hxx>
//=======================================================================
//function : FirstParameter
return myTypeCurve;
}
+//=======================================================================
+//function : Load
+//purpose :
+//=======================================================================
+
+inline void Geom2dAdaptor_Curve::Load(const Handle(Geom2d_Curve)& C)
+{
+ if ( C.IsNull()) Standard_NullObject::Raise();
+
+ load(C,C->FirstParameter(),C->LastParameter());
+}
+
+//=======================================================================
+//function : Load
+//purpose :
+//=======================================================================
+
+inline void Geom2dAdaptor_Curve::Load(const Handle(Geom2d_Curve)& C,
+ const Standard_Real UFirst,
+ const Standard_Real ULast)
+{
+ if ( C.IsNull()) Standard_NullObject::Raise();
+
+ if ( UFirst > ULast) Standard_ConstructionError::Raise();
+
+ load(C,UFirst,ULast);
+}
\ No newline at end of file
Load(me : in out; C : Curve from Geom; UFirst,ULast : Real)
raises
ConstructionError from Standard;
+ ---C++: inline
---Purpose: ConstructionError is raised if Ufirst>Ulast
Curve(me) returns Curve from Geom
LocalContinuity(me; U1, U2 : Real) returns Shape from GeomAbs
is static private;
+
+ load(me : in out; C : Curve from Geom; UFirst,ULast : Real)
+ is private;
fields
#include <Standard_OutOfRange.hxx>
#include <Standard_NoSuchObject.hxx>
+#include <Standard_NullObject.hxx>
#include <Standard_NotImplemented.hxx>
#include <Geom_OffsetCurve.hxx>
//purpose :
//=======================================================================
-void GeomAdaptor_Curve::Load(const Handle(Geom_Curve)& C,
+void GeomAdaptor_Curve::load(const Handle(Geom_Curve)& C,
const Standard_Real UFirst,
const Standard_Real ULast)
{
- if ( UFirst > ULast) Standard_ConstructionError::Raise();
myFirst = UFirst;
myLast = ULast;
#include <gp_Pnt.hxx>
#include <Geom_Curve.hxx>
+#include <Standard_NullObject.hxx>
+#include <Standard_ConstructionError.hxx>
+
//=======================================================================
//function : GeomAdaptor_Curve
//=======================================================================
inline GeomAdaptor_Curve::GeomAdaptor_Curve()
+ : myTypeCurve(GeomAbs_OtherCurve),
+ myFirst(0.),
+ myLast(0.)
{
}
inline GeomAdaptor_Curve::GeomAdaptor_Curve(const Handle(Geom_Curve)& C)
{
- Load(C,C->FirstParameter(),C->LastParameter());
+ Load(C);
}
//=======================================================================
const Standard_Real UFirst,
const Standard_Real ULast)
{
- if (UFirst > ULast) Standard_ConstructionError::Raise();
Load(C,UFirst,ULast);
}
inline void GeomAdaptor_Curve::Load(const Handle(Geom_Curve)& C)
{
- Load(C,C->FirstParameter(),C->LastParameter());
+ if ( C.IsNull()) Standard_NullObject::Raise();
+
+ load(C,C->FirstParameter(),C->LastParameter());
+}
+
+//=======================================================================
+//function : Load
+//purpose :
+//=======================================================================
+
+inline void GeomAdaptor_Curve::Load(const Handle(Geom_Curve)& C,
+ const Standard_Real UFirst,
+ const Standard_Real ULast)
+{
+ if ( C.IsNull()) Standard_NullObject::Raise();
+
+ if ( UFirst > ULast) Standard_ConstructionError::Raise();
+
+ load(C,UFirst,ULast);
}
+
//=======================================================================
//function : FirstParameter
//purpose :
TolU : Real = 0.0;
TolV : Real = 0.0)
raises ConstructionError from Standard;
- ---Purpose: ConstructionError is raised if UFirst>ULast or VFirst>VLast
+ ---C++: inline
+ ---Purpose: ConstructionError is raised if UFirst>ULast or VFirst>VLast
Surface(me) returns Surface from Geom
---C++: return const&
is redefined static;
- Span (me;Side :Integer; Ideb,Ifin:Integer;
- OutIdeb,OutIfin:out Integer;
- NbKnots : Integer )
- is private;
+ Span (me;Side :Integer; Ideb,Ifin:Integer;
+ OutIdeb,OutIfin:out Integer;
+ NbKnots : Integer )
+ is private;
IfUVBound (me;U,V :Real;Ideb,Ifin,IVdeb,IVfin :out Integer;
USide,VSide: Integer)
returns Boolean from Standard
- is private;
-
-
+ is private;
+
+ load (me : in out; S : Surface from Geom;
+ UFirst,ULast,VFirst,VLast : Real;
+ TolU : Real = 0.0;
+ TolV : Real = 0.0)
+ is private;
+
fields
mySurface : Surface from Geom;
#include <BSplCLib.hxx>
#include <Precision.hxx>
#include <Standard_NoSuchObject.hxx>
+#include <Standard_NullObject.hxx>
#define myBspl (*((Handle(Geom_BSplineSurface)*)&mySurface))
#define myExtSurf (*((Handle(Geom_SurfaceOfLinearExtrusion)*)&mySurface))
//purpose :
//=======================================================================
-void GeomAdaptor_Surface::Load(const Handle(Geom_Surface)& S,
+void GeomAdaptor_Surface::load(const Handle(Geom_Surface)& S,
const Standard_Real UFirst,
const Standard_Real ULast,
const Standard_Real VFirst,
const Standard_Real TolU,
const Standard_Real TolV)
{
- if(UFirst>ULast || VFirst>VLast)
- Standard_ConstructionError::Raise("GeomAdaptor_Surface::Load");
-
myTolU = TolU;
myTolV = TolV;
myUFirst = UFirst;
// Copyright: OPEN CASCADE 1993
#include <Geom_Surface.hxx>
+#include <Standard_NullObject.hxx>
+#include <Standard_ConstructionError.hxx>
//=======================================================================
//function : GeomAdaptor_Surface
//=======================================================================
inline GeomAdaptor_Surface::GeomAdaptor_Surface()
- : myTolU(0.), myTolV(0.)
-{}
+ : mySurfaceType(GeomAbs_OtherSurface),
+ myUFirst(0.),
+ myULast(0.),
+ myVFirst(0.),
+ myVLast (0.),
+ myTolU(0.),
+ myTolV(0.)
+{
+}
//=======================================================================
//function : GeomAdaptor_Surface
inline void GeomAdaptor_Surface::Load(const Handle(Geom_Surface)& S)
{
+ if ( S.IsNull()) Standard_NullObject::Raise("GeomAdaptor_Surface::Load");
+
Standard_Real U1,U2,V1,V2;
S->Bounds(U1,U2,V1,V2);
- Load(S,U1,U2,V1,V2);
+ load(S,U1,U2,V1,V2);
+}
+
+//=======================================================================
+//function : Load
+//purpose :
+//=======================================================================
+
+inline void GeomAdaptor_Surface::Load(const Handle(Geom_Surface)& S,
+ const Standard_Real UFirst,
+ const Standard_Real ULast,
+ const Standard_Real VFirst,
+ const Standard_Real VLast,
+ const Standard_Real TolU,
+ const Standard_Real TolV)
+{
+ if ( S.IsNull()) Standard_NullObject::Raise("GeomAdaptor_Surface::Load");
+
+ if(UFirst>ULast || VFirst>VLast)
+ Standard_ConstructionError::Raise("GeomAdaptor_Surface::Load");
+
+ load(S,UFirst,ULast,VFirst,VLast,TolU,TolV);
}
+
//=======================================================================
//function : Surface
//purpose :