PSR 发表于 2022-7-6 22:49:06

XML到DXF格式

大家好,
 
我开始知道,没有可用于XML文件到DXF格式的转换器
 
对于我的项目,我需要编写一个解释器,将XML格式转换为DXF格式
 
请告诉我怎么开始?到目前为止,我掌握了一些XML解析器?
 
如何处理这个问题?
 
 
请帮助我了解一些设计规范和代码片段或链接。
 
谢谢
PSR

opreese 发表于 2022-7-6 23:33:48

我正在做一个项目,从直线和圆的列表中创建dxf文件。在dxf文件中有一个称为“图元”的部分,每个直线和圆的数据都位于该部分。例如,假设有3条线,其中有点(x1,y1)-(x2,y2):
(0,0)-(10,10)
(0,0)-(20,20)
(0,0)-(30,30)
注意:使用基本编程语言:
为了创建dxf文件,我的程序看起来像这样
dim为整数i
尺寸为双折线(3,4)
糜棱线(1,1)=0
糜棱线(1,2)=0
糜棱线(1,3)=10
糜棱线(1,4)=10
糜棱线(2,1)=0
糜棱线(2,2)=0
糜棱线(2,3)=20
糜棱线(2,4)=20
糜棱线(3,1)=0
糜棱线(3,2)=0
糜棱线(3,3)=20
糜棱线(3,4)=20
 
打开“my_dxf_file.dxf”输出为#1
打印#1,“0”
打印#1,“节”
打印#1,“2”
打印#1,“实体”
对于i=1到3
打印#1,“0”
打印#1,“行”
打印#1,“10”
打印#1,str(mylines(i,1))
打印#1,“20”
打印#1,str(mylines(i,2))
打印#1,“11”
打印#1,str(mylines(i,3))
打印#1,“21”
打印#1,str(mylines(i,4))
下一个
打印#1,“0”
打印#1,“EOF”
关闭#1
终止
 
对于圆,您需要参考autocads dxf参考以了解使用的组码。
 
以上内容相对简单,仅当且仅当您的目标是创建包含实体部分的dxf文件时才可用。如果要添加图层、块和/或嵌套块,则会变得更复杂。所涉及的复杂性要求编写例程来构建dxf文件的头和表部分,这样做会由于手动种子和句柄问题(即组码5、105和330)而增加更大的复杂性
我正在尝试创建一个库,供所有人使用,以创建兼容的dxf文件
干杯,欧文-fbcad的作者

opreese 发表于 2022-7-7 00:09:59

现在,我回到原点,尝试创建一个最小的dxf例程。
在(再次)搞砸了这个之后,5年前是椭圆把我绊倒了。
Autocad版本12 dxf文件不支持将椭圆作为图元类型,而是使用多个顶点作为解决方法。
接下来,我必须研究版本13和更高版本的最低要求,这就是我发现需要手动送纸和手柄的地方。
在任何情况下,我回到原点,看看是否有可能不必处理手动送纸和手柄。
如果我找到解决方案,我会把结果贴在这里。
干杯,欧文
页: [1]
查看完整版本: XML到DXF格式