读取Adobe illustrator导出dxf的样条曲线.doc

读取Adobe illustrator导出dxf的样条曲线.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
读取Adobe illustrator导出dxf的样条曲线.doc

在autocad里面的图形可以转变为plt文件,plt文件是一个比较容易读取的文件格式, 因为plt里面的数据都是线段,也就是说autocad把所有图形转化成了线段的组合. 但是Adobe illustrator里面的图形不能直接导出成plt文件,只能导出到dxf文件, 那么现在的任务就是读取dxf文件,也就是写程序解析dxf里面的内容, 把里面的矢量图形变成线段的组合,相当于做一个dxf到plt的转换. Dxf文件是一个文本文件,很容易一行一行读出来,读出来的东西是图形的数学定义. 最常用的几个是: 线段LINE, 多线段POLYLINE, 圆弧CIRCLE, 椭圆ELLIPSE,样条曲线SPLINE, 这里面最复杂的是SPLINE,其它几个用中学的解析几何就可以搞定. 所以先要把SPLINE搞定,否则这dxf就没法读出来了,先用Adobe illustrator画一些样条曲线, 用过autocad的人可能找不到样条曲线按钮,其实画样条曲线的就是钢笔工具. 在这里我画了一个聪明的”聪”字的形状路径. 导出到dxf文件,导出以后先用autocad打开看看,因为dxf格式是autocad公司的东西 嗯,确定导出的文件没有问题,然后用任何文本编辑器打开,我自己习惯用editplus, 打开以后搜索SPLINE, 好了,样条曲线就在这里了,但是如何下手呢,这里面只有一行一行的数字和字符, 先来看看autocad公司的dxf帮助,仔细研究后应该基本上可以看懂dxf文件的意思 从dxf文件里面的SPLINE后面有很多相关信息,比如: 节点,控制点,拟合点,权值, 但是这如何确定SPLINE的图形呢,其实SPLINE和CIRCLE是类似的, Dxf文件的CIRCLE字段后面我们可以读出圆心和半径,那么就可以画出圆来, 因为圆有方程,可是样条曲线有没有方程呢,肯定有,否则autocad怎么显示出来的呢. 我开始的时候在想那SPLINE的方程是什么呢?有没有专门的学科和书籍去阐述它呢, 我首先想到了[计算机图形学],网上找了很多相关书籍,发现有些书有提到,并且给出了方程, 但是我后来发现不对,因为上面给出的是均匀B样条的,我们这里的是非均匀的. 后来我又发现autocad的帮助里面说,autocad里面的样条曲线是NURBS(非均匀有理B样条) 搜索NURBS,最后下载到两本书,英文的[the nurbs book]和[计算机辅助几何设计与非均匀有理B样条] 看了一些后发现中文的这本有包含大部分英文的那本, 研究了这两本书好多天后发现, 1, dxf里面的SPLINE是一个特殊的NURBS,是分段bezier曲线 2, 样条曲线的方程是一个叫做deboor-cox递推公式 3, 有两种方法可以得到图形,先求出分段函数的方程或者直接用递推公式算坐标 理论有了个大概了解后就开始用VC编程了,编程有两个比较麻烦的地方, 1,读dxf文件,里面是树形结构,最麻烦的是块的处理, 2,处理SPLINE字段,就是用节点序列和控制点序列算坐标 我用的是递推公式算坐标的,就是让参数从最小节点值到最大节点值单调变化, 根据参数递推出来的点就扫过了样条曲线,最后出来的结果表明deboor-cox递推可以画出SPLINE 结束 作者QQ 1034593913

文档评论(0)

5566www + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6122115144000002

1亿VIP精品文档

相关文档