4. Precised calculation of derivatives of surface of revolution is implemented for the points of surface placed on the axis of revolution (Geom_SurfaceOfRevolution.cxx)
5. Small modifications are made to adjust algorithms to new behavior of B-spline calculation.
6. Test cases were modified according to the modern behavior.
7. Changes in BRepLib_CheckCurveOnSurface to use adaptors instead of geometric entities
9. Added methods to access directly poles, knots, multiplicities of BSpline curves and surfaces
static
Standard_Real IntersectCurves2d(const gp_Pnt& aPV,
const TopoDS_Face& aF,
- const Handle(Geom_Surface)& aS,
+ const GeomAdaptor_Surface& aS,
const TopoDS_Edge& aE1,
const TopoDS_Edge& aE2);
aT=BRep_Tool::Parameter(aV, aE);
//
aC2D->D0(aT, aP2D);
- aS->D0(aP2D.X(), aP2D.Y(), aP);
+ aGAS.D0(aP2D.X(), aP2D.Y(), aP);
aD2=aPV.SquareDistance(aP);
if (aD2>aD2max) {
aD2max=aD2;
continue;
}
//
- aD2=IntersectCurves2d(aPV, aF, aS, aE, aE1);
+ aD2=IntersectCurves2d(aPV, aF, aGAS, aE, aE1);
if (aD2>aD2max) {
aD2max=aD2;
}
//=======================================================================
Standard_Real IntersectCurves2d(const gp_Pnt& aPV,
const TopoDS_Face& aF,
- const Handle(Geom_Surface)& aS,
+ const GeomAdaptor_Surface& aGAS,
const TopoDS_Edge& aE1,
const TopoDS_Edge& aE2)
{
}
//
aP2D = aPoint.Value();
- aS->D0(aP2D.X(), aP2D.Y(), aP);
+ aGAS.D0(aP2D.X(), aP2D.Y(), aP);
aD=aPV.SquareDistance(aP);
if (aD > aDist) {
aDist = 1.01 * aD;
// otherwise preserve only one of its representations.
//----------------------------------------------------------
if (!BRep_Tool::Degenerated(E)) {
+ Standard_Real aParTol = 2.0 * Precision::PConfusion();
for (Standard_Integer k = 1; k < TheVer.Length(); k ++) {
if (TheVer.Value(k).IsSame(TheVer.Value(k+1)) ||
-
- Abs(ThePar.Value(k)-ThePar.Value(k+1)) <= Precision::PConfusion()) {
+ Abs(ThePar.Value(k)-ThePar.Value(k+1)) <= aParTol) {
if(k+1 == TheVer.Length()) {
StoreInMap(TheVer(k), TheVer(k+1), MapVV);
#include <GeomAdaptor_HSurface.hxx>
#include <GeomAdaptor_HCurve.hxx>
+#include <Geom2dAdaptor_HCurve.hxx>
#include <GeomProjLib.hxx>
const Standard_Real theFirst,
const Standard_Real theLast)
:
- myCurve(theC3D),
- myPCurve(theC2D),
- mySurf(theSurf),
myFirst(theFirst),
myLast(theLast)
{
+ myCurve = new GeomAdaptor_HCurve(theC3D);
+ myPCurve = new Geom2dAdaptor_HCurve(theC2D);
+ mySurf = new GeomAdaptor_HSurface(theSurf);
}
//
virtual Standard_Integer NbVariables() const {
return ((myFirst <= theParam) && (theParam <= myLast));
}
- Handle(Geom_Curve) myCurve;
- Handle(Geom2d_Curve) myPCurve;
- Handle(Geom_Surface) mySurf;
+ Handle(GeomAdaptor_HCurve) myCurve;
+ Handle(Geom2dAdaptor_HCurve) myPCurve;
+ Handle(GeomAdaptor_HSurface) mySurf;
Standard_Real myFirst;
Standard_Real myLast;
};
Standard_Real cl = C->LastParameter();
Standard_Real epsilon = Precision::PConfusion();
Standard_Boolean periodic = C->IsPeriodic();
-
+ GeomAdaptor_Curve aCA(C);
TopoDS_Vertex V1,V2;
if (periodic) {
Standard_Boolean p1inf = Precision::IsNegativeInfinite(p1);
Standard_Boolean p2inf = Precision::IsPositiveInfinite(p2);
gp_Pnt P1,P2;
- if (!p1inf) P1 = C->Value(p1);
- if (!p2inf) P2 = C->Value(p2);
+ if (!p1inf) P1 = aCA.Value(p1);
+ if (!p2inf) P2 = aCA.Value(p2);
Standard_Real preci = BRepLib::Precision();
BRep_Builder B;
// check for closed curve
Standard_Boolean closed = Standard_False;
+ Standard_Boolean degenerated = Standard_False;
if (!p1inf && !p2inf)
closed = (P1.Distance(P2) <= preci);
V2 = V1;
else {
if (!V1.IsSame(V2)) {
- myError = BRepLib_DifferentPointsOnClosedCurve;
- return;
+ myError = BRepLib_DifferentPointsOnClosedCurve;
+ return;
}
else if (P1.Distance(BRep_Tool::Pnt(V1)) >
- Max(preci,BRep_Tool::Tolerance(V1))) {
- myError = BRepLib_DifferentPointsOnClosedCurve;
- return;
+ Max(preci,BRep_Tool::Tolerance(V1))) {
+ myError = BRepLib_DifferentPointsOnClosedCurve;
+ return;
+ }
+ else
+ {
+ gp_Pnt PM = aCA.Value((p1+p2)/2);
+ if (P1.Distance(PM) < preci)
+ degenerated = Standard_True;
}
}
}
B.Add(E,V2);
}
B.Range(E,p1,p2);
+ B.Degenerated(E, degenerated);
myError = BRepLib_EdgeDone;
Done();
{
// replaced by simple dichotomy (RLE)
Ilc = XX.Lower();
+ if (XX.Length() <= 1) return;
const Standard_Real *px = &XX(Ilc);
px -= Ilc;
// if (D1UMag <= MagTol || D1VMag <= MagTol && NMag > MagTol) MagTol = 2* NMag;
}
else
- { Normal = gp_Dir (D1UvD1V); Status = Defined; }
+ {
+ // Firstly normalize tangent vectors D1U and D1V (this method is more stable)
+ gp_Dir aD1U(D1U);
+ gp_Dir aD1V(D1V);
+ Normal = gp_Dir(aD1U.Crossed(aD1V));
+ Status = Defined;
+ }
}
IntExtIsDone = IntExtIsDone || mydone;
}
mydone = IntExtIsDone;
+
+ // Additional checking if the point is on the first or last point of the curve and does not added yet
+ if (mydist1 < Precision::SquareConfusion() || mydist2 < Precision::SquareConfusion())
+ {
+ Standard_Boolean isFirstAdded = Standard_False;
+ Standard_Boolean isLastAdded = Standard_False;
+ Standard_Integer aNbPoints = mypoint.Length();
+ for (i = 1; i <= aNbPoints; i++)
+ {
+ U = mypoint.Value(i).Parameter();
+ if (Abs(U - myuinf) < mytolu)
+ isFirstAdded = Standard_True;
+ else if (Abs(myusup - U) < mytolu)
+ isLastAdded = Standard_True;
+ }
+ if (!isFirstAdded && mydist1 < Precision::SquareConfusion())
+ {
+ mySqDist.Prepend(mydist1);
+ myismin.Prepend(Standard_True);
+ mypoint.Prepend(ThePOnC(myuinf, Pf));
+ }
+ if (!isLastAdded && mydist2 < Precision::SquareConfusion())
+ {
+ mySqDist.Append(mydist2);
+ myismin.Append(Standard_True);
+ mypoint.Append(ThePOnC(myusup, Pl));
+ }
+ }
return;
}
}
raises DimensionError;
---Purpose :
-- Raised if the length of K is not equal to the number of knots.
+ Knots (me)
+ returns Array1OfReal from TColStd
+ ---Purpose : returns the knot values of the B-spline curve;
+ -- Warning
+ -- A knot with a multiplicity greater than 1 is not
+ -- repeated in the knot table. The Multiplicity function
+ -- can be used to obtain the multiplicity of each knot.
+ ---C++ : return const &
+ is static;
KnotSequence (me; K : out Array1OfReal from TColStd)
-- Standard_DimensionError if the array K is not of
-- the appropriate length.Returns the knots sequence.
raises DimensionError;
+ KnotSequence (me)
+ returns Array1OfReal from TColStd
+ ---Purpose : returns the knots of the B-spline curve.
+ -- Knots with multiplicit greater than 1 are repeated
+ ---C++ : return const &
+ is static;
raises DimensionError;
---Purpose :
-- Raised if the length of M is not equal to NbKnots.
+ Multiplicities (me)
+ returns Array1OfInteger from TColStd
+ ---Purpose : returns the multiplicity of the knots of the curve.
+ ---C++ : return const &
+ is static;
NbKnots (me) returns Integer;
raises DimensionError;
---Purpose :
-- Raised if the length of P is not equal to the number of poles.
+ Poles (me)
+ returns Array1OfPnt from TColgp
+ ---Purpose : Returns the poles of the B-spline curve;
+ ---C++ : return const &
+ is static;
StartPoint (me) returns Pnt;
raises DimensionError;
---Purpose :
-- Raised if the length of W is not equal to NbPoles.
+ Weights (me)
+ returns Array1OfReal from TColStd
+ ---Purpose : Returns the weights of the B-spline curve;
+ ---C++ : return const &
+ is static;
BSplCLib::LocateParameter(deg,knots->Array1(),mults->Array1(),
NewU2,periodic,FromU1,ToU2,index2,U);
- if ( Abs(knots->Value(index2+1)-U) <= Eps)
+ if ( Abs(knots->Value(index2+1)-U) <= Eps || index2 == index1)
index2++;
Standard_Integer nbknots = index2 - index1 + 1;
K = knots->Array1();
}
+const TColStd_Array1OfReal& Geom_BSplineCurve::Knots() const
+{
+ return knots->Array1();
+}
+
//=======================================================================
//function : KnotSequence
//purpose :
K = flatknots->Array1();
}
+const TColStd_Array1OfReal& Geom_BSplineCurve::KnotSequence() const
+{
+ return flatknots->Array1();
+}
+
//=======================================================================
//function : LastUKnotIndex
//purpose :
M = mults->Array1();
}
+const TColStd_Array1OfInteger& Geom_BSplineCurve::Multiplicities() const
+{
+ return mults->Array1();
+}
+
//=======================================================================
//function : NbKnots
//purpose :
P = poles->Array1();
}
+const TColgp_Array1OfPnt& Geom_BSplineCurve::Poles() const
+{
+ return poles->Array1();
+}
+
//=======================================================================
//function : StartPoint
//purpose :
}
}
+const TColStd_Array1OfReal& Geom_BSplineCurve::Weights() const
+{
+ if (IsRational())
+ return weights->Array1();
+ return BSplCLib::NoWeights();
+}
+
//=======================================================================
//function : IsRational
//purpose :
---Purpose :
-- Raised if the length of P in the U and V direction
-- is not equal to NbUpoles and NbVPoles.
+ Poles (me)
+ returns Array2OfPnt from TColgp
+ ---Purpose : Returns the poles of the B-spline surface.
+ ---C++ : return const &
+ is static;
UDegree (me) returns Integer;
---Purpose :
-- Raised if the length of Ku is not equal to the number of knots
-- in the U direction.
+ UKnots (me)
+ returns Array1OfReal from TColStd
+ ---Purpose : Returns the knots in the U direction.
+ ---C++ : return const &
+ is static;
UKnotSequence (me; Ku : out Array1OfReal from TColStd)
raises DimensionError;
---Purpose :
-- Raised if the length of Ku is not equal to NbUPoles + UDegree + 1
+ UKnotSequence (me)
+ returns Array1OfReal from TColStd
+ ---Purpose : Returns the uknots sequence.
+ -- In this sequence the knots with a multiplicity greater than 1
+ -- are repeated.
+ --- Example :
+ -- Ku = {k1, k1, k1, k2, k3, k3, k4, k4, k4}
+ ---C++ : return const &
+ is static;
UMultiplicity (me; UIndex : Integer) returns Integer
---Purpose :
-- Raised if the length of Mu is not equal to the number of
-- knots in the U direction.
+ UMultiplicities (me)
+ returns Array1OfInteger from TColStd
+ ---Purpose : Returns the multiplicities of the knots in the U direction.
+ ---C++ : return const &
+ is static;
VDegree (me) returns Integer;
---Purpose :
-- Raised if the length of Kv is not equal to the number of
-- knots in the V direction.
+ VKnots (me)
+ returns Array1OfReal from TColStd
+ ---Purpose : Returns the knots in the V direction.
+ ---C++ : return const &
+ is static;
VKnotSequence (me; Kv : out Array1OfReal from TColStd)
raises DimensionError;
---Purpose :
-- Raised if the length of Kv is not equal to NbVPoles + VDegree + 1
+ VKnotSequence (me)
+ returns Array1OfReal from TColStd
+ ---Purpose : Returns the vknots sequence.
+ -- In this sequence the knots with a multiplicity greater than 1
+ -- are repeated.
+ --- Example :
+ -- Ku = {k1, k1, k1, k2, k3, k3, k4, k4, k4}
+ ---C++ : return const &
+ is static;
VMultiplicity (me; VIndex : Integer) returns Integer
---Purpose :
-- Raised if the length of Mv is not equal to the number of
-- knots in the V direction.
+ VMultiplicities (me)
+ returns Array1OfInteger from TColStd
+ ---Purpose : Returns the multiplicities of the knots in the V direction.
+ ---C++ : return const &
+ is static;
Weight (me; UIndex, VIndex : Integer) returns Real
---Purpose :
-- Raised if the length of W in the U and V direction is
-- not equal to NbUPoles and NbVPoles.
+ Weights (me)
+ returns Array2OfReal from TColStd
+ ---Purpose : Returns the weights of the B-spline surface.
+ ---C++ : return const &
+ is static;
P = poles->Array2();
}
+const TColgp_Array2OfPnt& Geom_BSplineSurface::Poles() const
+{
+ return poles->Array2();
+}
+
//=======================================================================
//function : UIso
//purpose :
Ku = uknots->Array1();
}
+const TColStd_Array1OfReal& Geom_BSplineSurface::UKnots() const
+{
+ return uknots->Array1();
+}
+
//=======================================================================
//function : VKnots
//purpose :
Kv = vknots->Array1();
}
+const TColStd_Array1OfReal& Geom_BSplineSurface::VKnots() const
+{
+ return vknots->Array1();
+}
+
//=======================================================================
//function : UKnotSequence
//purpose :
Ku = ufknots->Array1();
}
+const TColStd_Array1OfReal& Geom_BSplineSurface::UKnotSequence() const
+{
+ return ufknots->Array1();
+}
+
//=======================================================================
//function : VKnotSequence
//purpose :
Kv = vfknots->Array1();
}
+const TColStd_Array1OfReal& Geom_BSplineSurface::VKnotSequence() const
+{
+ return vfknots->Array1();
+}
+
//=======================================================================
//function : UMultiplicity
//purpose :
Mu = umults->Array1();
}
+const TColStd_Array1OfInteger& Geom_BSplineSurface::UMultiplicities() const
+{
+ return umults->Array1();
+}
+
//=======================================================================
//function : VIso
//purpose :
Mv = vmults->Array1();
}
+const TColStd_Array1OfInteger& Geom_BSplineSurface::VMultiplicities() const
+{
+ return vmults->Array1();
+}
+
//=======================================================================
//function : Weight
//purpose :
W = weights->Array2();
}
+const TColStd_Array2OfReal& Geom_BSplineSurface::Weights() const
+{
+ if (urational || vrational)
+ return weights->Array2();
+ return BSplSLib::NoWeights();
+}
+
//=======================================================================
//function : Transform
//purpose :
XYZ Vdir = direction.XYZ(); //Vdir
Q.Subtract(C); //CQ
XYZ VcrossCQ = Vdir.Crossed (Q); //Vdir^CQ
+ // If the point is placed on the axis of revolution then derivatives on U are undefined.
+ // Manually set them to zero.
+ if (VcrossCQ.SquareModulus() < Precision::SquareConfusion())
+ VcrossCQ.SetCoord(0.0, 0.0, 0.0);
XYZ VcrossDQv = Vdir.Crossed (DQv); //(Vdir^Q')
XYZ VdotCQ = Vdir.Multiplied (Vdir.Dot(Q)); //(Vdir.CQ)Vdir
XYZ VdotDQv = Vdir.Multiplied (Vdir.Dot(DQv)); //(Vdir.Q')Vdir
XYZ Vdir = direction.XYZ(); //Vdir
Q.Subtract(C); //CQ
XYZ VcrossCQ = Vdir.Crossed (Q); //Vdir^CQ
+ // If the point is placed on the axis of revolution then derivatives on U are undefined.
+ // Manually set them to zero.
+ if (VcrossCQ.SquareModulus() < Precision::SquareConfusion())
+ VcrossCQ.SetCoord(0.0, 0.0, 0.0);
XYZ VcrossD1Qv = Vdir.Crossed (D1Qv); //(Vdir^Q')
XYZ VcrossD2Qv = Vdir.Crossed (D2Qv); //(Vdir^Q")
XYZ VdotCQ = Vdir.Multiplied (Vdir.Dot(Q)); //(Vdir.CQ)Vdir
XYZ Vdir = direction.XYZ(); //Vdir
Q.Subtract(C); //CQ
XYZ VcrossCQ = Vdir.Crossed (Q); //Vdir^CQ
+ // If the point is placed on the axis of revolution then derivatives on U are undefined.
+ // Manually set them to zero.
+ if (VcrossCQ.SquareModulus() < Precision::SquareConfusion())
+ VcrossCQ.SetCoord(0.0, 0.0, 0.0);
XYZ VcrossD1Qv = Vdir.Crossed (D1Qv); //(Vdir^Q')
XYZ VcrossD2Qv = Vdir.Crossed (D2Qv); //(Vdir^Q")
XYZ VcrossD3Qv = Vdir.Crossed (D3Qv); //(Vdir^Q''')
XYZ Vdir = direction.XYZ(); //Vdir
Q.Subtract(C); //CQ
XYZ VcrossCQ = Vdir.Crossed (Q); //Vdir^CQ
+ // If the point is placed on the axis of revolution then derivatives on U are undefined.
+ // Manually set them to zero.
+ if (VcrossCQ.SquareModulus() < Precision::SquareConfusion())
+ VcrossCQ.SetCoord(0.0, 0.0, 0.0);
+
XYZ VcrossDQv = Vdir.Crossed (DQv); //(Vdir^Q')
XYZ VdotCQ = Vdir.Multiplied (Vdir.Dot(Q)); //(Vdir.CQ)Vdir
XYZ VdotDQv = Vdir.Multiplied (Vdir.Dot(DQv)); //(Vdir.Q')Vdir
XYZ Vdir = direction.XYZ(); //Vdir
Q.Subtract(C); //CQ
XYZ VcrossCQ = Vdir.Crossed (Q); //Vdir^CQ
+ // If the point is placed on the axis of revolution then derivatives on U are undefined.
+ // Manually set them to zero.
+ if (VcrossCQ.SquareModulus() < Precision::SquareConfusion())
+ VcrossCQ.SetCoord(0.0, 0.0, 0.0);
+
XYZ VcrossD1Qv = Vdir.Crossed (D1Qv); //(Vdir^Q')
XYZ VcrossD2Qv = Vdir.Crossed (D2Qv); //(Vdir^Q")
XYZ VdotCQ = Vdir.Multiplied (Vdir.Dot(Q)); //(Vdir.CQ)Vdir
XYZ Vdir = direction.XYZ(); //Vdir
Q.Subtract(C); //CQ
XYZ VcrossCQ = Vdir.Crossed (Q); //Vdir^CQ
+ // If the point is placed on the axis of revolution then derivatives on U are undefined.
+ // Manually set them to zero.
+ if (VcrossCQ.SquareModulus() < Precision::SquareConfusion())
+ VcrossCQ.SetCoord(0.0, 0.0, 0.0);
+
XYZ VcrossD1Qv = Vdir.Crossed (D1Qv); //(Vdir^Q')
XYZ VcrossD2Qv = Vdir.Crossed (D2Qv); //(Vdir^Q")
XYZ VcrossD3Qv = Vdir.Crossed (D3Qv); //(Vdir^Q''')
raises DimensionError;
--- Purpose :
-- Raised if the length of K is not equal to the number of knots.
+ Knots (me)
+ returns Array1OfReal from TColStd
+ ---Purpose : returns the knot values of the B-spline curve;
+ ---C++ : return const &
+ is static;
KnotSequence (me; K : out Array1OfReal from TColStd)
raises DimensionError;
--- Purpose :
-- Raised if the length of K is not equal to NbPoles + Degree + 1
+ KnotSequence (me)
+ returns Array1OfReal from TColStd
+ ---Purpose : Returns the knots sequence.
+ -- In this sequence the knots with a multiplicity greater than 1
+ -- are repeated.
+ -- Example :
+ -- K = {k1, k1, k1, k2, k3, k3, k4, k4, k4}
+ ---C++ : return const &
+ is static;
raises DimensionError;
--- Purpose :
-- Raised if the length of M is not equal to NbKnots.
+ Multiplicities (me)
+ returns Array1OfInteger from TColStd
+ ---Purpose : returns the multiplicity of the knots of the curve.
+ ---C++ : return const &
+ is static;
NbKnots (me) returns Integer;
raises DimensionError;
--- Purpose :
-- Raised if the length of P is not equal to the number of poles.
+ Poles (me)
+ returns Array1OfPnt2d from TColgp
+ ---Purpose : Returns the poles of the B-spline curve;
+ ---C++ : return const &
+ is static;
StartPoint (me) returns Pnt2d;
raises DimensionError;
--- Purpose :
-- Raised if the length of W is not equal to NbPoles.
+ Weights (me)
+ returns Array1OfReal from TColStd
+ ---Purpose : Returns the weights of the B-spline curve;
+ ---C++ : return const &
+ is static;
K = knots->Array1();
}
+const TColStd_Array1OfReal& Geom2d_BSplineCurve::Knots() const
+{
+ return knots->Array1();
+}
+
//=======================================================================
//function : KnotSequence
//purpose :
K = flatknots->Array1();
}
+const TColStd_Array1OfReal& Geom2d_BSplineCurve::KnotSequence() const
+{
+ return flatknots->Array1();
+}
+
//=======================================================================
//function : LastUKnotIndex
//purpose :
M = mults->Array1();
}
+const TColStd_Array1OfInteger& Geom2d_BSplineCurve::Multiplicities() const
+{
+ return mults->Array1();
+}
+
//=======================================================================
//function : NbKnots
//purpose :
P = poles->Array1();
}
+const TColgp_Array1OfPnt2d& Geom2d_BSplineCurve::Poles() const
+{
+ return poles->Array1();
+}
+
//=======================================================================
//function : StartPoint
//purpose :
}
}
+const TColStd_Array1OfReal& Geom2d_BSplineCurve::Weights() const
+{
+ if (IsRational())
+ return weights->Array1();
+ return BSplCLib::NoWeights();
+}
+
//=======================================================================
//function : IsRational
//purpose :
Standard_Real aDist = Max(BS->StartPoint().XYZ().SquareModulus(),
BS->EndPoint().XYZ().SquareModulus());
Standard_Real eps = Epsilon(aDist);
- if(BS->StartPoint().SquareDistance(BS->EndPoint()) < 2.*eps &&
- !BS->IsClosed() && !BS->IsPeriodic())
+ if(BS->StartPoint().SquareDistance(BS->EndPoint()) < 2.*eps)
{
- //force Closed()
- gp_Pnt aPm((BS->Pole(1).XYZ() + BS->Pole(BS->NbPoles()).XYZ()) / 2.);
- BS->SetPole(1, aPm);
- BS->SetPole(BS->NbPoles(), aPm);
+ // Avoid creating B-splines containing two coincident poles only
+ if (mbspc.Degree() == 1 && nbpoles == 2)
+ continue;
+
+ if (!BS->IsClosed() && !BS->IsPeriodic())
+ {
+ //force Closed()
+ gp_Pnt aPm((BS->Pole(1).XYZ() + BS->Pole(BS->NbPoles()).XYZ()) / 2.);
+ BS->SetPole(1, aPm);
+ BS->SetPole(BS->NbPoles(), aPm);
+ }
}
sline.Append(BS);
NewP(ii,jj).SetCoord(3,PRes(indice+2));
if (rational) {
ww = PRes(indice+3);
+ if (Abs(ww - 1.0) < EpsW)
+ ww = 1.0;
if (ww < EpsW) {
NullWeight = Standard_True;
}
NewP(ii,jj).SetCoord(3,PRes(indice+2));
if (rational) {
ww = PRes(indice+3);
+ if (Abs(ww - 1.0) < EpsW)
+ ww = 1.0;
if (ww < EpsW) {
NullWeight = Standard_True;
}
aPoly1 = new IntCurve_ThePolygon2d(C1,nbsamplesOnC1,D1,Tol),
aPoly2 = new IntCurve_ThePolygon2d(C2,nbsamplesOnC2,D2,Tol);
- if( (aPoly1->DeflectionOverEstimation() > TolConf) ||
+ if( (aPoly1->DeflectionOverEstimation() > TolConf) &&
(aPoly2->DeflectionOverEstimation() > TolConf))
{
const Standard_Real aDeflectionSum =
Max(aPoly1->DeflectionOverEstimation(), TolConf) +
Max(aPoly2->DeflectionOverEstimation(), TolConf);
- aPoly2->SetDeflectionOverEstimation(aDeflectionSum);
- aPoly1->SetDeflectionOverEstimation(aDeflectionSum);
-
- const Bnd_Box2d aB1 = aPoly1->Bounding(), aB2 = aPoly2->Bounding();
-
- aPoly1->ComputeWithBox(C1, aB2);
- aPoly2->ComputeWithBox(C2, aB1);
+ if (nbsamplesOnC2 > nbsamplesOnC1)
+ {
+ aPoly2->ComputeWithBox(C2, aPoly1->Bounding());
+ aPoly1->SetDeflectionOverEstimation(aDeflectionSum);
+ aPoly1->ComputeWithBox(C1, aPoly2->Bounding());
+ }
+ else
+ {
+ aPoly1->ComputeWithBox(C1, aPoly2->Bounding());
+ aPoly2->SetDeflectionOverEstimation(aDeflectionSum);
+ aPoly2->ComputeWithBox(C2, aPoly1->Bounding());
+ }
}
//----------------------------------------------------------------------
Standard_Real rvalf = Sign(1.,Valf(1));
for(Standard_Integer i = 2; i <= aNbSamples; ++i)
{
- D1->SamplePoint(i,s2d, s3d);
+ T->SamplePoint(i,s2d, s3d);
UVap(1)=s2d.X();
UVap(2)=s2d.Y();
Func.Value(UVap,Valf);
Standard_Real wmid;
sac.Project(COnS,mid,preci,pnt,wmid,Standard_False);
wmid+=ShapeAnalysis::AdjustToPeriod(wmid,0,period);
- if(w1>w2) {
+ if(w1>=w2) {
if(w2 > wmid) myFirstParam -= period;
else if (w1 > wmid)
UpdateParam2d(theCurve2d);
found = (staout != clas.Perform (unp1,Standard_False));
}
}
+ // Additional check of diagonal steps for toroidal surfaces
+ if (!found && uclosed && vclosed)
+ {
+ for (Standard_Real dX = -1.0; dX <= 1.0 && !found; dX += 2.0)
+ for (Standard_Real dY = -1.0; dY <= 1.0 && !found; dY += 2.0)
+ {
+ unp1.SetCoord(unp.X() + uRange * dX, unp.Y() + vRange * dY);
+ found = (staout != clas.Perform(unp1, Standard_False));
+ }
+ }
}
if(found) {
if(stb==TopAbs_IN) stb = TopAbs_OUT;
myLastFixStatus |= ShapeExtend::EncodeStatus ( ShapeExtend_DONE2 );
}
else
- FixDummySeam(n1);
+ {
+ FixDummySeam(n1);
+ // The seam edge is removed from the list. So, need to step back to avoid missing of edge processing
+ i--;
+ }
i--;
if(!Context().IsNull()) //skl 07.03.2002 for OCC180
F.Value(x1,f1); f1-=K;
F.Value(x2,f2); f2-=K;
//-- printf("\n *************** RECHERCHE MINIMUM **********\n");
- while(Abs(x3-x0) > tolCR*(Abs(x1)+Abs(x2)) && (Abs(x1 -x2) > 0)) {
+ Standard_Real tolX = 0.001 * NEpsX;
+ while(Abs(x3-x0) > tolCR*(Abs(x1)+Abs(x2)) && (Abs(x1 -x2) > tolX)) {
//-- printf("\n (%10.5g,%10.5g) (%10.5g,%10.5g) (%10.5g,%10.5g) (%10.5g,%10.5g) ",
//-- x0,f0,x1,f1,x2,f2,x3,f3);
if(recherche_minimum) {
InfiniteStatus = Standard_False;
Done = Standard_True;
- Eps = 1.e-12;
+ Eps = 1.5e-12;
Depi = M_PI+M_PI;
if (InfBound <= RealFirst() && SupBound >= RealLast()) {
# Original bug : pro10658
# Date : 24mar98
-puts "TODO #26080 ALL: Faulty shapes in variables faulty_1"
puts "TODO ALL Error : The area of the resulting shape is"
restore [locate_data_file CTO900_pro10658a.rle] a
restore [locate_data_file pro10658b.rle] b
# pro10658
-puts "TODO #26080 ALL: Faulty shapes in variables faulty_1"
puts "TODO ALL Error : The area of the resulting shape is"
restore [locate_data_file CTO900_pro10658a.rle] a
restore [locate_data_file pro10658b.rle] b
repeat 21 {
plane p_$i 0 $i*100 0 0 1 0
mkface f_$i p_$i
- bsection s_$i b f_$i
+ set bsres [bsection s_$i b f_$i]
+ if { [regexp {Error} $bsres] } {
+ puts "Error: bsection not done"
+ }
compound result s_$i result
set dist [expr $i * 100]
puts "OK Section:$dist"
repeat 199 {
plane p_$i 0 $i*100 0 0 1 0
mkface f_$i p_$i
- bsection s_$i a f_$i
+ set bsres [bsection s_$i a f_$i]
+ if { [regexp {Error} $bsres] } {
+ puts "Error: bsection not done"
+ }
compound result s_$i result
set dist [expr $i * 100]
puts "OK Section:$dist"
# test script on make volume operation
# cone cylinder plane
-puts "TODO OCC26020 ALL: Error: bopcheck failed"
+puts "TODO OCC26020 Windows: Error: bopcheck failed"
# planar face
plane pln_f1 27.577164466275352 -1038.2137499999999 27.577164466275359 0.70710678118654746 4.4408920985006262e-016 0.70710678118654768
catch { OFFSETSHAPE $distance {} $calcul $type }
-set square 253.552
+set square 253.902
set nb_v_good 2
set nb_e_good 3
catch { OFFSETSHAPE $distance {s_3} $calcul $type }
-set square 502.411
+set square 502.366
set nb_v_good 3
set nb_e_good 5
catch { OFFSETSHAPE $distance {s_2} $calcul $type }
-set square 502.411
+set square 502.366
set nb_v_good 3
set nb_e_good 5
catch { OFFSETSHAPE $distance {s_3 s_2} $calcul $type }
-set square 489.812
+set square 489.372
set nb_v_good 3
set nb_e_good 5
## After command sew in DRAW on attached shape free wires are disappeared.
####################################################
-puts "TODO OCC25593 ALL: Faulty shapes in variables faulty_1 to faulty_4"
-
restore [locate_data_file OCC714.brep] a
checkshape a
set status 0
-set info1 [OCC24303 4]
+set info1 [OCC24303 5]
regexp {Solutions +([-0-9.+eE]+)} ${info1} full Solution
regexp {Distance += +([-0-9.+eE]+)} ${info1} full Distance
-if { [info exists Sol4] } {
- set info2 [dump Sol4]
+if { [info exists Sol5] } {
+ set info2 [dump Sol5]
regexp {Center +:([-0-9.+eE]+), +([-0-9.+eE]+)} ${info2} full CenterX CenterY
regexp {XAxis +:([-0-9.+eE]+), +([-0-9.+eE]+)} ${info2} full XAxisX XAxisY
regexp {YAxis +:([-0-9.+eE]+), +([-0-9.+eE]+)} ${info2} full YAxisX YAxisY
set nbshapes_expected "
Number of shapes in shape
- VERTEX : 169
- EDGE : 85
+ VERTEX : 165
+ EDGE : 83
WIRE : 0
FACE : 0
SHELL : 0
SOLID : 0
COMPSOLID : 0
COMPOUND : 1
- SHAPE : 255
+ SHAPE : 249
"
checknbshapes result -ref ${nbshapes_expected} -t -m "HLRToShape"
checkmaxtol result 2.5472812372261969e-005
checknbshapes result -shell 13
- checkfreebounds result 1249
+ checkfreebounds result 1247
}
set 2dviewer 0
-puts "TODO OCC12345 ALL: Faulty OCC498: Wrong 3d point from offset surface by parameters"
-
puts "========="
puts " OCC498 "
puts "========="
# !!!! This file is generated automatically, do not edit manually! See end script
-puts "TODO CR23096 ALL: TPSTAT : Faulty"
-
set filename UKI60095.igs
DATA : Faulties = 0 ( 0 ) Warnings = 0 ( 0 ) Summary = 0 ( 0 )
TPSTAT : Faulties = 0 ( 0 ) Warnings = 42 ( 1091 ) Summary = 42 ( 1091 )
CHECKSHAPE : Wires = 0 ( 0 ) Faces = 0 ( 0 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
-NBSHAPES : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 1038 ( 1038 ) Summary = 22098 ( 22098 )
-STATSHAPE : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 1038 ( 1038 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 10005 ( 10005 )
+NBSHAPES : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 1038 ( 1038 ) Summary = 22098 ( 22096 )
+STATSHAPE : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 1038 ( 1038 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 10005 ( 10004 )
TOLERANCE : MaxTol = 0.5433123154 ( 0.5433122968 ) AvgTol = 0.002230678782 ( 0.002235663837 )
-LABELS : N0Labels = 1038 ( 1038 ) N1Labels = 0 ( 1450 ) N2Labels = 0 ( 0 ) TotalLabels = 1038 ( 2488 ) NameLabels = 1038 ( 1038 ) ColorLabels = 1038 ( 2488 ) LayerLabels = 1038 ( 2488 )
+LABELS : N0Labels = 1038 ( 1038 ) N1Labels = 0 ( 1449 ) N2Labels = 0 ( 0 ) TotalLabels = 1038 ( 2487 ) NameLabels = 1038 ( 1038 ) ColorLabels = 1038 ( 2487 ) LayerLabels = 1038 ( 2487 )
PROPS : Centroid = 0 ( 0 ) Volume = 0 ( 0 ) Area = 0 ( 0 )
NCOLORS : NColors = 2 ( 2 )
COLORS : Colors = GREEN RED ( GREEN RED )
set ref_data {
DATA : Faulties = 0 ( 12 ) Warnings = 0 ( 1 ) Summary = 0 ( 13 )
TPSTAT : Faulties = 0 ( 28 ) Warnings = 116 ( 7 ) Summary = 116 ( 35 )
-CHECKSHAPE : Wires = 0 ( 0 ) Faces = 1 ( 1 ) Shells = 0 ( 1 ) Solids = 0 ( 1 )
-NBSHAPES : Solid = 0 ( 19 ) Shell = 0 ( 19 ) Face = 1191 ( 1191 ) Summary = 15092 ( 7703 )
-STATSHAPE : Solid = 0 ( 19 ) Shell = 0 ( 19 ) Face = 1191 ( 1191 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 6291 ( 3138 )
+CHECKSHAPE : Wires = 0 ( 0 ) Faces = 0 ( 0 ) Shells = 0 ( 1 ) Solids = 0 ( 1 )
+NBSHAPES : Solid = 0 ( 18 ) Shell = 0 ( 18 ) Face = 1190 ( 1190 ) Summary = 15073 ( 7693 )
+STATSHAPE : Solid = 0 ( 18 ) Shell = 0 ( 18 ) Face = 1190 ( 1190 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 6283 ( 3134 )
TOLERANCE : MaxTol = 0.2496383637 ( 0.2496258832 ) AvgTol = 0.00219239232 ( 0.004111699336 )
LABELS : N0Labels = 27 ( 27 ) N1Labels = 0 ( 0 ) N2Labels = 0 ( 0 ) TotalLabels = 27 ( 27 ) NameLabels = 27 ( 27 ) ColorLabels = 0 ( 0 ) LayerLabels = 0 ( 0 )
PROPS : Centroid = 0 ( 0 ) Volume = 0 ( 0 ) Area = 0 ( 0 )
# !!!! This file is generated automatically, do not edit manually! See end script
-puts "TODO CR25923 ALL: NBSHAPES : Faulty"
puts "TODO CR23096 ALL: LABELS : Faulty"
-
+puts "TODO CR23096 ALL: NBSHAPES : Faulty"
+puts "TODO CR23096 ALL: Error : 2 differences with reference data found"
set filename FRA62468-1.igs
set ref_data {
DATA : Faulties = 0 ( 0 ) Warnings = 0 ( 0 ) Summary = 0 ( 0 )
-TPSTAT : Faulties = 0 ( 0 ) Warnings = 427 ( 5255 ) Summary = 427 ( 5255 )
+TPSTAT : Faulties = 0 ( 0 ) Warnings = 299 ( 5226 ) Summary = 299 ( 5226 )
CHECKSHAPE : Wires = 12 ( 20 ) Faces = 16 ( 18 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
-NBSHAPES : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 5163 ( 5163 ) Summary = 68354 ( 68418 )
-STATSHAPE : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 5163 ( 5163 ) FreeWire = 10 ( 10 ) FreeEdge = 283 ( 283 ) SharedEdge = 29043 ( 29075 )
-TOLERANCE : MaxTol = 0.9874083984 ( 0.9875071265 ) AvgTol = 0.01115315301 ( 0.0111584608 )
-LABELS : N0Labels = 5392 ( 5458 ) N1Labels = 18 ( 4437 ) N2Labels = 0 ( 0 ) TotalLabels = 5410 ( 9895 ) NameLabels = 5392 ( 5458 ) ColorLabels = 5391 ( 9829 ) LayerLabels = 5391 ( 9829 )
+NBSHAPES : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 5163 ( 5163 ) Summary = 68422 ( 68420 )
+STATSHAPE : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 5163 ( 5163 ) FreeWire = 10 ( 10 ) FreeEdge = 283 ( 283 ) SharedEdge = 29075 ( 29079 )
+TOLERANCE : MaxTol = 0.9874083984 ( 0.9875071265 ) AvgTol = 0.01114309412 ( 0.01115568387 )
+LABELS : N0Labels = 5392 ( 5458 ) N1Labels = 18 ( 4427 ) N2Labels = 0 ( 0 ) TotalLabels = 5410 ( 9885 ) NameLabels = 5392 ( 5458 ) ColorLabels = 5391 ( 9819 ) LayerLabels = 5391 ( 9819 )
PROPS : Centroid = 0 ( 0 ) Volume = 0 ( 0 ) Area = 0 ( 0 )
NCOLORS : NColors = 4 ( 4 )
COLORS : Colors = BLACK BLUE1 CYAN1 GREEN ( BLACK BLUE1 CYAN1 GREEN )
# !!!! This file is generated automatically, do not edit manually! See end script
puts "TODO CR23096 ALL: LABELS : Faulty"
-
set filename 12ls328.igs
set ref_data {
# !!!! This file is generated automatically, do not edit manually! See end script
-puts "TODO CR23096 ALL: TOLERANCE : Faulty"
puts "TODO CR23096 ALL: LABELS : Faulty"
set LinuxDiff 1
# !!!! This file is generated automatically, do not edit manually! See end script
puts "TODO CR23096 ALL: LABELS : Faulty"
+puts "TODO CR23096 ALL: Error : 3 differences with reference data found"
set LinuxDiff 2
set filename brazo1.igs
set ref_data {
DATA : Faulties = 0 ( 2 ) Warnings = 0 ( 0 ) Summary = 0 ( 2 )
-TPSTAT : Faulties = 0 ( 0 ) Warnings = 148 ( 478 ) Summary = 148 ( 478 )
+TPSTAT : Faulties = 0 ( 0 ) Warnings = 139 ( 454 ) Summary = 139 ( 454 )
CHECKSHAPE : Wires = 6 ( 8 ) Faces = 6 ( 8 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
-NBSHAPES : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 223 ( 223 ) Summary = 4666 ( 4542 )
-STATSHAPE : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 223 ( 223 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 2144 ( 2074 )
-TOLERANCE : MaxTol = 0.991254355 ( 0.991254355 ) AvgTol = 0.01125801875 ( 0.01225981249 )
-LABELS : N0Labels = 223 ( 223 ) N1Labels = 0 ( 242 ) N2Labels = 0 ( 0 ) TotalLabels = 223 ( 465 ) NameLabels = 223 ( 388 ) ColorLabels = 223 ( 465 ) LayerLabels = 223 ( 465 )
+NBSHAPES : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 223 ( 223 ) Summary = 4710 ( 4574 )
+STATSHAPE : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 223 ( 223 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 2166 ( 2092 )
+TOLERANCE : MaxTol = 0.991254355 ( 0.991254355 ) AvgTol = 0.01133191355 ( 0.01225911215 )
+LABELS : N0Labels = 223 ( 223 ) N1Labels = 0 ( 256 ) N2Labels = 0 ( 0 ) TotalLabels = 223 ( 479 ) NameLabels = 223 ( 388 ) ColorLabels = 223 ( 479 ) LayerLabels = 223 ( 479 )
PROPS : Centroid = 0 ( 0 ) Volume = 0 ( 0 ) Area = 0 ( 0 )
NCOLORS : NColors = 3 ( 3 )
COLORS : Colors = BLUE1 MAGENTA1 YELLOW ( BLUE1 MAGENTA1 YELLOW )
set ref_data {
DATA : Faulties = 0 ( 0 ) Warnings = 0 ( 0 ) Summary = 0 ( 0 )
TPSTAT : Faulties = 0 ( 0 ) Warnings = 38 ( 183 ) Summary = 38 ( 183 )
-CHECKSHAPE : Wires = 0 ( 0 ) Faces = 0 ( 0 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
+CHECKSHAPE : Wires = 0 ( 0 ) Faces = 0 ( 1 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
NBSHAPES : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 114 ( 114 ) Summary = 2511 ( 2510 )
STATSHAPE : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 114 ( 114 ) FreeWire = 23 ( 23 ) FreeEdge = 331 ( 331 ) SharedEdge = 983 ( 983 )
-TOLERANCE : MaxTol = 0.1829958579 ( 0.1829958769 ) AvgTol = 0.003259834421 ( 0.003329232309 )
+TOLERANCE : MaxTol = 0.1830141575 ( 0.1830141765 ) AvgTol = 0.003295423033 ( 0.003364815075 )
LABELS : N0Labels = 412 ( 412 ) N1Labels = 2 ( 0 ) N2Labels = 0 ( 0 ) TotalLabels = 414 ( 412 ) NameLabels = 412 ( 412 ) ColorLabels = 389 ( 410 ) LayerLabels = 389 ( 410 )
PROPS : Centroid = 0 ( 0 ) Volume = 0 ( 0 ) Area = 0 ( 0 )
NCOLORS : NColors = 5 ( 5 )
# !!!! This file is generated automatically, do not edit manually! See end script
-puts "TODO CR25923 ALL: STATSHAPE : Faulty"
puts "TODO CR23096 ALL: LABELS : Faulty"
+puts "TODO CR23096 ALL: STATSHAPE : Faulty"
+puts "TODO CR23096 ALL: Error : 3 differences with reference data found"
set LinuxDiff 5
set filename BUC60743.igs
set ref_data {
DATA : Faulties = 0 ( 2 ) Warnings = 0 ( 0 ) Summary = 0 ( 2 )
-TPSTAT : Faulties = 3 ( 59 ) Warnings = 2205 ( 4736 ) Summary = 2208 ( 4795 )
-CHECKSHAPE : Wires = 7 ( 16 ) Faces = 6 ( 12 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
-NBSHAPES : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 3350 ( 2837 ) Summary = 45907 ( 39191 )
-STATSHAPE : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 3350 ( 3349 ) FreeWire = 6 ( 6 ) FreeEdge = 67 ( 67 ) SharedEdge = 19595 ( 16764 )
-TOLERANCE : MaxTol = 3.742696236 ( 5.769095076 ) AvgTol = 0.01636161939 ( 0.01749445935 )
-LABELS : N0Labels = 11 ( 11 ) N1Labels = 2891 ( 6319 ) N2Labels = 0 ( 0 ) TotalLabels = 2902 ( 6330 ) NameLabels = 2900 ( 5879 ) ColorLabels = 2891 ( 6319 ) LayerLabels = 2411 ( 5257 )
+TPSTAT : Faulties = 3 ( 59 ) Warnings = 2203 ( 4655 ) Summary = 2206 ( 4714 )
+CHECKSHAPE : Wires = 7 ( 17 ) Faces = 7 ( 12 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
+NBSHAPES : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 3349 ( 2837 ) Summary = 45927 ( 39202 )
+STATSHAPE : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 3349 ( 3349 ) FreeWire = 6 ( 6 ) FreeEdge = 67 ( 67 ) SharedEdge = 19607 ( 16774 )
+TOLERANCE : MaxTol = 4.854604894 ( 5.769095076 ) AvgTol = 0.01628658326 ( 0.01747356296 )
+LABELS : N0Labels = 11 ( 11 ) N1Labels = 2891 ( 6327 ) N2Labels = 0 ( 0 ) TotalLabels = 2902 ( 6338 ) NameLabels = 2900 ( 5879 ) ColorLabels = 2891 ( 6327 ) LayerLabels = 2411 ( 5258 )
PROPS : Centroid = 0 ( 0 ) Volume = 0 ( 0 ) Area = 0 ( 0 )
NCOLORS : NColors = 4 ( 4 )
COLORS : Colors = BLACK BLUE1 RED YELLOW ( BLACK BLUE1 RED YELLOW )
DATA : Faulties = 0 ( 0 ) Warnings = 0 ( 0 ) Summary = 0 ( 0 )
TPSTAT : Faulties = 0 ( 0 ) Warnings = 88 ( 191 ) Summary = 88 ( 191 )
CHECKSHAPE : Wires = 2 ( 2 ) Faces = 2 ( 2 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
-NBSHAPES : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 569 ( 569 ) Summary = 7842 ( 7836 )
-STATSHAPE : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 569 ( 569 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 3353 ( 3350 )
+NBSHAPES : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 569 ( 569 ) Summary = 7842 ( 7833 )
+STATSHAPE : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 569 ( 569 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 3353 ( 3348 )
TOLERANCE : MaxTol = 0.7161069967 ( 0.7585238415 ) AvgTol = 0.006717667602 ( 0.006937200018 )
LABELS : N0Labels = 568 ( 568 ) N1Labels = 2 ( 2 ) N2Labels = 0 ( 0 ) TotalLabels = 570 ( 570 ) NameLabels = 568 ( 568 ) ColorLabels = 569 ( 569 ) LayerLabels = 569 ( 569 )
PROPS : Centroid = 0 ( 0 ) Volume = 0 ( 0 ) Area = 0 ( 0 )
# !!!! This file is generated automatically, do not edit manually! See end script
-puts "TODO CR23096 ALL: LABELS : Faulty"
-puts "TODO CR25923 ALL: NBSHAPES : Faulty"
-#puts "TODO CR23096 ALL: Error : 1 differences with reference data found :"
+puts "TODO CR23096 ALL: CHECKSHAPE : Faulty"
+puts "TODO CR23096 ALL: LABELS : Faulty"
+puts "TODO CR23096 ALL: NBSHAPES : Faulty"
+puts "TODO CR23096 ALL: Error : 2 differences with reference data found"
set LinuxDiff 1
set filename FRA62468-2.igs
set ref_data {
DATA : Faulties = 0 ( 0 ) Warnings = 0 ( 0 ) Summary = 0 ( 0 )
-TPSTAT : Faulties = 0 ( 0 ) Warnings = 349 ( 5016 ) Summary = 349 ( 5016 )
-CHECKSHAPE : Wires = 12 ( 19 ) Faces = 12 ( 13 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
-NBSHAPES : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 4729 ( 4729 ) Summary = 63090 ( 63144 )
-STATSHAPE : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 4729 ( 4729 ) FreeWire = 18 ( 18 ) FreeEdge = 452 ( 452 ) SharedEdge = 26766 ( 26793 )
-TOLERANCE : MaxTol = 0.9804479161 ( 0.9805459497 ) AvgTol = 0.01154225009 ( 0.01155173987 )
-LABELS : N0Labels = 5089 ( 5165 ) N1Labels = 26 ( 3844 ) N2Labels = 0 ( 0 ) TotalLabels = 5115 ( 9009 ) NameLabels = 5089 ( 5165 ) ColorLabels = 5086 ( 8933 ) LayerLabels = 5086 ( 8933 )
+TPSTAT : Faulties = 0 ( 0 ) Warnings = 253 ( 4993 ) Summary = 253 ( 4993 )
+CHECKSHAPE : Wires = 8 ( 11 ) Faces = 8 ( 7 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
+NBSHAPES : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 4729 ( 4729 ) Summary = 63158 ( 63146 )
+STATSHAPE : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 4729 ( 4729 ) FreeWire = 18 ( 18 ) FreeEdge = 452 ( 452 ) SharedEdge = 26798 ( 26797 )
+TOLERANCE : MaxTol = 0.9804479161 ( 0.9805459497 ) AvgTol = 0.01153089031 ( 0.01154870945 )
+LABELS : N0Labels = 5089 ( 5165 ) N1Labels = 26 ( 3834 ) N2Labels = 0 ( 0 ) TotalLabels = 5115 ( 8999 ) NameLabels = 5089 ( 5165 ) ColorLabels = 5086 ( 8923 ) LayerLabels = 5086 ( 8923 )
PROPS : Centroid = 0 ( 0 ) Volume = 0 ( 0 ) Area = 0 ( 0 )
NCOLORS : NColors = 3 ( 3 )
COLORS : Colors = BLUE1 CYAN1 GREEN ( BLUE1 CYAN1 GREEN )
puts "TODO CR23096 ALL: NBSHAPES : Faulty"
puts "TODO CR23096 ALL: TOLERANCE : Faulty"
puts "TODO CR23096 ALL: LABELS : Faulty"
-
+puts "TODO CR23096 ALL: Error : 3 differences with reference data found"
set filename PRO10626.igs
DATA : Faulties = 0 ( 0 ) Warnings = 0 ( 0 ) Summary = 0 ( 0 )
TPSTAT : Faulties = 2 ( 0 ) Warnings = 85 ( 295 ) Summary = 87 ( 295 )
CHECKSHAPE : Wires = 8 ( 13 ) Faces = 8 ( 13 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
-NBSHAPES : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 419 ( 419 ) Summary = 5328 ( 5352 )
-STATSHAPE : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 419 ( 419 ) FreeWire = 4 ( 4 ) FreeEdge = 42 ( 42 ) SharedEdge = 2221 ( 2228 )
+NBSHAPES : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 419 ( 419 ) Summary = 5328 ( 5349 )
+STATSHAPE : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 419 ( 419 ) FreeWire = 4 ( 4 ) FreeEdge = 42 ( 42 ) SharedEdge = 2220 ( 2226 )
TOLERANCE : MaxTol = 4.547932063 ( 4.543567878 ) AvgTol = 0.03466358537 ( 0.03659099671 )
LABELS : N0Labels = 457 ( 457 ) N1Labels = 0 ( 0 ) N2Labels = 0 ( 0 ) TotalLabels = 457 ( 457 ) NameLabels = 457 ( 457 ) ColorLabels = 451 ( 455 ) LayerLabels = 453 ( 457 )
PROPS : Centroid = 0 ( 0 ) Volume = 0 ( 0 ) Area = 0 ( 0 )
CHECKSHAPE : Wires = 0 ( 0 ) Faces = 1 ( 1 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
NBSHAPES : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 270 ( 270 ) Summary = 8171 ( 8283 )
STATSHAPE : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 270 ( 270 ) FreeWire = 108 ( 108 ) FreeEdge = 606 ( 606 ) SharedEdge = 3685 ( 3689 )
-TOLERANCE : MaxTol = 5.750743843e+14 ( 4.784430882e+15 ) AvgTol = 2.722724827e+11 ( 2.206755414e+12 )
+TOLERANCE : MaxTol = 2.113937626e+17 ( 2.113937968e+17 ) AvgTol = 9.737589861e+13 ( 9.762248147e+13 )
LABELS : N0Labels = 7 ( 7 ) N1Labels = 450 ( 2042 ) N2Labels = 0 ( 0 ) TotalLabels = 457 ( 2049 ) NameLabels = 457 ( 698 ) ColorLabels = 450 ( 2043 ) LayerLabels = 449 ( 2042 )
PROPS : Centroid = 0 ( 0 ) Volume = 0 ( 0 ) Area = 0 ( 0 )
NCOLORS : NColors = 7 ( 7 )
puts "TODO CR23096 ALL: LABELS : Faulty"
puts "TODO CR23096 ALL: COLORS : Faulty"
puts "TODO CR23096 ALL: LAYERS : Faulty"
-puts "TODO CR25013 ALL: Error : 4 differences with reference data found"
+puts "TODO CR25013 ALL: Error : 3 differences with reference data found"
set filename BUC40132.igs
set filename 1stpunch-mcsrfs.igs
set ref_data {
-DATA : Faulties = 0 ( 0 ) Warnings = 0 ( 2792 ) Summary = 0 ( 2792 )
-TPSTAT : Faulties = 0 ( 0 ) Warnings = 885 ( 1953 ) Summary = 885 ( 1953 )
-CHECKSHAPE : Wires = 6 ( 5 ) Faces = 3 ( 3 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
-NBSHAPES : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 1223 ( 1223 ) Summary = 68998 ( 68973 )
+DATA : Faulties = 0 ( 0 ) Warnings = 0 ( 1 ) Summary = 0 ( 1 )
+TPSTAT : Faulties = 0 ( 0 ) Warnings = 885 ( 1951 ) Summary = 885 ( 1951 )
+CHECKSHAPE : Wires = 6 ( 4 ) Faces = 3 ( 3 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
+NBSHAPES : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 1223 ( 1223 ) Summary = 68996 ( 68971 )
STATSHAPE : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 1223 ( 1223 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 33290 ( 33278 )
-TOLERANCE : MaxTol = 0.2461173132 ( 0.001436622896 ) AvgTol = 1.137529899e-005 ( 9.779578952e-006 )
+TOLERANCE : MaxTol = 0.002714431471 ( 0.001436622896 ) AvgTol = 1.636929841e-006 ( 9.67254762e-006 )
LABELS : N0Labels = 1215 ( 1215 ) N1Labels = 0 ( 0 ) N2Labels = 0 ( 0 ) TotalLabels = 1215 ( 1215 ) NameLabels = 1215 ( 1215 ) ColorLabels = 0 ( 0 ) LayerLabels = 1207 ( 1215 )
PROPS : Centroid = 0 ( 0 ) Volume = 0 ( 0 ) Area = 0 ( 0 )
NCOLORS : NColors = 0 ( 0 )
DATA : Faulties = 0 ( 0 ) Warnings = 0 ( 0 ) Summary = 0 ( 0 )
TPSTAT : Faulties = 0 ( 0 ) Warnings = 42 ( 58 ) Summary = 42 ( 58 )
CHECKSHAPE : Wires = 0 ( 0 ) Faces = 0 ( 0 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
-NBSHAPES : Solid = 0 ( 0 ) Shell = 49 ( 0 ) Face = 49 ( 49 ) Summary = 579 ( 530 )
+NBSHAPES : Solid = 0 ( 0 ) Shell = 49 ( 0 ) Face = 49 ( 49 ) Summary = 579 ( 529 )
STATSHAPE : Solid = 0 ( 0 ) Shell = 49 ( 0 ) Face = 49 ( 49 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 220 ( 218 )
TOLERANCE : MaxTol = 0.003591433268 ( 0.006121716429 ) AvgTol = 0.0002657130942 ( 0.0004625449099 )
LABELS : N0Labels = 1 ( 1 ) N1Labels = 0 ( 0 ) N2Labels = 0 ( 0 ) TotalLabels = 1 ( 1 ) NameLabels = 1 ( 1 ) ColorLabels = 0 ( 0 ) LayerLabels = 0 ( 0 )
DATA : Faulties = 0 ( 0 ) Warnings = 0 ( 0 ) Summary = 0 ( 0 )
TPSTAT : Faulties = 0 ( 0 ) Warnings = 6 ( 6 ) Summary = 6 ( 6 )
CHECKSHAPE : Wires = 0 ( 0 ) Faces = 0 ( 0 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
-NBSHAPES : Solid = 0 ( 0 ) Shell = 39 ( 0 ) Face = 39 ( 39 ) Summary = 492 ( 456 )
+NBSHAPES : Solid = 0 ( 0 ) Shell = 39 ( 0 ) Face = 39 ( 39 ) Summary = 492 ( 455 )
STATSHAPE : Solid = 0 ( 0 ) Shell = 39 ( 0 ) Face = 39 ( 39 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 193 ( 192 )
TOLERANCE : MaxTol = 0.003673630603 ( 0.003673630602 ) AvgTol = 0.0002911716538 ( 0.0002911716555 )
LABELS : N0Labels = 1 ( 1 ) N1Labels = 0 ( 0 ) N2Labels = 0 ( 0 ) TotalLabels = 1 ( 1 ) NameLabels = 1 ( 1 ) ColorLabels = 0 ( 0 ) LayerLabels = 0 ( 0 )
set ref_data {
DATA : Faulties = 0 ( 0 ) Warnings = 0 ( 0 ) Summary = 0 ( 0 )
TPSTAT : Faulties = 0 ( 0 ) Warnings = 5 ( 10 ) Summary = 5 ( 10 )
-CHECKSHAPE : Wires = 1 ( 1 ) Faces = 1 ( 1 ) Shells = 0 ( 2 ) Solids = 0 ( 0 )
+CHECKSHAPE : Wires = 0 ( 1 ) Faces = 0 ( 2 ) Shells = 0 ( 2 ) Solids = 0 ( 0 )
NBSHAPES : Solid = 0 ( 0 ) Shell = 51 ( 2 ) Face = 51 ( 48 ) Summary = 584 ( 569 )
STATSHAPE : Solid = 0 ( 0 ) Shell = 51 ( 2 ) Face = 51 ( 48 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 220 ( 218 )
TOLERANCE : MaxTol = 0.4289319668 ( 0.007688098235 ) AvgTol = 0.0122902841 ( 0.0002401295385 )
DATA : Faulties = 0 ( 0 ) Warnings = 0 ( 0 ) Summary = 0 ( 0 )
TPSTAT : Faulties = 0 ( 2 ) Warnings = 19 ( 27 ) Summary = 19 ( 29 )
CHECKSHAPE : Wires = 2 ( 3 ) Faces = 3 ( 3 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
-NBSHAPES : Solid = 0 ( 0 ) Shell = 12 ( 12 ) Face = 15 ( 15 ) Summary = 151 ( 151 )
-STATSHAPE : Solid = 0 ( 0 ) Shell = 12 ( 12 ) Face = 15 ( 15 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 59 ( 60 )
+NBSHAPES : Solid = 0 ( 0 ) Shell = 12 ( 12 ) Face = 15 ( 15 ) Summary = 149 ( 149 )
+STATSHAPE : Solid = 0 ( 0 ) Shell = 12 ( 12 ) Face = 15 ( 15 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 57 ( 58 )
TOLERANCE : MaxTol = 1562.051497 ( 1562.051497 ) AvgTol = 192.5735494 ( 206.7634854 )
LABELS : N0Labels = 1 ( 1 ) N1Labels = 0 ( 0 ) N2Labels = 0 ( 0 ) TotalLabels = 1 ( 1 ) NameLabels = 1 ( 1 ) ColorLabels = 0 ( 0 ) LayerLabels = 0 ( 0 )
PROPS : Centroid = 0 ( 0 ) Volume = 0 ( 0 ) Area = 0 ( 0 )
set ref_data {
DATA : Faulties = 0 ( 3 ) Warnings = 0 ( 2 ) Summary = 0 ( 5 )
TPSTAT : Faulties = 0 ( 0 ) Warnings = 11 ( 9 ) Summary = 11 ( 9 )
-CHECKSHAPE : Wires = 1 ( 0 ) Faces = 1 ( 0 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
-NBSHAPES : Solid = 2 ( 2 ) Shell = 2 ( 2 ) Face = 99 ( 99 ) Summary = 655 ( 656 )
-STATSHAPE : Solid = 2 ( 2 ) Shell = 2 ( 2 ) Face = 99 ( 99 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 266 ( 266 )
+CHECKSHAPE : Wires = 0 ( 0 ) Faces = 0 ( 0 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
+NBSHAPES : Solid = 2 ( 2 ) Shell = 2 ( 2 ) Face = 99 ( 99 ) Summary = 654 ( 656 )
+STATSHAPE : Solid = 2 ( 2 ) Shell = 2 ( 2 ) Face = 99 ( 99 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 265 ( 266 )
TOLERANCE : MaxTol = 3.000180002 ( 3.000180002 ) AvgTol = 0.1203601833 ( 0.1203606739 )
LABELS : N0Labels = 1 ( 1 ) N1Labels = 2 ( 2 ) N2Labels = 0 ( 0 ) TotalLabels = 3 ( 3 ) NameLabels = 1 ( 1 ) ColorLabels = 2 ( 2 ) LayerLabels = 2 ( 2 )
PROPS : Centroid = 0 ( 0 ) Volume = 0 ( 0 ) Area = 0 ( 0 )
CHECKSHAPE : Wires = 1 ( 0 ) Faces = 1 ( 0 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
NBSHAPES : Solid = 1 ( 1 ) Shell = 1 ( 1 ) Face = 257 ( 257 ) Summary = 1770 ( 1770 )
STATSHAPE : Solid = 1 ( 1 ) Shell = 1 ( 1 ) Face = 257 ( 257 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 746 ( 746 )
-TOLERANCE : MaxTol = 0.477874439 ( 0.477874439 ) AvgTol = 0.005726825808 ( 0.007088060753 )
+TOLERANCE : MaxTol = 0.477874439 ( 3.60548709 ) AvgTol = 0.005726825988 ( 0.01506499669 )
LABELS : N0Labels = 1 ( 1 ) N1Labels = 0 ( 0 ) N2Labels = 0 ( 0 ) TotalLabels = 1 ( 1 ) NameLabels = 1 ( 1 ) ColorLabels = 1 ( 1 ) LayerLabels = 0 ( 0 )
PROPS : Centroid = 0 ( 0 ) Volume = 0 ( 0 ) Area = 0 ( 0 )
NCOLORS : NColors = 1 ( 1 )
# !!!! This file is generated automatically, do not edit manually! See end script
puts "TODO CR23096 ALL: LABELS : Faulty"
-puts "TODO CR23096 ALL: CHECKSHAPE : Faulty"
-
-
set filename PRO20364.stp
# !!!! This file is generated automatically, do not edit manually! See end script
puts "TODO CR23096 ALL: LABELS : Faulty"
-puts "TODO CR23096 ALL: CHECKSHAPE : Faulty"
puts "TODO CR23096 ALL: NBSHAPES : Faulty"
+set LinuxDiff 3
set filename r76sy.stp
set ref_data {
DATA : Faulties = 0 ( 0 ) Warnings = 0 ( 0 ) Summary = 0 ( 0 )
TPSTAT : Faulties = 1 ( 4 ) Warnings = 68 ( 103 ) Summary = 69 ( 107 )
-CHECKSHAPE : Wires = 2 ( 0 ) Faces = 2 ( 0 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
-NBSHAPES : Solid = 23 ( 23 ) Shell = 47 ( 47 ) Face = 194 ( 194 ) Summary = 1352 ( 1357 )
-STATSHAPE : Solid = 23 ( 23 ) Shell = 47 ( 47 ) Face = 194 ( 194 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 504 ( 504 )
+CHECKSHAPE : Wires = 1 ( 0 ) Faces = 1 ( 0 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
+NBSHAPES : Solid = 23 ( 23 ) Shell = 47 ( 47 ) Face = 194 ( 194 ) Summary = 1350 ( 1357 )
+STATSHAPE : Solid = 23 ( 23 ) Shell = 47 ( 47 ) Face = 194 ( 194 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 502 ( 504 )
TOLERANCE : MaxTol = 0.0205434719 ( 0.0293421419 ) AvgTol = 0.0005065999101 ( 0.00138068504 )
LABELS : N0Labels = 3 ( 3 ) N1Labels = 69 ( 67 ) N2Labels = 0 ( 0 ) TotalLabels = 72 ( 70 ) NameLabels = 5 ( 5 ) ColorLabels = 47 ( 45 ) LayerLabels = 43 ( 45 )
PROPS : Centroid = 0 ( 0 ) Volume = 0 ( 0 ) Area = 0 ( 0 )
CHECKSHAPE : Wires = 1 ( 0 ) Faces = 1 ( 0 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
NBSHAPES : Solid = 0 ( 0 ) Shell = 1 ( 1 ) Face = 55 ( 54 ) Summary = 329 ( 314 )
STATSHAPE : Solid = 0 ( 0 ) Shell = 1 ( 1 ) Face = 55 ( 54 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 139 ( 130 )
-TOLERANCE : MaxTol = 43.63397635 ( 0.004765335881 ) AvgTol = 0.9413185963 ( 0.0005744934329 )
+TOLERANCE : MaxTol = 43.63397625 ( 0.004765335881 ) AvgTol = 1.059548993 ( 0.0005744934329 )
LABELS : N0Labels = 1 ( 1 ) N1Labels = 53 ( 54 ) N2Labels = 0 ( 0 ) TotalLabels = 54 ( 55 ) NameLabels = 1 ( 1 ) ColorLabels = 0 ( 0 ) LayerLabels = 53 ( 54 )
PROPS : Centroid = 0 ( 0 ) Volume = 0 ( 0 ) Area = 0 ( 0 )
NCOLORS : NColors = 0 ( 0 )
CHECKSHAPE : Wires = 2 ( 2 ) Faces = 2 ( 2 ) Shells = 1 ( 1 ) Solids = 1 ( 1 )
NBSHAPES : Solid = 4 ( 4 ) Shell = 4 ( 4 ) Face = 40 ( 40 ) Summary = 263 ( 263 )
STATSHAPE : Solid = 4 ( 4 ) Shell = 4 ( 4 ) Face = 40 ( 40 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 98 ( 98 )
-TOLERANCE : MaxTol = 0.7226608412 ( 0.7227160437 ) AvgTol = 0.04200651748 ( 0.04200775508 )
+TOLERANCE : MaxTol = 0.7571968817 ( 0.757178949 ) AvgTol = 0.04326711711 ( 0.04326805656 )
LABELS : N0Labels = 1 ( 1 ) N1Labels = 4 ( 4 ) N2Labels = 0 ( 0 ) TotalLabels = 5 ( 5 ) NameLabels = 1 ( 1 ) ColorLabels = 4 ( 4 ) LayerLabels = 0 ( 0 )
PROPS : Centroid = 0 ( 0 ) Volume = 0 ( 0 ) Area = 0 ( 0 )
NCOLORS : NColors = 2 ( 2 )
DATA : Faulties = 0 ( 0 ) Warnings = 0 ( 0 ) Summary = 0 ( 0 )
TPSTAT : Faulties = 0 ( 0 ) Warnings = 39 ( 6 ) Summary = 39 ( 6 )
CHECKSHAPE : Wires = 64 ( 48 ) Faces = 64 ( 48 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
-NBSHAPES : Solid = 15 ( 16 ) Shell = 17 ( 17 ) Face = 367 ( 366 ) Summary = 2505 ( 2495 )
+NBSHAPES : Solid = 15 ( 16 ) Shell = 17 ( 17 ) Face = 367 ( 366 ) Summary = 2506 ( 2495 )
STATSHAPE : Solid = 71 ( 79 ) Shell = 87 ( 87 ) Face = 2740 ( 2732 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 1064 ( 1057 )
TOLERANCE : MaxTol = 4.389003466 ( 5.153790881 ) AvgTol = 0.05707355423 ( 0.06633632879 )
LABELS : N0Labels = 10 ( 10 ) N1Labels = 32 ( 32 ) N2Labels = 0 ( 0 ) TotalLabels = 42 ( 42 ) NameLabels = 22 ( 22 ) ColorLabels = 22 ( 22 ) LayerLabels = 0 ( 0 )
DATA : Faulties = 0 ( 9 ) Warnings = 0 ( 0 ) Summary = 0 ( 9 )
TPSTAT : Faulties = 0 ( 0 ) Warnings = 77 ( 39 ) Summary = 77 ( 39 )
CHECKSHAPE : Wires = 0 ( 0 ) Faces = 1 ( 0 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
-NBSHAPES : Solid = 11 ( 11 ) Shell = 13 ( 13 ) Face = 270 ( 270 ) Summary = 1653 ( 1646 )
-STATSHAPE : Solid = 11 ( 11 ) Shell = 13 ( 13 ) Face = 270 ( 270 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 642 ( 640 )
+NBSHAPES : Solid = 10 ( 10 ) Shell = 12 ( 12 ) Face = 269 ( 269 ) Summary = 1638 ( 1636 )
+STATSHAPE : Solid = 10 ( 10 ) Shell = 12 ( 12 ) Face = 269 ( 269 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 636 ( 636 )
TOLERANCE : MaxTol = 0.01008857123 ( 0.01008857108 ) AvgTol = 0.0003104589496 ( 0.0003616303196 )
LABELS : N0Labels = 3 ( 3 ) N1Labels = 2 ( 3 ) N2Labels = 0 ( 1 ) TotalLabels = 5 ( 7 ) NameLabels = 5 ( 5 ) ColorLabels = 0 ( 0 ) LayerLabels = 0 ( 0 )
PROPS : Centroid = 0 ( 0 ) Volume = 0 ( 0 ) Area = 0 ( 0 )
DATA : Faulties = 0 ( 0 ) Warnings = 0 ( 0 ) Summary = 0 ( 0 )
TPSTAT : Faulties = 0 ( 0 ) Warnings = 322 ( 148 ) Summary = 322 ( 148 )
CHECKSHAPE : Wires = 0 ( 0 ) Faces = 0 ( 0 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
-NBSHAPES : Solid = 0 ( 0 ) Shell = 797 ( 797 ) Face = 797 ( 797 ) Summary = 11928 ( 11928 )
-STATSHAPE : Solid = 0 ( 0 ) Shell = 797 ( 797 ) Face = 797 ( 797 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 4821 ( 4821 )
+NBSHAPES : Solid = 0 ( 0 ) Shell = 797 ( 797 ) Face = 797 ( 797 ) Summary = 11927 ( 11927 )
+STATSHAPE : Solid = 0 ( 0 ) Shell = 797 ( 797 ) Face = 797 ( 797 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 4820 ( 4820 )
TOLERANCE : MaxTol = 0.03846819732 ( 0.0394709482 ) AvgTol = 0.0008687242138 ( 0.002865279517 )
LABELS : N0Labels = 1 ( 1 ) N1Labels = 0 ( 0 ) N2Labels = 0 ( 0 ) TotalLabels = 1 ( 1 ) NameLabels = 1 ( 1 ) ColorLabels = 0 ( 0 ) LayerLabels = 0 ( 0 )
PROPS : Centroid = 0 ( 0 ) Volume = 0 ( 0 ) Area = 0 ( 0 )
set ref_data {
DATA : Faulties = 0 ( 0 ) Warnings = 0 ( 0 ) Summary = 0 ( 0 )
TPSTAT : Faulties = 0 ( 0 ) Warnings = 47 ( 41 ) Summary = 47 ( 41 )
-CHECKSHAPE : Wires = 0 ( 0 ) Faces = 1 ( 1 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
+CHECKSHAPE : Wires = 0 ( 1 ) Faces = 1 ( 2 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
NBSHAPES : Solid = 0 ( 0 ) Shell = 209 ( 129 ) Face = 209 ( 209 ) Summary = 3032 ( 2883 )
STATSHAPE : Solid = 0 ( 0 ) Shell = 209 ( 129 ) Face = 209 ( 209 ) FreeWire = 0 ( 1 ) FreeEdge = 67 ( 67 ) SharedEdge = 1152 ( 1150 )
TOLERANCE : MaxTol = 0.3035246255 ( 0.3035246024 ) AvgTol = 0.001361092422 ( 0.003604130581 )
# !!!! This file is generated automatically, do not edit manually! See end script
-puts "TODO CR25593 ALL: CHECKSHAPE : Faulty"
set filename trj7_pm5-hc-214.stp
# !!!! This file is generated automatically, do not edit manually! See end script
-puts "TODO CR25593 ALL: Error : 3 differences with reference data found :"
-puts "TODO CR25593 ALL: TPSTAT : Faulty"
set LinuxDiff 1
set LinuxFaulties {CHECKSHAPE}
# !!!! This file is generated automatically, do not edit manually! See end script
-puts "TODO CR25593 ALL: CHECKSHAPE : Faulty"
-
# No checkape error on WNT in 64-bit only (after 22598 and issue 25797 was registered for that)
+puts "TODO CR23096 Linux: CHECKSHAPE : Faulty"
set filename trj6_pm4-hc-214.stp
-puts "TODO OCC25593 ALL: Faulty shapes in variables faulty_1 to faulty_4 "
-
restore [locate_data_file wrong_checkshape_2.brep] a
-puts "TODO OCC24035 ALL: Faulty shapes in variables faulty_1 to faulty_"
restore [locate_data_file wrong_checkshape_2.brep] a