明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 811|回复: 7

生成椭圆的DXF文件困扰~~~~

[复制链接]
发表于 2016-7-16 18:25:29 | 显示全部楼层 |阅读模式
大家好,我CAD的VBA中想生成一段椭圆的DXF代码,结果直线、圆弧、文本都能正常显示,结果加入椭圆的时候,生成的DXF文件怎么都打开报错:对象未定义编组 330
DXF如下:
  0
SECTION
  2
ENTITIES
  0
ELLIPSE
  5
2A3
330
1F
100
AcDbEntity
  8
0
  6
Continuous
62
     1
370
     9
100
AcDbEllipse
10
390.0000733434899
20
-5.999965432802127
30
0.0
11
286.5789443231294
21
0.0000002871318318
31
0.0
210
0.0
220
0.0
230
1.0
40
0.9299357326256805
41
1.232773634691828
42
1.908819017500673
  0
ENDSEC
  0
EOF



该贴已经同步到 泥石流再续的微博
发表于 2016-7-16 20:39:17 | 显示全部楼层
LWPOLYLINE也是这种情况啊!据说是R12版本之前没有多段线  椭圆,简化后的代码程序默认为R12之前版本!兄弟找到办法麻烦也在这里说下方法!多谢了
 楼主| 发表于 2016-7-16 21:52:28 | 显示全部楼层
偶尔做做怪 发表于 2016-7-16 20:39
LWPOLYLINE也是这种情况啊!据说是R12版本之前没有多段线  椭圆,简化后的代码程序默认为R12之前版本!兄弟 ...

我现在只能慢慢找一个有椭圆的简单dxf测试,慢慢删除信息到我生成的dxf的结构,看能不能打开。但是cad另存的dxf里面,乱七八糟的信息实在太多了。
发表于 2016-7-16 22:52:50 | 显示全部楼层
我删了1天的LWPOLYLINE信息太多!搞不定啊!上千行信息,好多都是关联的!看起来没用,一删就出错
 楼主| 发表于 2016-7-17 09:32:42 | 显示全部楼层
偶尔做做怪 发表于 2016-7-16 22:52
我删了1天的LWPOLYLINE信息太多!搞不定啊!上千行信息,好多都是关联的!看起来没用,一删就出错

期待哪位大牛帮我们授业解惑。。。。
 楼主| 发表于 2016-7-28 18:48:19 | 显示全部楼层
大家没遇到过吗啊?
发表于 2016-7-28 23:12:36 | 显示全部楼层
找到个替代的办法!用netdxf库 写!很简单
Imports netDxf.Entities
Imports netDxf.DxfDocument

Public Class Form1

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

        Dim doc As New netDxf.DxfDocument

        Dim l1 As Line = New Line()
        l1.StartPoint = New netDxf.Vector3(0, 0, 0)
        l1.EndPoint = New netDxf.Vector3(100, 100, 0)

        doc.AddEntity(l1)
        Dim pl As LwPolyline = New LwPolyline
        Dim pt(5) As LwPolylineVertex
        pt(0) = New LwPolylineVertex(0, 0)

        pt(1) = New LwPolylineVertex(10, 20)
        pt(2) = New LwPolylineVertex(20, 40)
        pt(3) = New LwPolylineVertex(30, 60)
        pt(4) = New LwPolylineVertex(50, 40)
        pt(5) = New LwPolylineVertex(20, 10)
        For i As Integer = 0 To 5
            pl.Vertexes.Add(pt(i))
        Next
        doc.AddEntity(pl)

        doc.Save("C:\Users\Administrator\Desktop\test2.dxf")


    End Sub
End Class


上面是我测试代码,写起来很简单!你去网上下个netdxf库,引用下! 没例子!我随便试了下!只要定义好实体然后AddEntity,save就搞定了
发表于 2016-7-28 23:14:58 | 显示全部楼层
禁止我传附件
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 10:13 , Processed in 0.145040 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表