Use OCCT Handle macro for Handle_ classes

This is the result of running OCCT's upgrade script provided
with OCCT 7.0. See
https://www.opencascade.com/content/freecad-occt710-and-windows-rtti-data-missing#comment-form
and
https://www.forum.freecadweb.org/viewtopic.php?f=4&t=21405&start=120#p169019
for why this is necessary for OCCT >= 7.1
This commit is contained in:
Peter Lama
2017-04-17 20:33:29 -04:00
committed by wmayer
parent 4564e4f4a4
commit fa4bebf2e0
141 changed files with 2198 additions and 2208 deletions

View File

@@ -66,7 +66,7 @@ int SurfaceOfExtrusionPy::PyInit(PyObject* args, PyObject* /*kwd*/)
return -1;
GeometryPy* pcGeo = static_cast<GeometryPy*>(pGeom);
Handle_Geom_Curve curve = Handle_Geom_Curve::DownCast
Handle(Geom_Curve) curve = Handle(Geom_Curve)::DownCast
(pcGeo->getGeometryPtr()->handle());
if (curve.IsNull()) {
PyErr_SetString(PyExc_TypeError, "geometry is not a curve");
@@ -75,13 +75,13 @@ int SurfaceOfExtrusionPy::PyInit(PyObject* args, PyObject* /*kwd*/)
try {
Base::Vector3d dir = static_cast<Base::VectorPy*>(pDir)->value();
Handle_Geom_SurfaceOfLinearExtrusion curve2 = new Geom_SurfaceOfLinearExtrusion(curve,
Handle(Geom_SurfaceOfLinearExtrusion) curve2 = new Geom_SurfaceOfLinearExtrusion(curve,
gp_Dir(dir.x,dir.y,dir.z));
getGeomSurfaceOfExtrusionPtr()->setHandle(curve2);
return 0;
}
catch (Standard_Failure) {
Handle_Standard_Failure e = Standard_Failure::Caught();
Handle(Standard_Failure) e = Standard_Failure::Caught();
PyErr_SetString(PartExceptionOCCError, e->GetMessageString());
return -1;
}
@@ -89,7 +89,7 @@ int SurfaceOfExtrusionPy::PyInit(PyObject* args, PyObject* /*kwd*/)
Py::Object SurfaceOfExtrusionPy::getDirection(void) const
{
Handle_Geom_SurfaceOfLinearExtrusion curve = Handle_Geom_SurfaceOfLinearExtrusion::DownCast
Handle(Geom_SurfaceOfLinearExtrusion) curve = Handle(Geom_SurfaceOfLinearExtrusion)::DownCast
(getGeometryPtr()->handle());
const gp_Dir& dir = curve->Direction();
return Py::Vector(Base::Vector3d(dir.X(),dir.Y(),dir.Z()));
@@ -100,13 +100,13 @@ void SurfaceOfExtrusionPy::setDirection(Py::Object arg)
PyObject* p = arg.ptr();
if (PyObject_TypeCheck(p, &(Base::VectorPy::Type))) {
Base::Vector3d dir = static_cast<Base::VectorPy*>(p)->value();
Handle_Geom_SurfaceOfLinearExtrusion curve = Handle_Geom_SurfaceOfLinearExtrusion::DownCast
Handle(Geom_SurfaceOfLinearExtrusion) curve = Handle(Geom_SurfaceOfLinearExtrusion)::DownCast
(getGeometryPtr()->handle());
curve->SetDirection(gp_Dir(dir.x,dir.y,dir.z));
}
else if (PyObject_TypeCheck(p, &PyTuple_Type)) {
Base::Vector3d dir = Base::getVectorFromTuple<double>(p);
Handle_Geom_SurfaceOfLinearExtrusion curve = Handle_Geom_SurfaceOfLinearExtrusion::DownCast
Handle(Geom_SurfaceOfLinearExtrusion) curve = Handle(Geom_SurfaceOfLinearExtrusion)::DownCast
(getGeometryPtr()->handle());
curve->SetDirection(gp_Dir(dir.x,dir.y,dir.z));
}
@@ -127,19 +127,19 @@ void SurfaceOfExtrusionPy::setBasisCurve(Py::Object arg)
PyObject* p = arg.ptr();
if (PyObject_TypeCheck(p, &(GeometryPy::Type))) {
GeometryPy* pcGeo = static_cast<GeometryPy*>(p);
Handle_Geom_Curve curve = Handle_Geom_Curve::DownCast
Handle(Geom_Curve) curve = Handle(Geom_Curve)::DownCast
(pcGeo->getGeometryPtr()->handle());
if (curve.IsNull()) {
throw Py::TypeError("geometry is not a curve");
}
try {
Handle_Geom_SurfaceOfLinearExtrusion curve2 = Handle_Geom_SurfaceOfLinearExtrusion::DownCast
Handle(Geom_SurfaceOfLinearExtrusion) curve2 = Handle(Geom_SurfaceOfLinearExtrusion)::DownCast
(getGeometryPtr()->handle());
curve2->SetBasisCurve(curve);
}
catch (Standard_Failure) {
Handle_Standard_Failure e = Standard_Failure::Caught();
Handle(Standard_Failure) e = Standard_Failure::Caught();
throw Py::Exception(e->GetMessageString());
}
}
@@ -152,25 +152,25 @@ PyObject* SurfaceOfExtrusionPy::uIso(PyObject * args)
return 0;
try {
Handle_Geom_Surface surf = Handle_Geom_Surface::DownCast
Handle(Geom_Surface) surf = Handle(Geom_Surface)::DownCast
(getGeometryPtr()->handle());
Handle_Geom_Curve c = surf->UIso(v);
Handle(Geom_Curve) c = surf->UIso(v);
if (c->IsKind(STANDARD_TYPE(Geom_TrimmedCurve))) {
Handle_Geom_TrimmedCurve aCurve = Handle_Geom_TrimmedCurve::DownCast(c);
Handle(Geom_TrimmedCurve) aCurve = Handle(Geom_TrimmedCurve)::DownCast(c);
return new GeometryCurvePy(new GeomTrimmedCurve(aCurve));
}
if (c->IsKind(STANDARD_TYPE(Geom_BezierCurve))) {
Handle_Geom_BezierCurve aCurve = Handle_Geom_BezierCurve::DownCast(c);
Handle(Geom_BezierCurve) aCurve = Handle(Geom_BezierCurve)::DownCast(c);
return new BezierCurvePy(new GeomBezierCurve(aCurve));
}
if (c->IsKind(STANDARD_TYPE(Geom_BSplineCurve))) {
Handle_Geom_BSplineCurve aCurve = Handle_Geom_BSplineCurve::DownCast(c);
Handle(Geom_BSplineCurve) aCurve = Handle(Geom_BSplineCurve)::DownCast(c);
return new BSplineCurvePy(new GeomBSplineCurve(aCurve));
}
if (c->IsKind(STANDARD_TYPE(Geom_Line))) {
Handle_Geom_Line aLine = Handle_Geom_Line::DownCast(c);
Handle(Geom_Line) aLine = Handle(Geom_Line)::DownCast(c);
GeomLine* line = new GeomLine();
Handle_Geom_Line this_line = Handle_Geom_Line::DownCast
Handle(Geom_Line) this_line = Handle(Geom_Line)::DownCast
(line->handle());
this_line->SetLin(aLine->Lin());
return new LinePy(line);
@@ -180,7 +180,7 @@ PyObject* SurfaceOfExtrusionPy::uIso(PyObject * args)
return 0;
}
catch (Standard_Failure) {
Handle_Standard_Failure e = Standard_Failure::Caught();
Handle(Standard_Failure) e = Standard_Failure::Caught();
PyErr_SetString(PartExceptionOCCError, e->GetMessageString());
return 0;
}
@@ -193,25 +193,25 @@ PyObject* SurfaceOfExtrusionPy::vIso(PyObject * args)
return 0;
try {
Handle_Geom_Surface surf = Handle_Geom_Surface::DownCast
Handle(Geom_Surface) surf = Handle(Geom_Surface)::DownCast
(getGeometryPtr()->handle());
Handle_Geom_Curve c = surf->VIso(v);
Handle(Geom_Curve) c = surf->VIso(v);
if (c->IsKind(STANDARD_TYPE(Geom_TrimmedCurve))) {
Handle_Geom_TrimmedCurve aCurve = Handle_Geom_TrimmedCurve::DownCast(c);
Handle(Geom_TrimmedCurve) aCurve = Handle(Geom_TrimmedCurve)::DownCast(c);
return new GeometryCurvePy(new GeomTrimmedCurve(aCurve));
}
if (c->IsKind(STANDARD_TYPE(Geom_BezierCurve))) {
Handle_Geom_BezierCurve aCurve = Handle_Geom_BezierCurve::DownCast(c);
Handle(Geom_BezierCurve) aCurve = Handle(Geom_BezierCurve)::DownCast(c);
return new BezierCurvePy(new GeomBezierCurve(aCurve));
}
if (c->IsKind(STANDARD_TYPE(Geom_BSplineCurve))) {
Handle_Geom_BSplineCurve aCurve = Handle_Geom_BSplineCurve::DownCast(c);
Handle(Geom_BSplineCurve) aCurve = Handle(Geom_BSplineCurve)::DownCast(c);
return new BSplineCurvePy(new GeomBSplineCurve(aCurve));
}
if (c->IsKind(STANDARD_TYPE(Geom_Line))) {
Handle_Geom_Line aLine = Handle_Geom_Line::DownCast(c);
Handle(Geom_Line) aLine = Handle(Geom_Line)::DownCast(c);
GeomLine* line = new GeomLine();
Handle_Geom_Line this_curv = Handle_Geom_Line::DownCast
Handle(Geom_Line) this_curv = Handle(Geom_Line)::DownCast
(line->handle());
this_curv->SetLin(aLine->Lin());
return new LinePy(line);
@@ -221,7 +221,7 @@ PyObject* SurfaceOfExtrusionPy::vIso(PyObject * args)
return 0;
}
catch (Standard_Failure) {
Handle_Standard_Failure e = Standard_Failure::Caught();
Handle(Standard_Failure) e = Standard_Failure::Caught();
PyErr_SetString(PartExceptionOCCError, e->GetMessageString());
return 0;
}