Handle_Geom_Geometry()=0;
};
-class Handle_Geom_Curve: public Handle_Geom_Geometry
+//FIXME: 7.3.0: this is a major flaw, handles cannot be directly casted. I've now added downcast() methods without testing..
+//class Handle_Geom_Curve: public Handle_Geom_Geometry
+class Handle_Geom_Curve
{
- Handle_Geom_Curve()=0;
+ Handle_Geom_Curve()=0;
+
+ Handle_Geom_Curve downcast() {
+ return (*self);
+ }
};
%extend Handle_Geom_Curve
}
}
-class Handle_Geom_Surface: public Handle_Geom_Geometry
+//FIXME: 7.3.0
+//class Handle_Geom_Surface: public Handle_Geom_Geometry
+class Handle_Geom_Surface
{
Handle_Geom_Surface()=0;
+
+ Handle_Geom_Curve downcast() {
+ return (*self);
+ }
};
%extend Handle_Geom_Surface
Handle_Geom2d_Geometry()=0;
};
-class Handle_Geom2d_Curve: public Handle_Geom2d_Geometry
+//FIXME: 7.3.0
+//class Handle_Geom2d_Curve: public Handle_Geom2d_Geometry
+class Handle_Geom2d_Curve
{
Handle_Geom2d_Curve()=0;
+
+ Handle_Geom2d_Geometry downcast() {
+ return (*self);
+ }
};
-class Handle_Geom_BoundedCurve : public Handle_Geom_Curve {
+//FIXME: 7.3.0
+//class Handle_Geom_BoundedCurve : public Handle_Geom_Curve
+class Handle_Geom_BoundedCurve
+{
Handle_Geom_BoundedCurve()=0;
+
+ Handle_Geom_Curve downcast() {
+ return (*self);
+ }
};
-class Handle_Geom_BSplineCurve : public Handle_Geom_BoundedCurve {
+//FIXME: 7.3.0
+//class Handle_Geom_BSplineCurve : public Handle_Geom_BoundedCurve
+class Handle_Geom_BSplineCurve
+{
Handle_Geom_BSplineCurve()=0;
+
+ Handle_Geom_BoundedCurve downcast() {
+ return (*self);
+ }
};
%extend Handle_Geom_BSplineCurve
}
-class Handle_Geom_TrimmedCurve : public Handle_Geom_BoundedCurve {
+//FIXME: 7.3.0
+//class Handle_Geom_TrimmedCurve : public Handle_Geom_BoundedCurve
+class Handle_Geom_TrimmedCurve
+{
Handle_Geom_TrimmedCurve()=0;
+
+ Handle_Geom_BoundedCurve downcast() {
+ return (*self);
+ }
};