#include <Interface_Macros.hxx>
#include <Interface_Static.hxx>
#include <Message_Msg.hxx>
-#include <ShapeBuild_ReShape.hxx>
#include <Standard_Transient.hxx>
#include <Standard_Type.hxx>
#include <TCollection_HAsciiString.hxx>
IGESData_IGESModel::IGESData_IGESModel ()
{
thestart = new TColStd_HSequenceOfHAsciiString();
- myReShape = new ShapeBuild_ReShape();
// thecheckstx = new Interface_Check;
// thechecksem = new Interface_Check;
}
IGESData_GlobalSection newheader; // Un peu brutal, certes
theheader = newheader;
thestart = new TColStd_HSequenceOfHAsciiString();
- myReShape = new ShapeBuild_ReShape();
}
class IGESData_IGESEntity;
class Interface_Check;
-class ShapeBuild_ReShape;
class Standard_Transient;
class TCollection_HAsciiString;
//! i.e. a string "Dnn" with nn = directory entry number (2*N-1)
Standard_EXPORT Handle(TCollection_HAsciiString) StringLabel (const Handle(Standard_Transient)& ent) const Standard_OVERRIDE;
- //! Gets ReShape used to store a model's shapes changes
- const Handle(ShapeBuild_ReShape)& ReShape() const { return myReShape; }
-
- //! Sets ReShape used to store a history of changes of the model's shapes
- void SetReShape(const Handle(ShapeBuild_ReShape)& theReShape) { myReShape = theReShape; }
-
DEFINE_STANDARD_RTTIEXT(IGESData_IGESModel,Interface_InterfaceModel)
protected:
Handle(TColStd_HSequenceOfHAsciiString) thestart;
IGESData_GlobalSection theheader;
- Handle(ShapeBuild_ReShape) myReShape;
};
shape = XSAlgo::AlgoContainer()->ProcessShape(shape, theeps, CAS.GetMaxTol(),
"read.iges.resource.name",
"read.iges.sequence",
- info, mymodel->ReShape(),
- aPS.Next(), false, TopAbs_EDGE);
+ info, aPS.Next(),
+ false, TopAbs_EDGE);
XSAlgo::AlgoContainer()->MergeTransferInfo(TP, info, nbTPitems);
}
const Standard_CString thePrscfile,
const Standard_CString thePseq,
Handle(Standard_Transient)& theInfo,
- const Handle(ShapeBuild_ReShape)& theReShape,
const Message_ProgressRange& theProgress,
const Standard_Boolean theNonManifold,
- const TopAbs_ShapeEnum theDetalisationLevel) const
+ const TopAbs_ShapeEnum theDetailingLevel) const
{
if (theShape.IsNull())
{
// If resource file wasn't found, use static values instead
Interface_Static::FillMap(aContext->ResourceManager()->GetMap());
}
- aContext->SetDetalisation(theDetalisationLevel);
+ aContext->SetDetalisation(theDetailingLevel);
}
aContext->SetNonManifold(theNonManifold);
theInfo = aContext;
aSfs->SetMaxTolerance(theMaxTol);
aSfs->FixFaceTool()->FixWireTool()->FixSameParameterMode() = Standard_False;
aSfs->FixSolidTool()->CreateOpenSolidMode() = Standard_False;
- aSfs->SetContext(theReShape);
aSfs->Perform(theProgress);
TopoDS_Shape aShape = aSfs->Shape();
return aContext->Result();
}
-//=======================================================================
-//function : ProcessShape
-//purpose :
-//=======================================================================
-TopoDS_Shape XSAlgo_AlgoContainer::ProcessShape(const TopoDS_Shape& theShape,
- const Standard_Real thePrec,
- const Standard_Real theMaxTol,
- const Standard_CString thePrscfile,
- const Standard_CString thePseq,
- Handle(Standard_Transient)& theInfo,
- const Message_ProgressRange& theProgress,
- const Standard_Boolean theNonManifold,
- const TopAbs_ShapeEnum theDetalisationLevel) const
-{
- Handle(ShapeBuild_ReShape) aReShape = new ShapeBuild_ReShape();
- return ProcessShape(theShape, thePrec, theMaxTol, thePrscfile,
- thePseq, theInfo, aReShape, theProgress,
- theNonManifold, theDetalisationLevel);
-}
-
//=======================================================================
//function : PerformFixShape
//purpose :
#include <Standard_Transient.hxx>
#include <TopAbs_ShapeEnum.hxx>
-class ShapeBuild_ReShape;
class XSAlgo_ToolContainer;
class TopoDS_Shape;
class TopoDS_Edge;
//! @param[out] theInfo information to be recorded in the translation map
//! @param[in] theProgress progress indicator
//! @param[in] theNonManifold flag to proceed with non-manifold topology
+ //! @param[in] theDetailingLevel the lowest shape type to be processed, lower shapes are ignored
//! @return the processed shape
Standard_EXPORT virtual TopoDS_Shape ProcessShape (const TopoDS_Shape& theShape,
const Standard_Real thePrec,
Handle(Standard_Transient)& theInfo,
const Message_ProgressRange& theProgress = Message_ProgressRange(),
const Standard_Boolean theNonManifold = Standard_False,
- const TopAbs_ShapeEnum theDetalisationLevel = TopAbs_VERTEX) const;
+ const TopAbs_ShapeEnum theDetailingLevel = TopAbs_VERTEX) const;
- //! Does shape processing with specified tolerances
- //! @param[in] theShape shape to process
- //! @param[in] thePrec basic precision and tolerance
- //! @param[in] theMaxTol maximum allowed tolerance
- //! @param[in] thePrscfile name of the resource file
- //! @param[in] thePseq name of the sequence of operators defined in the resource file for Shape Processing
- //! @param[out] theInfo information to be recorded in the translation map
- //! @param[in] theReShape tool to record the modifications of input shape
- //! @param[in] theProgress progress indicator
- //! @param[in] theNonManifold flag to proceed with non-manifold topology
- //! @return the processed shape
- Standard_EXPORT virtual TopoDS_Shape ProcessShape(const TopoDS_Shape& theShape,
- const Standard_Real thePrec,
- const Standard_Real theMaxTol,
- const Standard_CString thePrscfile,
- const Standard_CString thePseq,
- Handle(Standard_Transient)& theInfo,
- const Handle(ShapeBuild_ReShape)& theReShape,
- const Message_ProgressRange& theProgress = Message_ProgressRange(),
- const Standard_Boolean theNonManifold = Standard_False,
- const TopAbs_ShapeEnum theDetalisationLevel = TopAbs_VERTEX) const;
-
//! Checks quality of pcurve of the edge on the given face,
//! and corrects it if necessary.
Standard_EXPORT virtual Standard_Boolean CheckPCurve (const TopoDS_Edge& edge, const TopoDS_Face& face, const Standard_Real preci, const Standard_Boolean isSeam) const;
-puts "TODO OCC23638 ALL: Faulty shapes in variables faulty_1 to faulty_1"
+puts "TODO OCC23638 ALL: Faulty shapes in variables faulty_1 to faulty_"
puts "============"
puts "CR23638"
# Reading IGES file produced invalid shape
#######################################################################
+param read.surfacecurve.mode -3
+
igesread [locate_data_file bug23638_cadbad.igs] result *
checkshape result