easypower 发表于 2004-8-25 12:54:00

给你两个连接,应该可以帮你解决很多问题


<A href="http://www.codeproject.com/file/dxffiles.asp" target="_blank" >http://www.codeproject.com/file/dxffiles.asp</A>


<A href="http://www.codeproject.com/library/cadlib.asp" target="_blank" >http://www.codeproject.com/library/cadlib.asp</A>

easypower 发表于 2004-8-25 12:55:00

有什么心得记得共享就好


有什么问题也欢迎提问

木亦语 发表于 2004-8-26 10:32:00

非常感谢<A name=45256><FONT color=#000066><B>easypower</B></FONT></A>的帮助。


上面的链接中可以下载一个cadlib动态链接库,对写dxf文件应该有非常大的帮助,可以简化很多工作吧。


呵呵我正在试用。

木亦语 发表于 2004-8-26 10:36:00

昨天晚上我自己琢磨了一下,


发现在dxf文件中,空格是没用的。


也发现了如果采用2004的dxf格式,


那么可能对dxf文件的结构要求比较高。


可能几大区域都要全。


我试着删掉一些区域,


但都没成功。


如果采用r12的格式的话,


那会简单很多,


只用写entities区域就行了


而且句柄不用分配。

木亦语 发表于 2004-8-26 10:39:00

有一个关于写入文件的问题,费了好大功夫,也没弄明白,


在这里向大家请教一下。


我想写入double格式的变量,但是实际在文件中输入的总是乱码。不知道怎么回事。

木亦语 发表于 2004-8-26 10:46:00

代码如下:


        double dd;<BR>        dd=10000;


        CFile mFile("e:\\eee.dxf",CFile::modeWrite|CFile::modeCreate);


        mFile.Write((void*)&amp;dd,sizeof(double));


        mFile.Flush();


        mFile.Close(); <BR><BR>


结果在文件eee.dxf中写入的是“□@<SPAN style="mso-spacerun: yes">       F</SPAN>”,


如果dd=100,则写入的是“d”,


我自己估计是写入的是dd在内存中的数值,而不是变量dd所包含的值。


请问这是怎么回事呢?


怎么才能正确输入变量dd的值呢?


(比如dd=100,就在文件中写入100)

easypower 发表于 2004-8-26 11:39:00

把100变成"100"

木亦语 发表于 2004-8-26 15:34:00

如果写成字符串格式的"100"是可以写入文件的,


但和我的要求不符合啊,


因为我用的dd是double型的


我原来想用它做为函数参数传递的


所以直接写成"100"不能满足要求啊。

木亦语 发表于 2004-8-26 15:42:00

不过我从您给的第一个网页链接中找到另一种写入文件的方法。


用ofstream就很方便的能满足需要。


就是觉得上面的mFile.Write((void*)&amp;dd,sizeof(double)); 这种方法应该也可以的。


我是从一本vc的参考书看来的。


可是就不知道错在哪里了。


奇怪

gxss 发表于 2004-8-28 17:44:00

<A href="http://www.opendwg.org/" target="_blank" >www.opendwg.org</A>提供了很好的开发包OpenDWG Toolkit,开发独立于AutoCAD之外运行的程序,可以实现DWG/DXF文件格式互换!
页: 1 [2] 3
查看完整版本: 请问怎么在vc++里面输出dxf文件?