mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-09 13:22:24 +03:00
0031939: Coding - correction of spelling errors in comments [part 10]
Fix various typos via codespell.
This commit is contained in:
@@ -297,7 +297,7 @@ TopoDS_Shape ShapeFix::RemoveSmallEdges (TopoDS_Shape& Shape,
|
||||
|
||||
//=======================================================================
|
||||
//function : ReplaceVertex
|
||||
//purpose : auxilary for FixVertexPosition
|
||||
//purpose : auxiliary for FixVertexPosition
|
||||
//=======================================================================
|
||||
static TopoDS_Edge ReplaceVertex(const TopoDS_Edge& theEdge,
|
||||
const gp_Pnt theP,
|
||||
@@ -327,7 +327,7 @@ static TopoDS_Edge ReplaceVertex(const TopoDS_Edge& theEdge,
|
||||
|
||||
//=======================================================================
|
||||
//function : getNearPoint
|
||||
//purpose : auxilary for FixVertexPosition
|
||||
//purpose : auxiliary for FixVertexPosition
|
||||
//=======================================================================
|
||||
static Standard_Real getNearPoint(const TColgp_SequenceOfPnt& aSeq1,
|
||||
const TColgp_SequenceOfPnt& aSeq2,
|
||||
@@ -360,7 +360,7 @@ static Standard_Real getNearPoint(const TColgp_SequenceOfPnt& aSeq1,
|
||||
|
||||
//=======================================================================
|
||||
//function : getNearestEdges
|
||||
//purpose : auxilary for FixVertexPosition
|
||||
//purpose : auxiliary for FixVertexPosition
|
||||
//=======================================================================
|
||||
static Standard_Boolean getNearestEdges(TopTools_ListOfShape& theLEdges,
|
||||
const TopoDS_Vertex theVert,
|
||||
|
@@ -283,7 +283,7 @@ Standard_Boolean ShapeFix_ComposeShell::Status (const ShapeExtend_Status status)
|
||||
|
||||
//=======================================================================
|
||||
//function : PointLineDeviation
|
||||
//purpose : auxilary
|
||||
//purpose : auxiliary
|
||||
//=======================================================================
|
||||
// Return (signed) deviation of point from line
|
||||
static Standard_Real PointLineDeviation (const gp_Pnt2d &p, const gp_Lin2d &line)
|
||||
@@ -295,7 +295,7 @@ static Standard_Real PointLineDeviation (const gp_Pnt2d &p, const gp_Lin2d &line
|
||||
|
||||
//=======================================================================
|
||||
//function : PointLinePosition
|
||||
//purpose : auxilary
|
||||
//purpose : auxiliary
|
||||
//=======================================================================
|
||||
// Define position of point relative to line
|
||||
static Standard_Integer PointLinePosition (const gp_Pnt2d &p, const gp_Lin2d &line,
|
||||
@@ -307,7 +307,7 @@ static Standard_Integer PointLinePosition (const gp_Pnt2d &p, const gp_Lin2d &li
|
||||
|
||||
//=======================================================================
|
||||
//function : PointLinePosition
|
||||
//purpose : auxilary
|
||||
//purpose : auxiliary
|
||||
//=======================================================================
|
||||
// Define position of point relative to line
|
||||
static Standard_Integer PointLinePosition (const gp_Pnt2d &p, const gp_Lin2d &line)
|
||||
@@ -318,7 +318,7 @@ static Standard_Integer PointLinePosition (const gp_Pnt2d &p, const gp_Lin2d &li
|
||||
|
||||
//=======================================================================
|
||||
//function : ParamPointsOnLine
|
||||
//purpose : auxilary
|
||||
//purpose : auxiliary
|
||||
//=======================================================================
|
||||
// Compute parameter of point on line
|
||||
static inline Standard_Real ParamPointOnLine (const gp_Pnt2d &p, const gp_Lin2d &line)
|
||||
@@ -328,7 +328,7 @@ static inline Standard_Real ParamPointOnLine (const gp_Pnt2d &p, const gp_Lin2d
|
||||
|
||||
//=======================================================================
|
||||
//function : ParamPointsOnLine
|
||||
//purpose : auxilary
|
||||
//purpose : auxiliary
|
||||
//=======================================================================
|
||||
// Compute parameter of two points on line (as intersection of segment)
|
||||
static Standard_Real ParamPointsOnLine (const gp_Pnt2d &p1, const gp_Pnt2d &p2,
|
||||
@@ -354,7 +354,7 @@ static Standard_Real ParamPointsOnLine (const gp_Pnt2d &p1, const gp_Pnt2d &p2,
|
||||
|
||||
//=======================================================================
|
||||
//function : ProjectPointOnLine
|
||||
//purpose : auxilary
|
||||
//purpose : auxiliary
|
||||
//=======================================================================
|
||||
// Compute projection of point on line
|
||||
static inline gp_Pnt2d ProjectPointOnLine (const gp_Pnt2d &p, const gp_Lin2d &line)
|
||||
@@ -364,7 +364,7 @@ static inline gp_Pnt2d ProjectPointOnLine (const gp_Pnt2d &p, const gp_Lin2d &li
|
||||
|
||||
//=======================================================================
|
||||
//function : ApplyContext
|
||||
//purpose : auxilary
|
||||
//purpose : auxiliary
|
||||
//=======================================================================
|
||||
// Apply context to one edge in the wire and put result into this wire
|
||||
static Standard_Integer ApplyContext (ShapeFix_WireSegment &wire,
|
||||
@@ -415,7 +415,7 @@ static Standard_Integer ApplyContext (ShapeFix_WireSegment &wire,
|
||||
|
||||
//=======================================================================
|
||||
//function : IsCoincided
|
||||
//purpose : auxilary
|
||||
//purpose : auxiliary
|
||||
//=======================================================================
|
||||
// check points coincidence
|
||||
static inline Standard_Boolean IsCoincided (const gp_Pnt2d &p1, const gp_Pnt2d &p2,
|
||||
@@ -433,7 +433,7 @@ static inline Standard_Boolean IsCoincided (const gp_Pnt2d &p1, const gp_Pnt2d &
|
||||
|
||||
//=======================================================================
|
||||
//function : GetPatchIndex
|
||||
//purpose : auxilary
|
||||
//purpose : auxiliary
|
||||
//=======================================================================
|
||||
|
||||
// computes index for the patch by given parameter Param
|
||||
@@ -504,7 +504,7 @@ void ShapeFix_ComposeShell::LoadWires (ShapeFix_SequenceOfWireSegment &seqw) con
|
||||
if(isNonManifold)
|
||||
{
|
||||
Handle(ShapeExtend_WireData) sbwd = new ShapeExtend_WireData ( wire ,Standard_True,Standard_False);
|
||||
//pdn protection againts of wires w/o edges
|
||||
//pdn protection against wires w/o edges
|
||||
Standard_Integer nbEdges = sbwd->NbEdges();
|
||||
if(nbEdges)
|
||||
{
|
||||
@@ -516,7 +516,7 @@ void ShapeFix_ComposeShell::LoadWires (ShapeFix_SequenceOfWireSegment &seqw) con
|
||||
else
|
||||
{
|
||||
//splitting wires containing manifold and non-manifold parts on a separate
|
||||
//wire segment
|
||||
//wire segment
|
||||
Handle(ShapeExtend_WireData) sbwdM = new ShapeExtend_WireData();
|
||||
Handle(ShapeExtend_WireData) sbwdNM = new ShapeExtend_WireData();
|
||||
sbwdNM->ManifoldMode() = Standard_False;
|
||||
@@ -721,7 +721,7 @@ Standard_Integer ShapeFix_ComposeShell::ComputeCode (const Handle(ShapeExtend_Wi
|
||||
|
||||
//=======================================================================
|
||||
//function : DistributeSplitPoints
|
||||
//purpose : auxilary
|
||||
//purpose : auxiliary
|
||||
//=======================================================================
|
||||
// After applying context to (seam) edge, distribute its indices on new edges,
|
||||
// according to their parameters on that edge
|
||||
@@ -753,7 +753,7 @@ static void DistributeSplitPoints (const Handle(ShapeExtend_WireData) &sbwd,
|
||||
|
||||
//=======================================================================
|
||||
//function : CheckByCurve3d
|
||||
//purpose : auxilary
|
||||
//purpose : auxiliary
|
||||
//=======================================================================
|
||||
static Standard_Integer CheckByCurve3d (const gp_Pnt &pos,
|
||||
const Handle(Geom_Curve) &c3d,
|
||||
@@ -769,7 +769,7 @@ static Standard_Integer CheckByCurve3d (const gp_Pnt &pos,
|
||||
|
||||
//=======================================================================
|
||||
//function : DefinePatch
|
||||
//purpose : auxilary
|
||||
//purpose : auxiliary
|
||||
//=======================================================================
|
||||
static void DefinePatch (ShapeFix_WireSegment &wire, const Standard_Integer code,
|
||||
const Standard_Boolean isCutByU, const Standard_Integer cutIndex,
|
||||
@@ -788,7 +788,7 @@ static void DefinePatch (ShapeFix_WireSegment &wire, const Standard_Integer code
|
||||
|
||||
//=======================================================================
|
||||
//function : GetGridResolution
|
||||
//purpose : auxilary
|
||||
//purpose : auxiliary
|
||||
//=======================================================================
|
||||
static Standard_Real GetGridResolution(const Handle(TColStd_HArray1OfReal) SplitValues,
|
||||
const Standard_Integer cutIndex)
|
||||
@@ -828,7 +828,7 @@ ShapeFix_WireSegment ShapeFix_ComposeShell::SplitWire (ShapeFix_WireSegment &wir
|
||||
// Processing edge by edge (assuming that split points are sorted along the wire)
|
||||
for ( Standard_Integer i = 1; i <= wire.NbEdges(); i++ ) {
|
||||
|
||||
// for already splitted seam edge, redistribute its splitting points
|
||||
// for already split seam edge, redistribute its splitting points
|
||||
Standard_Integer nsplit = ApplyContext ( wire, i, Context() );
|
||||
if ( nsplit !=1 ) {
|
||||
DistributeSplitPoints ( wire.WireData(), myFace, i, nsplit, indexes, values );
|
||||
@@ -1052,7 +1052,7 @@ ShapeFix_WireSegment ShapeFix_ComposeShell::SplitWire (ShapeFix_WireSegment &wir
|
||||
}
|
||||
else vertices.Append ( V );
|
||||
|
||||
// When edge is about to be splitted, copy end vertices to protect
|
||||
// When edge is about to be split, copy end vertices to protect
|
||||
// original shape from increasing tolerance after fixing SameParameter
|
||||
if ( ! splitted ) {
|
||||
//smh#8
|
||||
@@ -1732,12 +1732,12 @@ void ShapeFix_ComposeShell::SplitByGrid (ShapeFix_SequenceOfWireSegment &seqw)
|
||||
Standard_Real Umin,Umax,Vmin,Vmax;
|
||||
myGrid->Bounds(Umin,Umax,Vmin,Vmax);
|
||||
|
||||
//value of precision to define number of patch should be the same as used in the definitin position of point realtively to seam edge (TOLINT)
|
||||
//value of precision to define number of patch should be the same as used in the definitin position of point relatively to seam edge (TOLINT)
|
||||
Standard_Real pprec = TOLINT;//::Precision::PConfusion();
|
||||
Standard_Integer i = 1;
|
||||
if(myClosedMode)
|
||||
{
|
||||
//for closed mode when only one patch exist and location of the splitting line is coinsident with first joint value
|
||||
//for closed mode when only one patch exist and location of the splitting line is coincident with first joint value
|
||||
//Therefore in this case it is necessary to move all wire segments in the range of the patch between first and last joint
|
||||
//values. Then all wire segments are lie between -period and period in order to have valid split ranges after splitting.
|
||||
//Because for closed mode cut index always equal to 1 and parts of segments after splitting always should have index either (0,1) or (1,2).
|
||||
@@ -1930,7 +1930,7 @@ void ShapeFix_ComposeShell::BreakWires (ShapeFix_SequenceOfWireSegment &seqw)
|
||||
|
||||
//=======================================================================
|
||||
//function : IsShortSegment
|
||||
//purpose : auxilary
|
||||
//purpose : auxiliary
|
||||
//=======================================================================
|
||||
// BUC60035 2053: check if wire segment is very short (in order not to skip it)
|
||||
// 0 - long
|
||||
@@ -1976,7 +1976,7 @@ static Standard_Integer IsShortSegment (const ShapeFix_WireSegment &seg,
|
||||
|
||||
//=======================================================================
|
||||
//function : IsSamePatch
|
||||
//purpose : auxilary
|
||||
//purpose : auxiliary
|
||||
//=======================================================================
|
||||
static Standard_Boolean IsSamePatch (const ShapeFix_WireSegment wire,
|
||||
const Standard_Integer NU,
|
||||
@@ -2269,7 +2269,7 @@ void ShapeFix_ComposeShell::CollectWires (ShapeFix_SequenceOfWireSegment &wires,
|
||||
|
||||
// Check if some wires are short in 3d (lie entirely inside one vertex),
|
||||
// and if yes try to merge them with others
|
||||
//pdn The short seqments are stil plased in "in" sequence.
|
||||
//pdn The short seqments are still placed in "in" sequence.
|
||||
|
||||
for ( i=1; i <= seqw.Length(); i++ ) {
|
||||
if ( shorts(i) != 1 ||
|
||||
|
@@ -67,7 +67,7 @@ DEFINE_STANDARD_HANDLE(ShapeFix_ComposeShell, ShapeFix_Root)
|
||||
//! lines in the periodic direction, as necessary to split all
|
||||
//! the wires (whole parametrical range of a face)
|
||||
//! In this mode, some regularization procedures are performed
|
||||
//! (indexation of splitted segments by patch numbers), and it is
|
||||
//! (indexation of split segments by patch numbers), and it is
|
||||
//! expected to be more reliable and robust in case of bad shapes
|
||||
//!
|
||||
//! - if ClosedMode is True, when everything on a periodic surfaces
|
||||
@@ -116,7 +116,7 @@ public:
|
||||
//! resulting shape; the only result is filled context
|
||||
//! where splittings are recorded.
|
||||
//!
|
||||
//! NOTE: If edge is splitted, it is replaced by wire, and
|
||||
//! NOTE: If edge is split, it is replaced by wire, and
|
||||
//! order of edges in the wire corresponds to FORWARD orientation
|
||||
//! of the edge.
|
||||
Standard_EXPORT void SplitEdges();
|
||||
@@ -169,13 +169,13 @@ protected:
|
||||
|
||||
//! Splits edges in the wire by given indices of edges and
|
||||
//! parameters on them. Returns resulting wire and vertices
|
||||
//! corresponding to splitting parameters. If two consequtive
|
||||
//! corresponding to splitting parameters. If two consecutive
|
||||
//! splitting points are too near one to another (with tolerance
|
||||
//! of edge), edge is divided in single point. In the same way,
|
||||
//! splitting which is too near to end of edge, is not applied
|
||||
//! (end vertex is returned instead).
|
||||
//!
|
||||
//! NOTE: If edge is splitted, it is replaced by wire, and
|
||||
//! NOTE: If edge is split, it is replaced by wire, and
|
||||
//! order of edges in the wire corresponds to FORWARD orientation
|
||||
//! of the edge.
|
||||
Standard_EXPORT ShapeFix_WireSegment SplitWire (ShapeFix_WireSegment& wire, TColStd_SequenceOfInteger& indexes, const TColStd_SequenceOfReal& values, TopTools_SequenceOfShape& vertices, const TColStd_SequenceOfInteger& segcodes, const Standard_Boolean cutbyu, const Standard_Integer cutindex);
|
||||
@@ -225,7 +225,7 @@ protected:
|
||||
//! After that, each wire segment lies on its own patch of grid.
|
||||
Standard_EXPORT void BreakWires (ShapeFix_SequenceOfWireSegment& seqw);
|
||||
|
||||
//! Collect set of wire segments (already splitted) into closed
|
||||
//! Collect set of wire segments (already split) into closed
|
||||
//! wires. This is done by traversing all the segments in allowed
|
||||
//! directions, starting only from the REVERSED and FORWARD and
|
||||
//! taking EXTERNAL as necessary in fork points. Forks are detected
|
||||
|
@@ -187,11 +187,11 @@ Standard_Boolean ShapeFix_Edge::FixAddPCurve (const TopoDS_Edge& edge,
|
||||
//#12 rln 17/03/98 making this method to be more general : if a curve is
|
||||
//parallel to one iso let us translate it parallely in the direction to another
|
||||
//iso (which is located farther from aC2d). Thus, the requirement for closeness
|
||||
//to the surface bounds may be avoid.
|
||||
//to the surface bounds may be avoided.
|
||||
//For example, instead of Abs(theLoc.X()-uf) <= Tol) ... elseif (...-ul..)...
|
||||
//the comparison if (Abs(theLoc.X()-uf) <= Abs(theLoc.X()-ul)) .... can be used.
|
||||
|
||||
//The reason of this fix #12 is that seam is not sure to lie on the bound :
|
||||
//The reason for fix #12 is that seam is not certain to lie on the bound :
|
||||
//if a surface is periodic the whole contour may be shifted (e.g. ProSTEP,
|
||||
//file ug_exhaust-A.stp entity #284920)
|
||||
|
||||
@@ -265,7 +265,7 @@ static Handle(Geom2d_Curve) TranslatePCurve (const Handle(Geom_Surface)& aSurf,
|
||||
return theNewL2d;
|
||||
}
|
||||
*/
|
||||
// Other case not yet implemented
|
||||
// TODO Other case not yet implemented
|
||||
#ifdef OCCT_DEBUG
|
||||
std::cout << "TranslatePCurve not performed" << std::endl;
|
||||
#endif
|
||||
@@ -391,7 +391,7 @@ static Handle(Geom2d_Curve) TranslatePCurve (const Handle(Geom_Surface)& aSurf,
|
||||
oldFirst += shift;
|
||||
oldLast += shift;
|
||||
}
|
||||
//pdn 30.06.2000 work arounf on beziers
|
||||
//pdn 30.06.2000 work around on beziers
|
||||
Standard_Real oldFirstCurve1 = oldFirst, oldLastCurve1 = oldLast;
|
||||
if(Curve2dPtr->IsKind(STANDARD_TYPE(Geom2d_BezierCurve))) {
|
||||
|
||||
|
@@ -282,7 +282,7 @@ void ShapeFix_EdgeProjAux::Init2d (const Standard_Real preci)
|
||||
|
||||
cf = theCurve2d->FirstParameter();
|
||||
cl = theCurve2d->LastParameter();
|
||||
//pdn cutting pcurve by suface bounds
|
||||
//pdn cutting pcurve by surface bounds
|
||||
if (Precision::IsInfinite(cf)||Precision::IsInfinite(cl)) {
|
||||
if(theCurve2d->IsKind(STANDARD_TYPE(Geom2d_Line))) {
|
||||
Standard_Real uf,ul,vf,vl;
|
||||
@@ -357,7 +357,7 @@ void ShapeFix_EdgeProjAux::Init2d (const Standard_Real preci)
|
||||
else {
|
||||
cf=-10000;
|
||||
cl= 10000;
|
||||
//pdn not cutted by bounds
|
||||
//pdn not cut by bounds
|
||||
#ifdef OCCT_DEBUG
|
||||
std::cout<<"Infinite Surface"<<std::endl;
|
||||
#endif
|
||||
|
@@ -280,8 +280,8 @@ void ShapeFix_Face::Add (const TopoDS_Wire& wire)
|
||||
|
||||
//=======================================================================
|
||||
//function : SplitWire
|
||||
//purpose : auxilary - try to split wire (it is needed if some segments
|
||||
// were removed in ShapeFix_Wire::FixSelfIntersection()
|
||||
//purpose : auxiliary - try to split wire (it is needed if some segments
|
||||
// were removed in ShapeFix_Wire::FixSelfIntersection() )
|
||||
//=======================================================================
|
||||
static Standard_Boolean SplitWire(const TopoDS_Face &face, const TopoDS_Wire& wire,
|
||||
TopTools_SequenceOfShape& aResWires)
|
||||
@@ -349,7 +349,7 @@ static Standard_Boolean SplitWire(const TopoDS_Face &face, const TopoDS_Wire& wi
|
||||
|
||||
if(aResWires.Length()>1) {
|
||||
#ifdef OCCT_DEBUG
|
||||
std::cout<<"Wire was splitted on "<<aResWires.Length()<<" wires"<< std::endl;
|
||||
std::cout<<"Wire was split on "<<aResWires.Length()<<" wires"<< std::endl;
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -581,7 +581,7 @@ Standard_Boolean ShapeFix_Face::Perform()
|
||||
TopTools_SequenceOfShape aLoopWires;
|
||||
if(NeedFix ( myFixLoopWiresMode) && FixLoopWire(aLoopWires)) {
|
||||
if (aLoopWires.Length() > 1)
|
||||
SendWarning ( wire, Message_Msg ( "FixAdvFace.FixLoopWire.MSG0" ) );// Wire was splitted on several wires
|
||||
SendWarning ( wire, Message_Msg ( "FixAdvFace.FixLoopWire.MSG0" ) );// Wire was split on several wires
|
||||
myStatus |= ShapeExtend::EncodeStatus ( ShapeExtend_DONE7 );
|
||||
fixed = Standard_True;
|
||||
Standard_Integer k=1;
|
||||
@@ -801,9 +801,9 @@ static Standard_Real FindBestInterval (TColgp_SequenceOfPnt2d &intervals)
|
||||
|
||||
//=======================================================================
|
||||
//function : FixAddNaturalBound
|
||||
//purpose :
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
// Detect missing natural bounary on spherical surfaces and add it if
|
||||
// Detect missing natural boundary on spherical surfaces and add it if
|
||||
// necessary
|
||||
//pdn 981202: add natural bounds if missing (on sphere only)
|
||||
//:abv 28.08.01: rewritten and extended for toruses
|
||||
@@ -859,7 +859,7 @@ Standard_Boolean ShapeFix_Face::FixAddNaturalBound()
|
||||
if ( !IsSurfaceUVPeriodic (mySurf->Adaptor3d()) || ShapeAnalysis::IsOuterBound (myFace) )
|
||||
return Standard_False;
|
||||
|
||||
// Collect informations on free intervals in U and V
|
||||
// Collect information on free intervals in U and V
|
||||
TColgp_SequenceOfPnt2d intU, intV, centers;
|
||||
Standard_Real SUF, SUL, SVF, SVL;
|
||||
mySurf->Bounds(SUF, SUL, SVF, SVL);
|
||||
@@ -1419,7 +1419,7 @@ Standard_Boolean ShapeFix_Face::FixOrientation(TopTools_DataMapOfShapeListOfShap
|
||||
|
||||
//=======================================================================
|
||||
//function : CheckWire
|
||||
//purpose : auxilary for FixMissingSeam
|
||||
//purpose : auxiliary for FixMissingSeam
|
||||
//=======================================================================
|
||||
//:i7 abv 18 Sep 98: ProSTEP TR9 r0501-ug.stp: algorithm of fixing missing seam changed
|
||||
// test whether the wire is opened on period of periodical surface
|
||||
@@ -1675,7 +1675,7 @@ Standard_Boolean ShapeFix_Face::FixMissingSeam()
|
||||
B.Add ( S, w2 );
|
||||
ShapeAnalysis::GetFaceUVBounds (TopoDS::Face(S), m2[0][0], m2[0][1], m2[1][0], m2[1][1]);
|
||||
|
||||
// For the case when surface is closed only in one direction it is necesary to check
|
||||
// For the case when surface is closed only in one direction it is necessary to check
|
||||
// validity of orientation of the open wires in parametric space.
|
||||
// In case of U closed surface wire with minimal V coordinate should be directed in positive direction by U
|
||||
// In case of V closed surface wire with minimal U coordinate should be directed in negative direction by V
|
||||
@@ -2196,7 +2196,7 @@ Standard_Boolean ShapeFix_Face::FixLoopWire(TopTools_SequenceOfShape& aResWires)
|
||||
if(isDone && aResWires.Length() >1)
|
||||
{
|
||||
#ifdef OCCT_DEBUG
|
||||
std::cout<<"Wire was splitted on "<<aResWires.Length()<<" wires"<< std::endl;
|
||||
std::cout<<"Wire was split on "<<aResWires.Length()<<" wires"<< std::endl;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
@@ -141,7 +141,7 @@ public:
|
||||
//! same support
|
||||
TopoDS_Face Face() const;
|
||||
|
||||
//! Returns resulting shape (Face or Shell if splitted)
|
||||
//! Returns resulting shape (Face or Shell if split)
|
||||
//! To be used instead of Face() if FixMissingSeam involved
|
||||
TopoDS_Shape Result() const;
|
||||
|
||||
@@ -206,7 +206,7 @@ public:
|
||||
Standard_EXPORT Standard_Boolean FixSmallAreaWire (const Standard_Boolean theIsRemoveSmallFace);
|
||||
|
||||
//! Detects if wire has a loop and fixes this situation by splitting on the few parts.
|
||||
//! if wire has a loops and it was splitted Status was set to value ShapeExtend_DONE6.
|
||||
//! if wire has a loops and it was split Status was set to value ShapeExtend_DONE6.
|
||||
Standard_EXPORT Standard_Boolean FixLoopWire (TopTools_SequenceOfShape& aResWires);
|
||||
|
||||
//! Detects and fixes the special case when face has more than one wire
|
||||
|
@@ -181,7 +181,7 @@ ShapeFix_FixSmallFace::ShapeFix_FixSmallFace()
|
||||
}
|
||||
theMaxDev *= 1.00001;
|
||||
|
||||
//Cretate new vertex with mean point
|
||||
//Create new vertex with mean point
|
||||
TopoDS_Vertex theSharedVertex;
|
||||
theBuilder.MakeVertex(theSharedVertex);
|
||||
theBuilder.UpdateVertex( theSharedVertex, gp_Pnt(thePosition), theMaxDev+theMaxTol/2 );
|
||||
@@ -256,7 +256,7 @@ ShapeFix_FixSmallFace::ShapeFix_FixSmallFace()
|
||||
}
|
||||
}
|
||||
myShape = Context()->Apply(myShape);
|
||||
//Fixing of missing pcurves on new edges, if thay were inserted
|
||||
//Fixing of missing pcurves on new edges, if they were inserted
|
||||
if (done)
|
||||
{
|
||||
if (myShape.IsNull()) return myShape;
|
||||
@@ -455,25 +455,25 @@ ShapeFix_FixSmallFace::ShapeFix_FixSmallFace()
|
||||
}
|
||||
}
|
||||
if (theFirstVer.IsNull() || theSecondVer.IsNull()) return theNewEdge;
|
||||
//Cretate new edge
|
||||
//Create new edge
|
||||
theBuilder.MakeEdge(theNewEdge);
|
||||
Standard_Real f, l, fp1, lp1/*, fp2, lp2*/;
|
||||
TopLoc_Location loc;
|
||||
Handle(Geom_Curve) the3dcurve;
|
||||
the3dcurve = BRep_Tool::Curve(E1, f, l);
|
||||
Handle(Geom2d_Curve) the2dcurve1, the2dcurve2, thenew1, thenew2;
|
||||
if (!F1.IsNull())
|
||||
if (!F1.IsNull())
|
||||
{
|
||||
the2dcurve1 = BRep_Tool::CurveOnSurface(E1, F1, fp1, lp1);
|
||||
if(!the2dcurve1.IsNull() && fp1!=f && lp1!=l) GeomLib::SameRange(Precision::Confusion(), the2dcurve1, fp1, lp1, f, l, thenew1);
|
||||
if(!the2dcurve1.IsNull() && fp1!=f && lp1!=l) GeomLib::SameRange(Precision::Confusion(), the2dcurve1, fp1, lp1, f, l, thenew1);
|
||||
}
|
||||
|
||||
/* if (!F2.IsNull())
|
||||
|
||||
/* if (!F2.IsNull())
|
||||
{
|
||||
the2dcurve2 = BRep_Tool::CurveOnSurface(E2, F2, fp2, lp2);
|
||||
if(!the2dcurve2.IsNull()) GeomLib::SameRange(Precision::Confusion(), the2dcurve2, fp2, lp2, f, l, thenew2);
|
||||
if(!the2dcurve2.IsNull()) GeomLib::SameRange(Precision::Confusion(), the2dcurve2, fp2, lp2, f, l, thenew2);
|
||||
}*/
|
||||
|
||||
|
||||
Standard_Real maxdev;
|
||||
if ((BRep_Tool::Tolerance(theFirstVer))<=(BRep_Tool::Tolerance(theSecondVer)))
|
||||
maxdev = (BRep_Tool::Tolerance(theSecondVer));
|
||||
|
@@ -209,7 +209,7 @@ Standard_Boolean ShapeFix_IntersectionTool::CutEdge(const TopoDS_Edge &edge,
|
||||
if(tc->BasisCurve()->IsKind(STANDARD_TYPE(Geom2d_Line))) {
|
||||
BRep_Builder B;
|
||||
B.Range(edge,Min(pend,cut),Max(pend,cut));
|
||||
if( Abs(pend-lp)<Precision::PConfusion() ) { // cut from the begining
|
||||
if( Abs(pend-lp)<Precision::PConfusion() ) { // cut from the beginning
|
||||
Standard_Real cut3d = (cut-fp)*(b-a)/(lp-fp);
|
||||
B.Range(edge, a+cut3d, b, Standard_True);
|
||||
iscutline = Standard_True;
|
||||
@@ -320,7 +320,7 @@ Standard_Boolean ShapeFix_IntersectionTool::SplitEdge1(const Handle(ShapeExtend_
|
||||
|
||||
//=======================================================================
|
||||
//function : SplitEdge2
|
||||
//purpose : auxilary: split edge[a,b] om two part e1[a,param1]
|
||||
//purpose : auxiliary: split edge[a,b] om two part e1[a,param1]
|
||||
// and e2[param2,b] using vertex vert
|
||||
// (remove segment (param1,param2) from edge)
|
||||
//=======================================================================
|
||||
@@ -716,7 +716,7 @@ Standard_Boolean ShapeFix_IntersectionTool::UnionVertexes(const Handle(ShapeExte
|
||||
|
||||
//=======================================================================
|
||||
//function : CreateBoxes2d
|
||||
//purpose : auxilary
|
||||
//purpose : auxiliary
|
||||
//=======================================================================
|
||||
static Bnd_Box2d CreateBoxes2d(const Handle(ShapeExtend_WireData)& sewd,
|
||||
const TopoDS_Face& face,
|
||||
@@ -754,7 +754,7 @@ static Bnd_Box2d CreateBoxes2d(const Handle(ShapeExtend_WireData)& sewd,
|
||||
|
||||
//=======================================================================
|
||||
//function : SelectIntPnt
|
||||
//purpose : auxilary
|
||||
//purpose : auxiliary
|
||||
//=======================================================================
|
||||
static void SelectIntPnt(const Geom2dInt_GInter& Inter,
|
||||
IntRes2d_IntersectionPoint& IP,
|
||||
@@ -785,7 +785,7 @@ static void SelectIntPnt(const Geom2dInt_GInter& Inter,
|
||||
|
||||
//=======================================================================
|
||||
//function : FindVertAndSplitEdge
|
||||
//purpose : auxilary
|
||||
//purpose : auxiliary
|
||||
//=======================================================================
|
||||
Standard_Boolean ShapeFix_IntersectionTool::FindVertAndSplitEdge
|
||||
(const Standard_Real param1,
|
||||
|
@@ -50,37 +50,37 @@ class ShapeFix_Shape : public ShapeFix_Root
|
||||
|
||||
public:
|
||||
|
||||
|
||||
|
||||
//! Empty Constructor
|
||||
Standard_EXPORT ShapeFix_Shape();
|
||||
|
||||
|
||||
//! Initislises by shape.
|
||||
Standard_EXPORT ShapeFix_Shape(const TopoDS_Shape& shape);
|
||||
|
||||
|
||||
//! Initislises by shape.
|
||||
Standard_EXPORT void Init (const TopoDS_Shape& shape);
|
||||
|
||||
|
||||
//! Iterates on sub- shape and performs fixes
|
||||
Standard_EXPORT Standard_Boolean Perform (const Message_ProgressRange& theProgress = Message_ProgressRange());
|
||||
|
||||
|
||||
//! Returns resulting shape
|
||||
Standard_EXPORT TopoDS_Shape Shape() const;
|
||||
|
||||
|
||||
//! Returns tool for fixing solids.
|
||||
Handle(ShapeFix_Solid) FixSolidTool() const;
|
||||
|
||||
|
||||
//! Returns tool for fixing shells.
|
||||
Handle(ShapeFix_Shell) FixShellTool() const;
|
||||
|
||||
|
||||
//! Returns tool for fixing faces.
|
||||
Handle(ShapeFix_Face) FixFaceTool() const;
|
||||
|
||||
|
||||
//! Returns tool for fixing wires.
|
||||
Handle(ShapeFix_Wire) FixWireTool() const;
|
||||
|
||||
|
||||
//! Returns tool for fixing edges.
|
||||
Handle(ShapeFix_Edge) FixEdgeTool() const;
|
||||
|
||||
|
||||
//! Returns the status of the last Fix.
|
||||
//! This can be a combination of the following flags:
|
||||
//! ShapeExtend_DONE1: some free edges were fixed
|
||||
@@ -90,43 +90,43 @@ public:
|
||||
//! ShapeExtend_DONE5: some free solids were fixed
|
||||
//! ShapeExtend_DONE6: shapes in compound(s) were fixed
|
||||
Standard_EXPORT Standard_Boolean Status (const ShapeExtend_Status status) const;
|
||||
|
||||
|
||||
//! Sets message registrator
|
||||
Standard_EXPORT virtual void SetMsgRegistrator (const Handle(ShapeExtend_BasicMsgRegistrator)& msgreg) Standard_OVERRIDE;
|
||||
|
||||
|
||||
//! Sets basic precision value (also to FixSolidTool)
|
||||
Standard_EXPORT virtual void SetPrecision (const Standard_Real preci) Standard_OVERRIDE;
|
||||
|
||||
|
||||
//! Sets minimal allowed tolerance (also to FixSolidTool)
|
||||
Standard_EXPORT virtual void SetMinTolerance (const Standard_Real mintol) Standard_OVERRIDE;
|
||||
|
||||
|
||||
//! Sets maximal allowed tolerance (also to FixSolidTool)
|
||||
Standard_EXPORT virtual void SetMaxTolerance (const Standard_Real maxtol) Standard_OVERRIDE;
|
||||
|
||||
|
||||
//! Returns (modifiable) the mode for applying fixes of
|
||||
//! ShapeFix_Solid, by default True.
|
||||
Standard_Integer& FixSolidMode();
|
||||
|
||||
|
||||
//! Returns (modifiable) the mode for applying fixes of
|
||||
//! ShapeFix_Shell, by default True.
|
||||
Standard_Integer& FixFreeShellMode();
|
||||
|
||||
|
||||
//! Returns (modifiable) the mode for applying fixes of
|
||||
//! ShapeFix_Face, by default True.
|
||||
Standard_Integer& FixFreeFaceMode();
|
||||
|
||||
|
||||
//! Returns (modifiable) the mode for applying fixes of
|
||||
//! ShapeFix_Wire, by default True.
|
||||
Standard_Integer& FixFreeWireMode();
|
||||
|
||||
|
||||
//! Returns (modifiable) the mode for applying
|
||||
//! ShapeFix::SameParameter after all fixes, by default True.
|
||||
Standard_Integer& FixSameParameterMode();
|
||||
|
||||
|
||||
//! Returns (modifiable) the mode for applying
|
||||
//! ShapeFix::FixVertexPosition before all fixes, by default False.
|
||||
Standard_Integer& FixVertexPositionMode();
|
||||
|
||||
|
||||
//! Returns (modifiable) the mode for fixing tolerances of vertices on whole shape
|
||||
//! after performing all fixes
|
||||
Standard_Integer& FixVertexTolMode();
|
||||
@@ -138,10 +138,10 @@ public:
|
||||
|
||||
protected:
|
||||
|
||||
|
||||
|
||||
//! Fixes same parameterization problem on the passed shape
|
||||
//! by updating tolerances of the corresponding topological
|
||||
//! entitites.
|
||||
//! entities.
|
||||
Standard_EXPORT void SameParameter (const TopoDS_Shape& shape, const Standard_Boolean enforce,
|
||||
const Message_ProgressRange& theProgress = Message_ProgressRange());
|
||||
|
||||
|
@@ -367,7 +367,7 @@ static Standard_Boolean AddMultiConexityFaces(TopTools_SequenceOfShape& Lface,
|
||||
}
|
||||
}
|
||||
|
||||
// Attemp to create shell from unconnected which have not only multiconnexity boundary.
|
||||
// Attempt to create shell from unconnected which have not only multiconnexity boundary.
|
||||
TopTools_SequenceOfShape aTmpShells;
|
||||
if(!llPosibleShells.IsEmpty()) {
|
||||
TopTools_MapOfShape aMap;
|
||||
@@ -390,7 +390,7 @@ static Standard_Boolean AddMultiConexityFaces(TopTools_SequenceOfShape& Lface,
|
||||
}
|
||||
}
|
||||
|
||||
//Add choosen faces to shells.
|
||||
//Add chosen faces to shells.
|
||||
for(Standard_Integer k1 =1; k1 <= AddShapes.Length(); k1++) {
|
||||
TopTools_DataMapOfShapeInteger MapOtherShells;
|
||||
TopTools_MapOfShape dire,reve;
|
||||
@@ -452,7 +452,7 @@ static Standard_Boolean AddMultiConexityFaces(TopTools_SequenceOfShape& Lface,
|
||||
continue;
|
||||
}
|
||||
|
||||
//Adds face to open shells containg the same multishared edges.
|
||||
//Adds face to open shells containing the same multishared edges.
|
||||
//For nonmanifold mode creation ine shell from face and shells containing the same multishared edges.
|
||||
// If one face can be added to a few shells (case of compsolid) face will be added to each shell.
|
||||
done = Standard_True;
|
||||
@@ -552,12 +552,11 @@ static void GetClosedShells(TopTools_SequenceOfShape& Shells, TopTools_SequenceO
|
||||
}
|
||||
//=======================================================================
|
||||
// function : GlueClosedCandidate
|
||||
// purpose :Attemt firstly to create closed shells from sequence of open shells.
|
||||
// purpose : First, attempt to create closed shells from sequence of open shells.
|
||||
//=======================================================================
|
||||
static void GlueClosedCandidate(TopTools_SequenceOfShape& OpenShells,
|
||||
const TopTools_MapOfShape& aMapMultiConnectEdges,
|
||||
TopTools_SequenceOfShape& aSeqNewShells)
|
||||
|
||||
{
|
||||
// Creating new shells if some open shells contain the same free boundary.
|
||||
for(Standard_Integer i = 1 ; i < OpenShells.Length();i++ ) {
|
||||
@@ -597,13 +596,12 @@ static void GlueClosedCandidate(TopTools_SequenceOfShape& OpenShells,
|
||||
isReversed = Standard_True;
|
||||
nbedge++;
|
||||
}
|
||||
|
||||
|
||||
if(!isAddShell) continue;
|
||||
MapOtherShells.Bind(OpenShells.Value(j),isReversed);
|
||||
}
|
||||
if(MapOtherShells.IsEmpty()) continue;
|
||||
|
||||
|
||||
|
||||
if (!MapOtherShells.IsEmpty())
|
||||
{
|
||||
// Case of compsolid when more than two shells have the same free boundary.
|
||||
@@ -615,8 +613,8 @@ static void GlueClosedCandidate(TopTools_SequenceOfShape& OpenShells,
|
||||
aSeqCandidate.Append(aIt.Key());
|
||||
}
|
||||
|
||||
//Creation all possibly shells from choosen candidate.And
|
||||
// addition of them to temporary sequence.
|
||||
//Creation of all possible shells from chosen candidate.
|
||||
// And the addition of them to temporary sequence.
|
||||
|
||||
TopTools_SequenceOfShape aTmpSeq;
|
||||
for(Standard_Integer k =1; k <= aSeqCandidate.Length(); k++) {
|
||||
@@ -638,7 +636,7 @@ static void GlueClosedCandidate(TopTools_SequenceOfShape& OpenShells,
|
||||
aTmpSeq.Append(aNewSh);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//Choice from temporary sequence shells contains different set of faces (case of compsolid)
|
||||
TopTools_SequenceOfShape aRemainShells;
|
||||
GetClosedShells(aTmpSeq,aRemainShells);
|
||||
@@ -796,9 +794,9 @@ static void CreateClosedShell(TopTools_SequenceOfShape& OpenShells,
|
||||
const TopTools_MapOfShape& aMapMultiConnectEdges)
|
||||
{
|
||||
TopTools_SequenceOfShape aNewShells;
|
||||
//Attemt firstly to create closed shells.
|
||||
//First, attempt to create closed shells.
|
||||
GlueClosedCandidate(OpenShells,aMapMultiConnectEdges,aNewShells);
|
||||
|
||||
|
||||
// Creating new shells if some open shells contain the multishared same edges.
|
||||
for(Standard_Integer i = 1 ; i < OpenShells.Length();i++ ) {
|
||||
Standard_Boolean isAddShell = Standard_False;
|
||||
@@ -827,32 +825,32 @@ static void CreateClosedShell(TopTools_SequenceOfShape& OpenShells,
|
||||
|| (edge2.Orientation() == TopAbs_REVERSED && reve.Contains(edge2)))
|
||||
isReversed = Standard_True;
|
||||
}
|
||||
|
||||
|
||||
if(!isAddShell) continue;
|
||||
BRep_Builder aB;
|
||||
|
||||
|
||||
for(TopExp_Explorer aExpF21(OpenShells.Value(j),TopAbs_FACE); aExpF21.More(); aExpF21.Next()) {
|
||||
TopoDS_Shape aFace = aExpF21.Current();
|
||||
if(isReversed)
|
||||
aFace.Reverse();
|
||||
aB.Add( aShell,aFace);
|
||||
}
|
||||
|
||||
|
||||
OpenShells.ChangeValue(i) = aShell;
|
||||
OpenShells.Remove(j--);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
OpenShells.Append(aNewShells);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
//=======================================================================
|
||||
// function : FixFaceOrientation
|
||||
// purpose :
|
||||
//=======================================================================
|
||||
|
||||
|
||||
Standard_Boolean ShapeFix_Shell::FixFaceOrientation(
|
||||
const TopoDS_Shell& shell,
|
||||
const Standard_Boolean isAccountMultiConex,
|
||||
|
@@ -61,7 +61,7 @@ public:
|
||||
|
||||
//! Fixes orientation of faces in shell.
|
||||
//! Changes orientation of face in the shell, if it is oriented opposite
|
||||
//! to neigbouring faces. If it is not possible to orient all faces in the
|
||||
//! to neighbouring faces. If it is not possible to orient all faces in the
|
||||
//! shell (like in case of mebious band), this method orients only subset
|
||||
//! of faces. Other faces are stored in Error compound.
|
||||
//! Modes :
|
||||
|
@@ -465,7 +465,7 @@ Standard_Boolean ShapeFix_Solid::Perform(const Message_ProgressRange& theProgres
|
||||
if(!aShell.IsNull()) {
|
||||
TopoDS_Solid aSol = SolidFromShell(aShell);
|
||||
if(ShapeExtend::DecodeStatus(myStatus,ShapeExtend_DONE2)) {
|
||||
SendWarning (Message_Msg ("FixAdvSolid.FixOrientation.MSG20"));// Orientaion of shell was corrected.
|
||||
SendWarning (Message_Msg ("FixAdvSolid.FixOrientation.MSG20"));// Orientation of shell was corrected.
|
||||
Context()->Replace(tmpShape,aSol);
|
||||
tmpShape = aSol;
|
||||
}
|
||||
@@ -485,7 +485,7 @@ Standard_Boolean ShapeFix_Solid::Perform(const Message_ProgressRange& theProgres
|
||||
TopTools_SequenceOfShape aSeqShells;
|
||||
TopTools_IndexedMapOfShape aMapSolids;
|
||||
if(CreateSolids(aResShape,aMapSolids)) {
|
||||
SendWarning (Message_Msg ("FixAdvSolid.FixOrientation.MSG20"));// Orientaion of shell was corrected..
|
||||
SendWarning (Message_Msg ("FixAdvSolid.FixOrientation.MSG20"));// Orientation of shell was corrected..
|
||||
if(aMapSolids.Extent() ==1) {
|
||||
TopoDS_Shape aResSol = aMapSolids.FindKey(1);
|
||||
if(aResShape.ShapeType() == TopAbs_SHELL && myCreateOpenSolidMode) {
|
||||
|
@@ -217,7 +217,7 @@ Standard_Boolean ShapeFix_SplitTool::CutEdge(const TopoDS_Edge &edge,
|
||||
if(tc->BasisCurve()->IsKind(STANDARD_TYPE(Geom2d_Line))) {
|
||||
BRep_Builder B;
|
||||
B.Range(edge,Min(pend,cut),Max(pend,cut));
|
||||
if( Abs(pend-lp)<Precision::PConfusion() ) { // cut from the begining
|
||||
if( Abs(pend-lp)<Precision::PConfusion() ) { // cut from the beginning
|
||||
Standard_Real cut3d = (cut-fp)*(b-a)/(lp-fp);
|
||||
if(cut3d <= Precision::PConfusion())
|
||||
return Standard_False;
|
||||
|
@@ -607,7 +607,7 @@ Standard_Boolean ShapeFix_Wire::FixEdgeCurves()
|
||||
}
|
||||
if ( seq.Length() >0 ) { // supposed that edge is SP
|
||||
#ifdef OCCT_DEBUG
|
||||
std::cout << "Edge going over singularity detected; splitted" << std::endl;
|
||||
std::cout << "Edge going over singularity detected; split" << std::endl;
|
||||
#endif
|
||||
Standard_Boolean isFwd = ( E.Orientation() == TopAbs_FORWARD );
|
||||
E.Orientation ( TopAbs_FORWARD );
|
||||
@@ -1024,7 +1024,7 @@ Standard_Boolean ShapeFix_Wire::FixSelfIntersection()
|
||||
boxes(i) = box;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Standard_Boolean isFail = Standard_False, isDone = Standard_False;
|
||||
for(Standard_Integer num1 = 1; num1 < nb-1; num1++) {
|
||||
Standard_Integer fin = (num1 == 1 ? nb-1 : nb);
|
||||
@@ -1035,15 +1035,15 @@ Standard_Boolean ShapeFix_Wire::FixSelfIntersection()
|
||||
isDone |= LastFixStatus ( ShapeExtend_DONE1 );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if(isFail)
|
||||
myStatusSelfIntersection |= ShapeExtend::EncodeStatus ( ShapeExtend_FAIL3 );
|
||||
if(isDone)
|
||||
myStatusSelfIntersection |= ShapeExtend::EncodeStatus ( ShapeExtend_DONE5 );
|
||||
#ifdef OCCT_DEBUG
|
||||
if (StatusSelfIntersection (ShapeExtend_DONE5))
|
||||
std::cout << "Warning: ShapeFix_Wire::FixSelfIntersection: Non ajacent intersection fixed" << std::endl;
|
||||
#endif
|
||||
std::cout << "Warning: ShapeFix_Wire::FixSelfIntersection: Non adjacent intersection fixed" << std::endl;
|
||||
#endif
|
||||
*/
|
||||
}
|
||||
|
||||
@@ -2354,7 +2354,7 @@ Standard_Boolean ShapeFix_Wire::FixSelfIntersectingEdge (const Standard_Integer
|
||||
|
||||
//=======================================================================
|
||||
//function : ComputeLocalDeviation
|
||||
//purpose : auxilary
|
||||
//purpose : auxiliary
|
||||
//=======================================================================
|
||||
static Standard_Real ComputeLocalDeviation (const TopoDS_Edge &edge,
|
||||
const gp_Pnt &pint,const gp_Pnt &pnt,
|
||||
@@ -2657,7 +2657,7 @@ Standard_Boolean ShapeFix_Wire::FixIntersectingEdges (const Standard_Integer num
|
||||
//function : FixIntersectingEdges
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
//pdn 17.03.99 fixing non ajacent intersection by increasing tolerance of vertex
|
||||
//pdn 17.03.99 fixing non adjacent intersection by increasing tolerance of vertex
|
||||
|
||||
Standard_Boolean ShapeFix_Wire::FixIntersectingEdges (const Standard_Integer num1,
|
||||
const Standard_Integer num2)
|
||||
|
@@ -62,7 +62,7 @@ DEFINE_STANDARD_HANDLE(ShapeFix_Wire, ShapeFix_Root)
|
||||
//! curve to vertices, or recomputing curves of the edge)
|
||||
//!
|
||||
//! When fix can be made in more than one way (e.g., either
|
||||
//! by increasing tolerance or shifting a vertex), it is choosen
|
||||
//! by increasing tolerance or shifting a vertex), it is chosen
|
||||
//! according to the flags:
|
||||
//! ModifyTopologyMode - allows modification of the topology.
|
||||
//! This flag can be set when fixing a wire on
|
||||
@@ -338,12 +338,12 @@ public:
|
||||
//! - what is smaller), it should be removed
|
||||
//! It can be with no problem if its two vertices are the same
|
||||
//! Else, if lockvtx is False, it is removed and its end vertex
|
||||
//! is put on the preceeding edge
|
||||
//! is put on the preceding edge
|
||||
//! But if lockvtx is True, this edge must be kept ...
|
||||
Standard_EXPORT Standard_Boolean FixSmall (const Standard_Integer num, const Standard_Boolean lockvtx, const Standard_Real precsmall);
|
||||
|
||||
//! Fixes connected edges (preceeding and current)
|
||||
//! Forces Vertices (end of preceeding-begin of current) to be
|
||||
//! Fixes connected edges (preceding and current)
|
||||
//! Forces Vertices (end of preceding-begin of current) to be
|
||||
//! the same one
|
||||
//! Tests with starting preci or, if given greater, <prec>
|
||||
//! If <prec> is -1 then MaxTolerance() is taken.
|
||||
@@ -430,7 +430,7 @@ public:
|
||||
|
||||
Standard_Boolean StatusNotches (const ShapeExtend_Status status) const;
|
||||
|
||||
//! Querying the status of perfomed API fixing procedures
|
||||
//! Querying the status of performed API fixing procedures
|
||||
//! Each Status..() methods gives information about the last call to
|
||||
//! the corresponding Fix..() method of API level:
|
||||
//! OK : no problems detected; nothing done
|
||||
|
@@ -293,7 +293,7 @@ static Standard_Real AdjustOnPeriodic3d (const Handle(Geom_Curve)& c,
|
||||
|
||||
if (convert)
|
||||
{
|
||||
// Check that gap satisfies the precision - in this case no convertation produced
|
||||
// Check that gap satisfies the precision - in this case no conversion produced
|
||||
if (cpnt1.Distance(vpnt) < preci && cpnt2.Distance(vpnt) < preci)
|
||||
return Standard_False;
|
||||
|
||||
@@ -499,7 +499,7 @@ static Standard_Real AdjustOnPeriodic3d (const Handle(Geom_Curve)& c,
|
||||
u2 = Proj.Parameter(index);
|
||||
}
|
||||
}
|
||||
// Ajust parameters on periodic curves
|
||||
// Adjust parameters on periodic curves
|
||||
u1 = AdjustOnPeriodic3d(c1,reversed1,first1,last1,u1);
|
||||
u2 = AdjustOnPeriodic3d(c2,!reversed2,first2,last2,u2);
|
||||
// Check points to satisfy distance criterium
|
||||
@@ -549,7 +549,7 @@ static Standard_Real AdjustOnPeriodic3d (const Handle(Geom_Curve)& c,
|
||||
for (Standard_Integer i=1; i<=Extr.NbExtrema(); i++)
|
||||
{
|
||||
Extr.Parameters(i,uu1,uu2);
|
||||
// Ajust parameters on periodic curves
|
||||
// Adjust parameters on periodic curves
|
||||
uu1 = AdjustOnPeriodic3d(c1,reversed1,first1,last1,uu1);
|
||||
uu2 = AdjustOnPeriodic3d(c2,!reversed2,first2,last2,uu2);
|
||||
pp1 = c1->Value(uu1); pp2 = c2->Value(uu2);
|
||||
@@ -582,7 +582,7 @@ static Standard_Real AdjustOnPeriodic3d (const Handle(Geom_Curve)& c,
|
||||
Extr.Parameters(index1,uu1,uu2);
|
||||
}
|
||||
else Extr.LowerDistanceParameters(uu1,uu2);
|
||||
// Ajust parameters on periodic curves
|
||||
// Adjust parameters on periodic curves
|
||||
uu1 = AdjustOnPeriodic3d(c1,reversed1,first1,last1,uu1);
|
||||
uu2 = AdjustOnPeriodic3d(c2,!reversed2,first2,last2,uu2);
|
||||
// Check points to satisfy distance criterium
|
||||
@@ -602,7 +602,7 @@ static Standard_Real AdjustOnPeriodic3d (const Handle(Geom_Curve)& c,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
try
|
||||
{
|
||||
OCC_CATCH_SIGNALS
|
||||
@@ -648,7 +648,7 @@ static Standard_Real AdjustOnPeriodic3d (const Handle(Geom_Curve)& c,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (done1 || done2)
|
||||
{
|
||||
|
||||
@@ -701,7 +701,7 @@ static Standard_Real AdjustOnPeriodic3d (const Handle(Geom_Curve)& c,
|
||||
Context()->Replace(aOldV,anewV);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Context()->Replace(E1,newE1);
|
||||
sbwd->Set(newE1,n1);
|
||||
}
|
||||
@@ -717,7 +717,7 @@ static Standard_Real AdjustOnPeriodic3d (const Handle(Geom_Curve)& c,
|
||||
SFST.SetTolerance(newE2,::Precision::Confusion(),TopAbs_EDGE);
|
||||
B.SameRange(newE2,Standard_False);
|
||||
// B.SameParameter(newE2,Standard_False);
|
||||
|
||||
|
||||
//To keep NM vertices belonging initial edges
|
||||
TopoDS_Iterator aItv(E2,Standard_False);
|
||||
for( ; aItv.More(); aItv.Next()) {
|
||||
@@ -744,7 +744,7 @@ static Standard_Real AdjustOnPeriodic3d (const Handle(Geom_Curve)& c,
|
||||
|
||||
//=======================================================================
|
||||
//function : FixGap2d
|
||||
//purpose :
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
|
||||
static Standard_Real AdjustOnPeriodic2d (const Handle(Geom2d_Curve)& pc,
|
||||
@@ -819,19 +819,19 @@ static Standard_Real AdjustOnPeriodic2d (const Handle(Geom2d_Curve)& pc,
|
||||
Standard_Real first1, last1, first2, last2;
|
||||
if (reversed1)
|
||||
{
|
||||
first1 = clast1; last1 = cfirst1;
|
||||
first1 = clast1; last1 = cfirst1;
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
first1 = cfirst1; last1 = clast1;
|
||||
first1 = cfirst1; last1 = clast1;
|
||||
}
|
||||
if (reversed2)
|
||||
if (reversed2)
|
||||
{
|
||||
first2 = clast2; last2 = cfirst2;
|
||||
first2 = clast2; last2 = cfirst2;
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
first2 = cfirst2; last2 = clast2;
|
||||
first2 = cfirst2; last2 = clast2;
|
||||
}
|
||||
|
||||
Handle(Geom2d_Curve) pc1 = PC1, pc2 = PC2;
|
||||
@@ -840,14 +840,14 @@ static Standard_Real AdjustOnPeriodic2d (const Handle(Geom2d_Curve)& pc,
|
||||
Standard_Boolean basic = Standard_False;
|
||||
Standard_Boolean trimmed1 = Standard_False, offset1 = Standard_False;
|
||||
Standard_Real offval1 = 0.;
|
||||
while (!basic)
|
||||
while (!basic)
|
||||
{
|
||||
if (pc1->IsKind(STANDARD_TYPE(Geom2d_TrimmedCurve)))
|
||||
if (pc1->IsKind(STANDARD_TYPE(Geom2d_TrimmedCurve)))
|
||||
{
|
||||
pc1 = Handle(Geom2d_TrimmedCurve)::DownCast(pc1)->BasisCurve();
|
||||
trimmed1 = Standard_True;
|
||||
}
|
||||
else if (pc1->IsKind(STANDARD_TYPE(Geom2d_OffsetCurve)))
|
||||
else if (pc1->IsKind(STANDARD_TYPE(Geom2d_OffsetCurve)))
|
||||
{
|
||||
Handle(Geom2d_OffsetCurve) oc = Handle(Geom2d_OffsetCurve)::DownCast(pc1);
|
||||
pc1 = oc->BasisCurve();
|
||||
@@ -1150,7 +1150,7 @@ static Standard_Real AdjustOnPeriodic2d (const Handle(Geom2d_Curve)& pc,
|
||||
if (flag1==1) IP = IS.FirstPoint();
|
||||
else IP = IS.LastPoint();
|
||||
}
|
||||
// Ajust parameters on periodic curves
|
||||
// Adjust parameters on periodic curves
|
||||
Standard_Real u1 = AdjustOnPeriodic2d(pc1,reversed1,first1,last1,
|
||||
IP.ParamOnFirst());
|
||||
Standard_Real u2 = AdjustOnPeriodic2d(pc2,!reversed2,first2,last2,
|
||||
@@ -1177,7 +1177,7 @@ static Standard_Real AdjustOnPeriodic2d (const Handle(Geom2d_Curve)& pc,
|
||||
{
|
||||
Standard_Real u1, u2;
|
||||
Extr.LowerDistanceParameters(u1,u2);
|
||||
// Ajust parameters on periodic curves
|
||||
// Adjust parameters on periodic curves
|
||||
u1 = AdjustOnPeriodic2d(pc1,reversed1,first1,last1,u1);
|
||||
u2 = AdjustOnPeriodic2d(pc2,!reversed2,first2,last2,u2);
|
||||
// Check points to satisfy distance criterium
|
||||
@@ -1232,7 +1232,7 @@ static Standard_Real AdjustOnPeriodic2d (const Handle(Geom2d_Curve)& pc,
|
||||
u2 = Proj.Parameter(index);
|
||||
}
|
||||
}
|
||||
// Ajust parameters on periodic curves
|
||||
// Adjust parameters on periodic curves
|
||||
u1 = AdjustOnPeriodic2d(pc1,reversed1,first1,last1,u1);
|
||||
u2 = AdjustOnPeriodic2d(pc2,!reversed2,first2,last2,u2);
|
||||
// Process special case of projection
|
||||
@@ -1283,7 +1283,7 @@ static Standard_Real AdjustOnPeriodic2d (const Handle(Geom2d_Curve)& pc,
|
||||
if (cpnt1.Distance(ipnt2)<cpnt2.Distance(ipnt1)) u1 = ipar1;
|
||||
else u2 = ipar2;
|
||||
}
|
||||
// Ajust parameters on periodic curves
|
||||
// Adjust parameters on periodic curves
|
||||
u1 = AdjustOnPeriodic2d(pc1,reversed1,first1,last1,u1);
|
||||
u2 = AdjustOnPeriodic2d(pc2,!reversed2,first2,last2,u2);
|
||||
// Check points to satisfy distance criterium
|
||||
@@ -1458,7 +1458,7 @@ static Standard_Real AdjustOnPeriodic2d (const Handle(Geom2d_Curve)& pc,
|
||||
if (flag==1) IP = IS.FirstPoint();
|
||||
else IP = IS.LastPoint();
|
||||
}
|
||||
// Ajust parameters on periodic curve
|
||||
// Adjust parameters on periodic curve
|
||||
uu = AdjustOnPeriodic2d(pc,(j==1? reversed1 : !reversed2),
|
||||
fpar,lpar,IP.ParamOnSecond());
|
||||
if (j==1 && Abs(cfirst1-uu) > ::Precision::PConfusion())
|
||||
|
@@ -541,10 +541,10 @@ Standard_Boolean ShapeFix_Wireframe::CheckSmallEdges(TopTools_MapOfShape& theSma
|
||||
if (theEdgeList.Extent()) theFaceWithSmall.Bind(facet,theEdgeList);
|
||||
}
|
||||
|
||||
//========================================================================
|
||||
// Author : enk
|
||||
// Purpose: Analizing of shape for small edges , if edge don't lie on face
|
||||
//========================================================================
|
||||
//=========================================================================
|
||||
// Author : enk
|
||||
// Purpose: Analyzing of shape for small edges, if edge doesn't lie on face
|
||||
//=========================================================================
|
||||
for (TopExp_Explorer expw1(myShape,TopAbs_WIRE,TopAbs_FACE); expw1.More(); expw1.Next())
|
||||
{
|
||||
SAW.SetPrecision(Precision());
|
||||
@@ -1021,7 +1021,7 @@ Standard_Boolean ShapeFix_Wireframe::MergeSmallEdges(TopTools_MapOfShape& theSma
|
||||
}
|
||||
else
|
||||
{
|
||||
//gka protection aginst removing circles
|
||||
//gka protection against removing circles
|
||||
TopoDS_Edge ed = (take_next ? edge1 : edge2);
|
||||
ShapeAnalysis_Edge sae;
|
||||
Handle(Geom_Curve) c3d;
|
||||
@@ -1469,7 +1469,7 @@ Standard_Boolean ShapeFix_Wireframe::MergeSmallEdges(TopTools_MapOfShape& theSma
|
||||
}
|
||||
else
|
||||
{
|
||||
//gka protection aginst removing circles
|
||||
//gka protection against removing circles
|
||||
TopoDS_Edge ed = (take_next ? edge1 : edge2);
|
||||
ShapeAnalysis_Edge sae;
|
||||
Handle(Geom_Curve) c3d;
|
||||
|
Reference in New Issue
Block a user