From d3ea45aa326954ca039e77e802e54a439f61ca07 Mon Sep 17 00:00:00 2001 From: vocx-fc Date: Wed, 8 Jul 2020 20:06:04 -0500 Subject: [PATCH] Draft: rename getProj to get_proj --- src/Mod/Draft/getSVG.py | 76 ++++++++++++++++++++++------------------- 1 file changed, 41 insertions(+), 35 deletions(-) diff --git a/src/Mod/Draft/getSVG.py b/src/Mod/Draft/getSVG.py index d43d061c2f..a3c612beef 100644 --- a/src/Mod/Draft/getSVG.py +++ b/src/Mod/Draft/getSVG.py @@ -79,7 +79,7 @@ def getLineStyle(linestyle, scale): return get_line_style(linestyle, scale) -def getProj(vec, plane=None): +def get_proj(vec, plane=None): """Get a projection of the vector in the plane's u and v directions. Parameters @@ -110,6 +110,12 @@ def getProj(vec, plane=None): return Vector(lx, ly, 0) +def getProj(vec, plane=None): + """Get a projection of a vector. DEPRECATED.""" + utils.use_instead("get_proj") + return get_proj(vec, plane) + + def getDiscretized(edge, plane): """Get discretization of the edge.""" pieces = param.GetFloat("svgDiscretization", 10.0) @@ -126,7 +132,7 @@ def getDiscretized(edge, plane): _length = edge.LastParameter - edge.FirstParameter _point = edge.FirstParameter + float(i)/d * _length _vec = edge.valueAt(_point) - v = getProj(_vec, plane) + v = get_proj(_vec, plane) if not edata: edata += 'M ' + str(v.x) + ' ' + str(v.y) + ' ' @@ -294,7 +300,7 @@ def getSVG(obj, if (vs[0].Point-previousvs[-1].Point).Length > 1e-6: vs.reverse() if edgeindex == 0: - v = getProj(vs[0].Point, plane) + v = get_proj(vs[0].Point, plane) edata += 'M '+ str(v.x) +' '+ str(v.y) + ' ' else: if (vs[0].Point-previousvs[-1].Point).Length > 1e-6: @@ -331,10 +337,10 @@ def getSVG(obj, elif len(e.Vertexes) == 1 and isellipse: #svg = getEllipse(e) #return svg - endpoints = [getProj(c.value((c.LastParameter-c.FirstParameter)/2.0), plane), - getProj(vs[-1].Point, plane)] + endpoints = [get_proj(c.value((c.LastParameter-c.FirstParameter)/2.0), plane), + get_proj(vs[-1].Point, plane)] else: - endpoints = [getProj(vs[-1].Point, plane)] + endpoints = [get_proj(vs[-1].Point, plane)] # arc if iscircle: rx = ry = c.Radius @@ -366,7 +372,7 @@ def getSVG(obj, else: edata += getDiscretized(e, plane) elif DraftGeomUtils.geomType(e) == "Line": - v = getProj(vs[-1].Point, plane) + v = get_proj(vs[-1].Point, plane) edata += 'L '+ str(v.x) +' '+ str(v.y) + ' ' else: bspline=e.Curve.toBSpline(e.FirstParameter,e.LastParameter) @@ -386,13 +392,13 @@ def getSVG(obj, elif bezierseg.Degree==3: edata +='C ' for pole in bezierseg.getPoles()[1:]: - v = getProj(pole, plane) + v = get_proj(pole, plane) edata += str(v.x) +' '+ str(v.y) + ' ' else: print("Debug: one edge (hash ",e.hashCode(),\ ") has been discretized with parameter 0.1") for linepoint in bspline.discretize(0.1)[1:]: - v = getProj(linepoint, plane) + v = get_proj(linepoint, plane) edata += 'L '+ str(v.x) +' '+ str(v.y) + ' ' if fill != 'none': edata += 'Z ' @@ -418,7 +424,7 @@ def getSVG(obj, return svg def getCircle(edge): - cen = getProj(edge.Curve.Center, plane) + cen = get_proj(edge.Curve.Center, plane) rad = edge.Curve.Radius if hasattr(FreeCAD,"DraftWorkingPlane"): drawing_plane_normal = FreeCAD.DraftWorkingPlane.axis @@ -445,7 +451,7 @@ def getSVG(obj, return svg def getEllipse(edge): - cen = getProj(edge.Curve.Center, plane) + cen = get_proj(edge.Curve.Center, plane) mir = edge.Curve.MinorRadius mar = edge.Curve.MajorRadius svg = ' math.pi/2): tangle = tangle + math.pi - tbase = getProj(prx.circle.valueAt(prx.circle.FirstParameter+(prx.circle.LastParameter-prx.circle.FirstParameter)/2.0), plane) + tbase = get_proj(prx.circle.valueAt(prx.circle.FirstParameter+(prx.circle.LastParameter-prx.circle.FirstParameter)/2.0), plane) tbase = tbase.add(DraftVecUtils.rotate(Vector(0,2.0/scale,0),tangle)) #print(tbase) else: tangle = 0 - tbase = getProj(prx.tbase, plane) + tbase = get_proj(prx.tbase, plane) svg += getText(stroke,fontsize,obj.ViewObject.FontName,tangle,tbase,prx.string) elif utils.get_type(obj) == "Label": @@ -769,7 +775,7 @@ def getSVG(obj, ) # Draw multisegment line - proj_points = list(map(lambda x: getProj(x, plane), obj.Points)) + proj_points = list(map(lambda x: get_proj(x, plane), obj.Points)) path_dir_list = [format_point(proj_points[0], action='M')] path_dir_list += map(format_point, proj_points[1:]) path_dir_str = " ".join(path_dir_list) @@ -785,7 +791,7 @@ def getSVG(obj, # if Line is set to 'off', no arrow is drawn if hasattr(obj.ViewObject, "ArrowType") and len(obj.Points) >= 2: last_segment = FreeCAD.Vector(obj.Points[-1] - obj.Points[-2]) - angle = -DraftVecUtils.angle(getProj(last_segment, plane)) + math.pi + angle = -DraftVecUtils.angle(get_proj(last_segment, plane)) + math.pi svg += getArrow( arrowtype=obj.ViewObject.ArrowType, point=proj_points[-1], @@ -801,7 +807,7 @@ def getSVG(obj, print("export of texts to SVG is only available in GUI mode") else: fontname = obj.ViewObject.TextFont - position = getProj(obj.Placement.Base, plane) + position = get_proj(obj.Placement.Base, plane) rotation = obj.Placement.Rotation justification = obj.ViewObject.TextAlignment text = obj.Text @@ -816,11 +822,11 @@ def getSVG(obj, else: n = obj.ViewObject.FontName if utils.get_type(obj) == "Annotation": - p = getProj(obj.Position, plane) + p = get_proj(obj.Position, plane) r = obj.ViewObject.Rotation.getValueAs("rad") t = obj.LabelText else: # DraftText (old) or Text (new, 0.19) - p = getProj(obj.Placement.Base, plane) + p = get_proj(obj.Placement.Base, plane) r = obj.Placement.Rotation t = obj.Text j = obj.ViewObject.Justification @@ -931,13 +937,13 @@ def getSVG(obj, lspc = FreeCAD.Vector(obj.ViewObject.Proxy.header.translation.getValue().getValue()) p1 = p2.add(lspc) j = obj.ViewObject.TextAlign - t3 = getText(c,f1,n,a,getProj(p1, plane),t1,linespacing,j,flip=True) + t3 = getText(c,f1,n,a,get_proj(p1, plane),t1,linespacing,j,flip=True) svg += t3 if t2: ofs = FreeCAD.Vector(0,-lspc.Length,0) if a: ofs = FreeCAD.Rotation(FreeCAD.Vector(0,0,1),-rotation).multVec(ofs) - t4 = getText(c,fontsize,n,a,getProj(p1, plane).add(ofs),t2,linespacing,j,flip=True) + t4 = getText(c,fontsize,n,a,get_proj(p1, plane).add(ofs),t2,linespacing,j,flip=True) svg += t4 elif obj.isDerivedFrom('Part::Feature'): @@ -995,8 +1001,8 @@ def getSVG(obj, if FreeCAD.GuiUp: if hasattr(obj.ViewObject,"EndArrow") and hasattr(obj.ViewObject,"ArrowType") and (len(obj.Shape.Vertexes) > 1): if obj.ViewObject.EndArrow: - p1 = getProj(obj.Shape.Vertexes[-1].Point, plane) - p2 = getProj(obj.Shape.Vertexes[-2].Point, plane) + p1 = get_proj(obj.Shape.Vertexes[-1].Point, plane) + p2 = get_proj(obj.Shape.Vertexes[-2].Point, plane) angle = -DraftVecUtils.angle(p2.sub(p1)) arrowsize = obj.ViewObject.ArrowSize.Value/pointratio svg += getArrow(obj.ViewObject.ArrowType,p1,arrowsize,stroke,linewidth,angle)