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