//================================================================
void GEOMBase_Helper::addSubshapesToStudy()
{
- //Impemented in Dialogs, called from Accept method
+ //Implemented in Dialogs, called from Accept method
}
//================================================================
//================================================================
QList<GEOM::GeomObjPtr> GEOMBase_Helper::getSourceObjects()
{
- //Impemented in Dialogs, called from Accept method
+ //Implemented in Dialogs, called from Accept method
QList<GEOM::GeomObjPtr> res;
return res;
}
* GetShape()
*/
//=============================================================================
-
+
TopoDS_Shape GetShape(const Handle(Standard_Transient) &theEnti,
const Handle(Transfer_TransientProcess) &theTP)
{
TopoDS_Shape aResult;
Handle(Transfer_Binder) aBinder = theTP->Find(theEnti);
-
+
if (aBinder.IsNull()) {
return aResult;
}
-
+
aResult = TransferBRep::ShapeResult(aBinder);
-
+
return aResult;
}
-
+
//=============================================================================
/*!
* GetLabel()
*/
//=============================================================================
-
+
TDF_Label GetLabel(const Handle(Standard_Transient) &theEnti,
const TDF_Label &theShapeLabel,
const TopoDS_Shape &aShape)
{
TDF_Label aResult;
-
+
if (theEnti->IsKind
(STANDARD_TYPE(StepGeom_GeometricRepresentationItem))) {
// check all named shapes using iterator
TDF_ChildIDIterator anIt
(theShapeLabel, TDataStd_Name::GetID(), Standard_True);
-
+
for (; anIt.More(); anIt.Next()) {
Handle(TDataStd_Name) nameAttr =
Handle(TDataStd_Name)::DownCast(anIt.Value());
-
+
if (nameAttr.IsNull()) {
continue;
}
-
+
TDF_Label aLab = nameAttr->Label();
Handle(TNaming_NamedShape) shAttr;
-
+
if (aLab.FindAttribute(TNaming_NamedShape::GetID(), shAttr) &&
shAttr->Get().IsEqual(aShape)) {
aResult = aLab;
}
}
}
-
+
// create label and set shape
if (aResult.IsNull()) {
TDF_TagSource aTag;
-
+
aResult = aTag.NewChild(theShapeLabel);
-
+
TNaming_Builder tnBuild (aResult);
-
+
tnBuild.Generated(aShape);
}
-
+
return aResult;
}
}
}
- // Set the result shape orienation.
+ // Set the result shape orientation.
aResult.Orientation(theShape.Orientation());
theMapModified.Bind(theShape, aResult);
} else {
* StoreName()
*/
//=============================================================================
-
+
void StoreName(const Handle(Standard_Transient) &theEnti,
const TopTools_IndexedMapOfShape &theIndices,
const Handle(XSControl_WorkSession) &theWS,
TopTools_DataMapOfShapeShape &theMapShapeAssembly)
{
Handle(TCollection_HAsciiString) aName;
-
+
if (theEnti->IsKind(STANDARD_TYPE(StepShape_TopologicalRepresentationItem)) ||
theEnti->IsKind(STANDARD_TYPE(StepGeom_GeometricRepresentationItem))) {
aName = Handle(StepRepr_RepresentationItem)::DownCast(theEnti)->Name();
} else if (theEnti->IsKind(STANDARD_TYPE(StepRepr_NextAssemblyUsageOccurrence))) {
- Handle(StepRepr_NextAssemblyUsageOccurrence) aNAUO =
+ Handle(StepRepr_NextAssemblyUsageOccurrence) aNAUO =
Handle(StepRepr_NextAssemblyUsageOccurrence)::DownCast(theEnti);
Interface_EntityIterator aSubs = theWS->Graph().Sharings(aNAUO);
for (aSubs.Start(); aSubs.More(); aSubs.Next()) {
- Handle(StepRepr_ProductDefinitionShape) aPDS =
+ Handle(StepRepr_ProductDefinitionShape) aPDS =
Handle(StepRepr_ProductDefinitionShape)::DownCast(aSubs.Value());
if(aPDS.IsNull()) {
} else {
Handle(StepBasic_ProductDefinition) PD =
Handle(StepBasic_ProductDefinition)::DownCast(theEnti);
-
+
if (PD.IsNull() == Standard_False) {
Handle(StepBasic_Product) Prod = PD->Formation()->OfProduct();
aName = Prod->Name();
}
}
-
+
bool isValidName = false;
if (aName.IsNull() == Standard_False) {
result = "M";
else
error = "The file contains not supported units";
-
+
// TODO (for other units)
// else
// result = "??"
Standard_EXPORT ShHealOper_FillHoles ();
// Empty constructor initializes class by default parameters.
-
+
Standard_EXPORT ShHealOper_FillHoles (const TopoDS_Shape& theShape);
Standard_EXPORT virtual void Init(const TopoDS_Shape& theShape);
//Method for initialization by whole shape.
-
+
Standard_EXPORT void InitParameters(Standard_Integer theDegree = 3,//3(2)
Standard_Integer theNbPtsOnCur =5,//3,
Standard_Integer theNbIter = 12,//3
//Initialization of the parameters for creation of the surface by GeomPlate.
Standard_EXPORT Standard_Boolean Fill();
- //Fill all holes detectected as free boundaries.
-
+ //Fill all holes detected as free boundaries.
+
Standard_EXPORT Standard_Boolean Fill(const TopTools_SequenceOfShape& theFillShapes);
//Fill hole specified by wires or edges.
private:
// ---------- PRIVATE METHODS ----------
-
+
Standard_Boolean prepareWires(const TopTools_SequenceOfShape& theFillShapes,
Handle(TopTools_HSequenceOfShape)& theSeqWires);
Handle(TColGeom2d_HArray1OfCurve)& theCurves2d,
Handle(TColStd_HArray1OfInteger)& theOrders,
Handle(TColStd_HArray1OfInteger)& theSenses);
-
+
Standard_Boolean addFace(const Handle(Geom_Surface)& theSurf,
const TopoDS_Wire& theWire,
const Handle(TColGeom2d_HArray1OfCurve)& theCurves2d,
// ---------- PRIVATE FIELDS ----------
TopTools_IndexedDataMapOfShapeListOfShape myEdgeShells;
-
+
TopTools_IndexedDataMapOfShapeListOfShape myEdgeComps;
TopTools_IndexedDataMapOfShapeListOfShape myEdgeFaces;
Standard_Integer myNbPtsOnCur;