关于CAD与VC之间通信

johnlove9527 2010-12-06 09:54:40
我想要在VC中实现读取一个Access的数据库文件然后得到数据,然后在CAD中显示出来。只是一些简单的CAD操作,譬如说画线,点之类的。
我上网查阅是说用ObjectARX 2007产生Dll直接在CAD中加载,之后可以实现功能。
请问第一,我的数据值该怎么传给CAD,是一次一个点的坐标还是?有没有简单点的,因为可能我的数据是上万点之类的。
第二,Dll中可以与数据库通信吗?如何?
...全文
275 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
ruihuzhou@163.com 2012-03-28
  • 打赏
  • 举报
回复
能问下楼主吗,我的VC++6.O编的程序,需要与CAD2007来接口。不想采用Objectarx来开发,用ActiveX来开发可以吗?
johnlove9527 2010-12-22
  • 打赏
  • 举报
回复
先结贴把。有问题再开帖呵呵。谢谢各位。
johnlove9527 2010-12-09
  • 打赏
  • 举报
回复

因为这个小程序是要和以前做的VC一个界面程序绑定的,所以想在界面程序上继续添加功能,不想用VBA,
现在我用脚本实现了我要的功能,不过因为在CAD2007上显示100万的点,图片大小25M左右,机器cad读起来非常卡,请问是什么原因?是图片太大了?
我想问问做过ARX与CAD通信的高手,如果实现我这个功能,一般机器cad读取数据并显示出来要多长时间?我显示图要2个多小时。所以说不理想。请问有没有什么解决方法吗?

在线等高手啊。
blonea 2010-12-07
  • 打赏
  • 举报
回复
那用vba吧,蛮简单的,不过代码可重用性不好,因为以后的cad版本不会再支持 vba了
blonea 2010-12-07
  • 打赏
  • 举报
回复
objectARX 和 vc 版本一定要对应的,比如 cad2010的 objectARX 只能用vs2008



dll里面自己读表格就行了,和普通vc编程没区别


如果数据库操作比较麻烦,用C#


johnlove9527 2010-12-07
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 blonea 的回复:]
objectARX 和 vc 版本一定要对应的,比如 cad2010的 objectARX 只能用vs2008



dll里面自己读表格就行了,和普通vc编程没区别


如果数据库操作比较麻烦,用C#
[/Quote]

因为我的数据量比较大,Excel不够放。呵呵。
我自己电脑上是VC6.0但是CAD是2007所以说基本放弃ObjectARX了,现在准备换成批量xls用脚本与CAD通信。
还有什么思路欢迎指教啊。
masktime 2010-12-06
  • 打赏
  • 举报
回复
貌似你还要注意VC与CAD之间版本对应关系。没有什么经验。
johnlove9527 2010-12-06
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 jason176374 的回复:]
没有实际经验,给点建议吧:
1 既然要用ObjectARX 2007,那么就要看他的说明。
2 DLL中操作数据库,和程序中操作数据库没有什么却别。

另外,原来曾听人说过解析CAD的文件格式,这样你把数据加到文件中去
CAD自然就认识了。不知是否真正可行
[/Quote]

谢谢了,了解了下,不过我的数据是简单的坐标值之类的。
为了在CAD中显示是因为数据比较抽象,想在CAD中显示出来这样具体点。呵呵
johnlove9527 2010-12-06
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 jason176374 的回复:]
没有实际经验,给点建议吧:
1 既然要用ObjectARX 2007,那么就要看他的说明。
2 DLL中操作数据库,和程序中操作数据库没有什么却别。

另外,原来曾听人说过解析CAD的文件格式,这样你把数据加到文件中去
CAD自然就认识了。不知是否真正可行
[/Quote]

谢谢了,了解了下,不过我的数据是简单的坐标值之类的。
为了在CAD中显示是因为数据比较抽象,想在CAD中显示出来这样具体点。呵呵
fandh 2010-12-06
  • 打赏
  • 举报
回复
首先,你Access的数据库存储的数据,是什么数据?直接某个CAD格式的数据?还是基本的图形图形数据?
其次,你存储的数据读出来(无论是那种格式),要转化为某一个软件的数据,才能被该软件显示与操作!
最后,DLL中操作数据库?除非你的数据库中的数据格式按照DLL中所要求存储的!
jason176374 2010-12-06
  • 打赏
  • 举报
回复
没有实际经验,给点建议吧:
1 既然要用ObjectARX 2007,那么就要看他的说明。
2 DLL中操作数据库,和程序中操作数据库没有什么却别。

另外,原来曾听人说过解析CAD的文件格式,这样你把数据加到文件中去
CAD自然就认识了。不知是否真正可行
johnlove9527 2010-12-06
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 songly1 的回复:]
直接通信不知道怎么弄
但是可以把你的图形文件转成dxf格式的文件,cad就可以读取
网上有dxf格式的信息,有人做了一个CadLib的程序,支持读写dxf
写dxf应该难度不大,只要按格式来(格式有点麻烦)
读的时候难度大一点,cad里面的图形结构远多余vc,只不过也是可以读的 就只读entity中的line arc circle就好了,其他的结构全部可以用cad“分解"功能
[/Quote]

你的意思是我把数据保存成DXF格式?现在我的数据全部在Access里面,格式5列,只要前面3列,如何保存成Dxf格式呢?我想要把这些坐标转成点即可。这个写dxf格式有代码可以参考下吗?
无边1 2010-12-06
  • 打赏
  • 举报
回复
直接通信不知道怎么弄
但是可以把你的图形文件转成dxf格式的文件,cad就可以读取
网上有dxf格式的信息,有人做了一个CadLib的程序,支持读写dxf
写dxf应该难度不大,只要按格式来(格式有点麻烦)
读的时候难度大一点,cad里面的图形结构远多余vc,只不过也是可以读的 就只读entity中的line arc circle就好了,其他的结构全部可以用cad“分解"功能
johnlove9527 2010-12-06
  • 打赏
  • 举报
回复
有没有做过类似的高手啊,快来帮帮忙。
还有谁懂Win32应用程序与CAD之间通信的?可以帮忙讲讲吗?
johnlove9527 2010-12-06
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 jastdoit 的回复:]
以前做过将CAD图倒进VC,逆过来没什么经验,学习下!
[/Quote]

我前面师兄做了CAD导入VC,现在我要再把处理过的数据转成CAD图。有没有什么思路啊。我现在是CAD2007,VC6.0。还有这个ActiveX可以在VC下面做吗?有没有什么代码?
jastdoit 2010-12-06
  • 打赏
  • 举报
回复
以前做过将CAD图倒进VC,逆过来没什么经验,学习下!
johnlove9527 2010-12-06
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 jerris 的回复:]
ObjectARX 和VC没有什么对应关系 ,但是ARX和CAD是有对应关系 的,你要开发什么版本的CAD就用什么版本的ARX。

开发ARX和开发其它DLL没什么不一样。仅仅是ARX被CAD加载的方式不太相同。ARX可以调用CAD的大量库函数。用来做三维的运算和显示。如果你的数据是几何信号。你可以用对应的几何图形来绘制,

你可以从数据库中拿到全部的点数据。然后生成点。一绘制就能显示。
……
[/Quote]

突然发现因为要在CAD2007上显示,同时VC是6.0的,所以说不兼容,又不想装VS2005,所以想换种方式显示。
请问是否可以Win32应用程序来控制CAD实现画图功能。如果可以的话,能否给点链接或者代码看看。不太了解。谢谢了。
jerris 2010-12-06
  • 打赏
  • 举报
回复
ObjectARX 和VC没有什么对应关系 ,但是ARX和CAD是有对应关系 的,你要开发什么版本的CAD就用什么版本的ARX。

开发ARX和开发其它DLL没什么不一样。仅仅是ARX被CAD加载的方式不太相同。ARX可以调用CAD的大量库函数。用来做三维的运算和显示。如果你的数据是几何信号。你可以用对应的几何图形来绘制,

你可以从数据库中拿到全部的点数据。然后生成点。一绘制就能显示。
acdbpoint 对像,你只要给个三维做标就能显示。VC能用的功能ARX都可以用。

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧