Skip to content

Commit

Permalink
wrapper for Geom2d package
Browse files Browse the repository at this point in the history
  • Loading branch information
wwmayer committed Nov 21, 2016
1 parent e54e951 commit 689d2e4
Show file tree
Hide file tree
Showing 5 changed files with 3,126 additions and 4 deletions.
21 changes: 21 additions & 0 deletions src/Mod/Part/App/AppPart.cpp
Expand Up @@ -55,6 +55,8 @@
#include "PrimitiveFeature.h"
#include "Part2DObject.h"
#include "CustomFeature.h"
#include "Geometry.h"
#include "Geometry2d.h"
#include "TopoShapePy.h"
#include "TopoShapeVertexPy.h"
#include "TopoShapeFacePy.h"
Expand Down Expand Up @@ -347,6 +349,25 @@ PyMODINIT_FUNC initPart()
Part::GeomSurfaceOfExtrusion ::init();
Part::Datum ::init();

// Geometry2d types
Part::Geometry2d ::init();
Part::Geom2dPoint ::init();
Part::Geom2dCurve ::init();
Part::Geom2dBezierCurve ::init();
Part::Geom2dBSplineCurve ::init();
Part::Geom2dCircle ::init();
Part::Geom2dArcOfCircle ::init();
Part::Geom2dEllipse ::init();
Part::Geom2dArcOfEllipse ::init();
Part::Geom2dHyperbola ::init();
Part::Geom2dArcOfHyperbola ::init();
Part::Geom2dParabola ::init();
Part::Geom2dArcOfParabola ::init();
Part::Geom2dLine ::init();
Part::Geom2dLineSegment ::init();
Part::Geom2dOffsetCurve ::init();
Part::Geom2dTrimmedCurve ::init();

IGESControl_Controller::Init();
STEPControl_Controller::Init();
// set the user-defined settings
Expand Down
2 changes: 2 additions & 0 deletions src/Mod/Part/App/CMakeLists.txt
Expand Up @@ -262,6 +262,8 @@ SET(Part_SRCS
CrossSection.h
Geometry.cpp
Geometry.h
Geometry2d.cpp
Geometry2d.h
ImportIges.cpp
ImportIges.h
ImportStep.cpp
Expand Down
8 changes: 4 additions & 4 deletions src/Mod/Part/App/Geometry.cpp
Expand Up @@ -2451,19 +2451,19 @@ Base::Vector3d GeomArcOfParabola::getEndPoint() const

Base::Vector3d GeomArcOfParabola::getCenter(void) const
{
Handle_Geom_Hyperbola h = Handle_Geom_Hyperbola::DownCast(myCurve->BasisCurve());
gp_Ax1 axis = h->Axis();
Handle_Geom_Parabola p = Handle_Geom_Parabola::DownCast(myCurve->BasisCurve());
gp_Ax1 axis = p->Axis();
const gp_Pnt& loc = axis.Location();
return Base::Vector3d(loc.X(),loc.Y(),loc.Z());
}

void GeomArcOfParabola::setCenter(const Base::Vector3d& Center)
{
gp_Pnt p1(Center.x,Center.y,Center.z);
Handle_Geom_Hyperbola h = Handle_Geom_Hyperbola::DownCast(myCurve->BasisCurve());
Handle_Geom_Parabola p = Handle_Geom_Parabola::DownCast(myCurve->BasisCurve());

try {
h->SetLocation(p1);
p->SetLocation(p1);
}
catch (Standard_Failure) {
Handle_Standard_Failure e = Standard_Failure::Caught();
Expand Down

0 comments on commit 689d2e4

Please sign in to comment.