Model_ResultConstruction::Model_ResultConstruction()
{
myIsInHistory = true;
+ myIsInfinite = false;
myFacesUpToDate = false;
- setIsConcealed(false);
}
void Model_ResultConstruction::setIsInHistory(const bool isInHistory)
if (!myFacesUpToDate) {
std::shared_ptr<GeomAPI_PlanarEdges> aWirePtr =
std::dynamic_pointer_cast<GeomAPI_PlanarEdges>(myShape);
- std::list<std::shared_ptr<GeomAPI_Shape> > aFaces;
- GeomAlgoAPI_SketchBuilder::createFaces(aWirePtr->origin(), aWirePtr->dirX(),
- aWirePtr->dirY(), aWirePtr->norm(), aWirePtr, aFaces);
- std::list<std::shared_ptr<GeomAPI_Shape> >::iterator aFIter = aFaces.begin();
- for(; aFIter != aFaces.end(); aFIter++) {
- std::shared_ptr<GeomAPI_Face> aFace(new GeomAPI_Face(*aFIter));
- if (aFace.get())
- myFaces.push_back(aFace);
+ if (aWirePtr.get()) {
+ std::list<std::shared_ptr<GeomAPI_Shape> > aFaces;
+ GeomAlgoAPI_SketchBuilder::createFaces(aWirePtr->origin(), aWirePtr->dirX(),
+ aWirePtr->norm(), aWirePtr, aFaces);
+ std::list<std::shared_ptr<GeomAPI_Shape> >::iterator aFIter = aFaces.begin();
+ for(; aFIter != aFaces.end(); aFIter++) {
+ std::shared_ptr<GeomAPI_Face> aFace(new GeomAPI_Face(*aFIter));
+ if (aFace.get() && !aFace->isNull())
+ myFaces.push_back(aFace);
+ }
}
myFacesUpToDate = true;
}
{
return myFaces[theIndex];
}
+
+bool Model_ResultConstruction::isInfinite()
+{
+ return myIsInfinite;
+}
+
+void Model_ResultConstruction::setInfinite(const bool theInfinite)
+{
+ myIsInfinite = theInfinite;
+}