Fix for lines for freecad>0.16
This commit is contained in:
parent
f6e71064dd
commit
c4b40f2b8a
1 changed files with 13 additions and 7 deletions
20
ARTools.py
20
ARTools.py
|
@ -468,15 +468,21 @@ def getPrimitiveInfo(prim_type, subobj, scale=1e-3):
|
||||||
d["center"] = vector2list(subobj.Curve.Center, scale)
|
d["center"] = vector2list(subobj.Curve.Center, scale)
|
||||||
d["focal"] = scale*subobj.Curve.Focal
|
d["focal"] = scale*subobj.Curve.Focal
|
||||||
elif prim_type == "Line":
|
elif prim_type == "Line":
|
||||||
if not hasattr(subobj.Curve, "Infinite"):
|
if int(FreeCAD.Version()[1]) > 16:
|
||||||
d["startpoint"] = vector2list(subobj.Curve.StartPoint)
|
sp = subobj.valueAt(subobj.FirstParameter)
|
||||||
d["endpoint"] = vector2list(subobj.Curve.EndPoint)
|
ep = subobj.valueAt(subobj.LastParameter)
|
||||||
if hasattr(subobj.Curve, "Infinite"):
|
d["startpoint"] = vector2list(sp)
|
||||||
if subobj.Curve.Infinite:
|
d["endpoint"] = vector2list
|
||||||
d["infinite"] = subobj.Curve.Infinite
|
else:
|
||||||
else:
|
if not hasattr(subobj.Curve, "Infinite"):
|
||||||
d["startpoint"] = vector2list(subobj.Curve.StartPoint)
|
d["startpoint"] = vector2list(subobj.Curve.StartPoint)
|
||||||
d["endpoint"] = vector2list(subobj.Curve.EndPoint)
|
d["endpoint"] = vector2list(subobj.Curve.EndPoint)
|
||||||
|
if hasattr(subobj.Curve, "Infinite"):
|
||||||
|
if subobj.Curve.Infinite:
|
||||||
|
d["infinite"] = subobj.Curve.Infinite
|
||||||
|
else:
|
||||||
|
d["startpoint"] = vector2list(subobj.Curve.StartPoint)
|
||||||
|
d["endpoint"] = vector2list(subobj.Curve.EndPoint)
|
||||||
elif prim_type == "BSplineSurface":
|
elif prim_type == "BSplineSurface":
|
||||||
FreeCAD.Console.PrintWarning("getPrimitiveInfo of BSpline incomplete.")
|
FreeCAD.Console.PrintWarning("getPrimitiveInfo of BSpline incomplete.")
|
||||||
elif prim_type == "BezierSurface":
|
elif prim_type == "BezierSurface":
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue