明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: 木亦语

请问怎么在vc++里面输出dxf文件?

  [复制链接]
发表于 2004-8-25 12:54:00 | 显示全部楼层
发表于 2004-8-25 12:55:00 | 显示全部楼层
有什么心得记得共享就好


有什么问题也欢迎提问
 楼主| 发表于 2004-8-26 10:32:00 | 显示全部楼层
非常感谢easypower的帮助。 上面的链接中可以下载一个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;
dd=10000; CFile mFile("e:\\eee.dxf",CFile::modeWrite|CFile::modeCreate); mFile.Write((void*)&dd,sizeof(double)); mFile.Flush(); mFile.Close();

结果在文件eee.dxf中写入的是“□@ F”, 如果dd=100,则写入的是“d”, 我自己估计是写入的是dd在内存中的数值,而不是变量dd所包含的值。 请问这是怎么回事呢? 怎么才能正确输入变量dd的值呢? (比如dd=100,就在文件中写入100)
发表于 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*)&dd,sizeof(double)); 这种方法应该也可以的。


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


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


奇怪
发表于 2004-8-28 17:44:00 | 显示全部楼层
www.opendwg.org提供了很好的开发包OpenDWG Toolkit,开发独立于AutoCAD之外运行的程序,可以实现DWG/DXF文件格式互换!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-26 05:45 , Processed in 0.145741 second(s), 16 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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