QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

查看: 3377|回复: 4
收起左侧

[已解决] autocad vba 两个面域不能相减!!!

[复制链接]
发表于 2013-5-31 14:51:28 | 显示全部楼层 |阅读模式 来自: 中国上海

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
各位高手: 在下有一段两个面域进行相减的代码,但执行完后,并没有进行bool运算,不知何因,请赐教,万分感谢! bool运算的代码如下:2 g, y( \- ]8 _  \( w' e
Dim circleR2 As Object
0 A' o4 X* e7 p/ XDim regionHob As Object, regionDa As Object
7 a9 \+ M" e) l2 ^3 o1 }Set circleRa2 = acadDoc.modelspace.addcircle(centerpoint, ra2)
/ F! J, E3 T* Y  R+ V) GSet da_profile(0) = circleRa2regionDa = acadDoc.modelspace.addRegion(da_profile) 'no set
7 s! T1 i; ^2 oSet hob_profile(0) = plregionHob = acadDoc.modelspace.addRegion(hob_profile)3 R# ?/ ?4 A7 l
regionDa.Boolean acSubtraction, regionHob! E; }  X0 S: k! h1 ~: z

; Y# L6 N. A# ]9 a. o另,附有生成的dwg文件。
& V: ]3 B/ m5 h0 K8 f5 Y8 n  t/ _ region.zip (31.47 KB, 下载次数: 3)
发表于 2013-6-4 01:54:50 | 显示全部楼层 来自: 中国辽宁
你确定你贴上来的是VBA代码?' x' ~* v5 |% O, w+ n
下面是根据你现有的图进行差集的VBA代码
  1. Dim R1 As AcadRegion, R2 As AcadRegion8 H( d# ~& r% b, J
  2. Set R1 = ThisDrawing.ModelSpace.Item(1)
    0 t) ?9 \7 Q8 v2 S9 a  O. F! R- S
  3. Set R2 = ThisDrawing.ModelSpace.Item(3), G3 S. Y' u8 \8 f9 C3 N" d0 |
  4. R1.Boolean acSubtraction, R2
复制代码
 楼主| 发表于 2013-6-5 16:22:50 | 显示全部楼层 来自: 中国上海
woaishuijia 发表于 2013-6-4 01:54 static/image/common/back.gif
9 {; T7 _4 d7 ^5 X) E你确定你贴上来的是VBA代码?
  z! A/ L* p# w) j9 W! A% \下面是根据你现有的图进行差集的VBA代码

- F0 X5 ?, K* R5 i# E我是用VB6编写的,直接调用autocad,生成图形。8 o4 @" M$ l7 }* t% A( [/ s( P
不是用vb.net ,版主用的是.net吧?
发表于 2013-6-5 17:10:36 | 显示全部楼层 来自: 中国天津
不是,VB6和基于VB6的VBA
 楼主| 发表于 2013-6-7 09:04:32 | 显示全部楼层 来自: 中国上海
woaishuijia 发表于 2013-6-5 17:10 static/image/common/back.gif$ q9 _' m2 P. g0 Q8 L: K$ v7 [
不是,VB6和基于VB6的VBA

6 e: u: J$ C, n3 e3 ]$ ~那我可能用的是低版本的autocad,不过还是多谢了,
4 n/ Y8 v$ U2 i; H后来解决了,生成面域的时候必须的用数组才行。
; X8 F/ x" F- _
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

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