Loidy 发表于 2022-7-6 21:10:08

请求任何Autocad VBA(.dv

您好,我想申请一个可访问的autocad vba文件(userform/macro/.dvb/.frm)。我试图实现的是一个工具栏,它允许我计算值并将其按层排列在表格中。任何文件都可以,相关与否,完成与否,我将尝试获取一些想法/代码/格式如何制作,仍在学习一些代码。例如。。
 
我在autocad上绘制了许多线、多段线、面积/区域和体积,每个图层的名称都不同。
然后,我只需拖动选择我要计算的所有对象,然后给我每个层的表/列表框中显示的总长度、总面积、总体积、总计数(分离函数)的结果,然后我将尝试将其发送到EXCEL。
 
层|长度/面积/体积/计数|单位
 
线路1 | 100 |米
线路2 | 100 |米
 
 
面积3 | 100 |平方米
 
卷4 | 100 | cu。米
 
Count5 | 100 |件
 
 
 
我希望你们能分享一些文件/网站,我找到了一些,但它有密码,无法预览代码。
谢谢
 

PeterPan9720 发表于 2022-7-6 21:18:38

嗨,Loidy,
你要问的不是那么容易,因为根据找到的对象类型,你可以有上千个属性,因此你应该给我们一个示例图形,在此基础上,我们可以向你展示搜索对象的主要规则,并通过VBA检索属性、计数等。
因此,请与我们分享一个样本图纸,这可以帮助我们找到您所需要的最佳解决方案。
例如,对象在模型空间或PaperSapce中?您有哪个版本的Autocad可用,最近添加了一些附加功能。
 
问候

Loidy 发表于 2022-7-6 21:25:27

对不起,这是我的样品。。泰
 

PeterPan9720 发表于 2022-7-6 21:28:58

@多倍体,
感谢您的绘图,只是为了更好地澄清:
 
例如,您在第1层的线性表上指示12000,这是正确的,但在计算中,还有一个周长为4000的区域,这不被视为直线或多段线,为了显示在线性表对象列表上,这是第1层上的区域。
 
所以你想计算同一层上的所有对象类型,对吗?
 
非常感谢。

Loidy 发表于 2022-7-6 21:37:01

@PeterPan9720,
 
我很抱歉。我忘了更新值。是,不考虑线型(直线、多段线、圆、矩形、圆弧…)只要它有长度和相同的层。。
tnx公司

BIGAL 发表于 2022-7-6 21:43:40

给你发了一些东西读我的下午。
 
对于其他人来说,谷歌应该在那里

PeterPan9720 发表于 2022-7-6 21:50:33

Hi@Loidy公司
下面是一个示例代码,当然可以进行优化,但可以作为一个起点
由于我在三维对象管理和VBA方面经验不足,我仍在研究它,请参阅AcDb3dSolid一节。

BIGAL 发表于 2022-7-6 21:57:41

彼得潘9720弧具有长度和半径,质心。圆的质心可能会增加。
 
使用dumpit。lsp适用于查找对象的属性,VBA版本?
 
我用非VBA玩的东西可以通过一行在VBA中使用调用子函数实现所需的属性。
 
AcDb3dsolid可能会使用Massprops。可以写入文件并将其读回。
 

PeterPan9720 发表于 2022-7-6 21:58:30

嗨@比格尔,谢谢你的建议,我期待着。
 
再见

Loidy 发表于 2022-7-6 22:08:53

@PeterPan9720谢谢,先生,但我仍然在努力使用selectionset来使用它,以及如何把它放到表中。
页: [1] 2
查看完整版本: 请求任何Autocad VBA(.dv