X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FGeomAPI%2FGeomAPI_PlanarEdges.cpp;h=619716256d1b81865122b9a0122b880216a5c1b8;hb=ce9008bdda3fa14d6fa6c61360541249ccf43ce0;hp=53470fb5e55d09aa3c21ee1fc2baa012a0f3b625;hpb=f1cd93fd02a54259f72e3191d037323a496b2bef;p=modules%2Fshaper.git diff --git a/src/GeomAPI/GeomAPI_PlanarEdges.cpp b/src/GeomAPI/GeomAPI_PlanarEdges.cpp index 53470fb5e..619716256 100644 --- a/src/GeomAPI/GeomAPI_PlanarEdges.cpp +++ b/src/GeomAPI/GeomAPI_PlanarEdges.cpp @@ -52,7 +52,7 @@ std::list > GeomAPI_PlanarEdges::getEdges() } bool GeomAPI_PlanarEdges::hasPlane() const { - return myOrigin && myNorm && myDirX && myDirY; + return myPlane.get() != NULL; } bool GeomAPI_PlanarEdges::isVertex() const { @@ -63,28 +63,37 @@ bool GeomAPI_PlanarEdges::isEdge() const { return false; } -void GeomAPI_PlanarEdges::setOrigin(const std::shared_ptr& theOrigin) +std::shared_ptr GeomAPI_PlanarEdges::origin() const { - myOrigin = theOrigin; + if (hasPlane()) + return myPlane->origin(); + return std::shared_ptr(); } -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; + +std::shared_ptr GeomAPI_PlanarEdges::dirX() const +{ + if (hasPlane()) + return myPlane->dirX(); + return std::shared_ptr(); } -void GeomAPI_PlanarEdges::setNorm(const std::shared_ptr& theNorm) { - myNorm = theNorm; + +std::shared_ptr GeomAPI_PlanarEdges::dirY() const +{ + if (hasPlane()) + return myPlane->dirY(); + return std::shared_ptr(); } -std::shared_ptr GeomAPI_PlanarEdges::norm() const { - return myNorm; + +std::shared_ptr GeomAPI_PlanarEdges::norm() const +{ + if (hasPlane()) + return myPlane->norm(); + return std::shared_ptr(); } + +void GeomAPI_PlanarEdges::setPlane(const std::shared_ptr& theOrigin, + const std::shared_ptr& theDirX, + const std::shared_ptr& theNorm) +{ + myPlane = std::shared_ptr(new GeomAPI_Ax3(theOrigin, theDirX, theNorm)); +} \ No newline at end of file