X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FGeomAPI%2FGeomAPI_PlanarEdges.cpp;h=53470fb5e55d09aa3c21ee1fc2baa012a0f3b625;hb=647f62a71de86575a6c5ac73c61371d336c8da75;hp=f12d62204838cccd8a44cbbdcb1e2107a79771c7;hpb=4fcd5da2d972334e887716499b0ea75d9d6c51c2;p=modules%2Fshaper.git diff --git a/src/GeomAPI/GeomAPI_PlanarEdges.cpp b/src/GeomAPI/GeomAPI_PlanarEdges.cpp index f12d62204..53470fb5e 100644 --- a/src/GeomAPI/GeomAPI_PlanarEdges.cpp +++ b/src/GeomAPI/GeomAPI_PlanarEdges.cpp @@ -1,3 +1,5 @@ +// Copyright (C) 2014-20xx CEA/DEN, EDF R&D + // File: GeomAPI_PlanarEdges.cpp // Created: 06 Oct 2014 // Author: Sergey BELASH @@ -25,7 +27,7 @@ GeomAPI_PlanarEdges::GeomAPI_PlanarEdges() : GeomAPI_Shape() this->setImpl(new TopoDS_Shape(aBigWireImpl)); } -void GeomAPI_PlanarEdges::addEdge(boost::shared_ptr theEdge) +void GeomAPI_PlanarEdges::addEdge(std::shared_ptr theEdge) { const TopoDS_Edge& anEdge = theEdge->impl(); if (anEdge.ShapeType() != TopAbs_EDGE) @@ -35,16 +37,54 @@ void GeomAPI_PlanarEdges::addEdge(boost::shared_ptr theEdge) aBuilder.Add(aWire, anEdge); } -std::list > GeomAPI_PlanarEdges::getEdges() +std::list > GeomAPI_PlanarEdges::getEdges() { TopoDS_Shape& aShape = const_cast(impl()); //BRepTools_WireExplorer aWireExp(TopoDS::Wire(aShape)); TopExp_Explorer aWireExp(aShape, TopAbs_EDGE); - std::list > aResult; + std::list > aResult; for (; aWireExp.More(); aWireExp.Next()) { - boost::shared_ptr anEdge(new GeomAPI_Shape); + std::shared_ptr anEdge(new GeomAPI_Shape); anEdge->setImpl(new TopoDS_Shape(aWireExp.Current())); aResult.push_back(anEdge); } return aResult; } + +bool GeomAPI_PlanarEdges::hasPlane() const { + return myOrigin && myNorm && myDirX && myDirY; +} + +bool GeomAPI_PlanarEdges::isVertex() const { + return false; +} + +bool GeomAPI_PlanarEdges::isEdge() const { + return false; +} + +void GeomAPI_PlanarEdges::setOrigin(const std::shared_ptr& theOrigin) +{ + myOrigin = theOrigin; +} +std::shared_ptr GeomAPI_PlanarEdges::origin() const { + return myOrigin; +} +void GeomAPI_PlanarEdges::setDirX(const std::shared_ptr& theDirX) { + myDirX = theDirX; +} +std::shared_ptr GeomAPI_PlanarEdges::dirX() const { + return myDirX; +} +void GeomAPI_PlanarEdges::setDirY(const std::shared_ptr& theDirY) { + myDirY = theDirY; +} +std::shared_ptr GeomAPI_PlanarEdges::dirY() const { + return myDirY; +} +void GeomAPI_PlanarEdges::setNorm(const std::shared_ptr& theNorm) { + myNorm = theNorm; +} +std::shared_ptr GeomAPI_PlanarEdges::norm() const { + return myNorm; +}