python - python - 如何在python中使用带有Path变量的svg.path绘制椭圆?
问题描述
我得到了这个列表,这就是我必须以字符串格式创建 Path 变量的内容。
def trans_hatch_ellipse(dxf_entity, dwg) :
tmp = dxf_entity.to_spline(False)
ctrlPoints = tmp.control_points
ctrlCnt = tmp.control_point_count
strPath = ""
for i in range(ctrlCnt()) :
if i%4 == 0 :
strPath += "M " + str(ctrlPoints[i][0]) + " " +str(ctrlPoints[i][1]) + " C "
else : strPath += str(ctrlPoints[i][0]) + " " + str(ctrlPoints[i][1]) + " "
svg_entity = dwg.path(d = strPath, fill = "blue", stroke = "green", stroke_width = 1.0 / SCALE)
svg_entity.scale(SCALE, -SCALE)
del tmp
return svg_entity
这是我用来画椭圆的方法,这里 ctrlCnt() = 9 的值和 ctrlPoints 的值以 VertexArray 的形式给出
VertexArray = [
(2.0, 4.500000000000001, 0.0),
(0.9999999999999998, 4.500000000000001, 0.0),
(0.9999999999999996, 2.5, 0.0),
(0.9999999999999996, 0.49999999999999956, 0.0),
(1.9999999999999998, 0.4999999999999991, 0.0),
(3.0, 0.49999999999999867, 0.0),
(3.0000000000000004, 2.4999999999999996, 0.0),
(3.000000000000001, 4.5, 0.0),
(2.0000000000000004, 4.500000000000001, 0.0)
]
这是我从.dxf
文件中读取以将其转换为.svg
文件的值。
使用这些坐标,我应该在 Path 变量中传递什么值来创建椭圆形状?
解决方案
推荐阅读
- clearcase - 如何保存 cleartool 差异文件
- python - 我在用 python 制作星号金字塔时遇到问题
- python - django import-export,导出多个多对多模型
- java - 我可以使用@Procedure 在 spring-jpa 中调用 Oracle 函数吗?
- xslt - 每个唯一值的 XSLT 总数
- react-native - 使用 react-navigation 从 React Native (IOS) 中的多个屏幕导航回来
- excel - 如何通过将表中的多行连接到另一个中的一行来合并 Excel 中的查询?
- c# - RabbitMQ 服务器如何连接 xamarin 表单,我遇到超时异常?
- postman - 邮递员错误:证书链中的自签名证书
- python - Pandas 按组的所有值的总和进行分组,另一列以逗号分隔