QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
6天前
查看: 2465|回复: 5
收起左侧

[已答复] VBA关于面域explode后,元素的删除

[复制链接]
发表于 2013-6-7 10:00:59 | 显示全部楼层 |阅读模式 来自: 中国河北秦皇岛

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

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

x
CAD基于VBA二次开发,一个圆形面域explode后,我想通过编程,把面域删掉,留下圆,这个该怎么处理呢?求大神指教
 楼主| 发表于 2013-6-7 11:18:52 | 显示全部楼层 来自: 中国河北秦皇岛
程序如下
; t. I8 b: I6 B: G3 ASub Explode()6 g. i- K8 f' V/ O
" b) `! \8 B8 r; l  X5 _+ L
Dim curves(0 To 0) As AcadCircle9 S$ X: U' L. F) W$ a  F" i3 z
' 创建形成面域边界的圆。
/ T9 T: V* E9 u) IDim center(0 To 2) As Double
0 l  D2 J& Q! n6 C4 X4 j9 B% oDim radius As Double9 U: N/ U3 d: k! o
center(0) = 2
, z, n- y4 T+ tcenter(1) = 2! g+ K/ H3 `2 T( `5 \$ H. A. q( e
center(2) = 0
3 J6 o% N: S& u6 m. t; Bradius = 20; @- X0 n: c1 n6 ]
9 b1 n% T- E1 M9 \4 I
Set curves(0) = ThisDrawing.ModelSpace.AddCircle(center, radius)
+ v/ f3 g  e9 d2 L/ n0 M9 g5 Z1 A7 C
Dim regionObj As Variant    ' 创建面域
0 ?1 Q+ s# L. ]( v& }regionObj = ThisDrawing.ModelSpace.AddRegion(curves)2 p0 l  {$ J( W- A+ o& Y8 ^3 p
1 r  k( R' Z. I8 p* E8 G. B! k' N
On Error Resume Next
$ r3 m* o, M$ g& z  {# iDim explodedObjects As Variant4 c5 v- o7 ?4 h$ A( \3 w
explodedObjects = regionObj.Explode! Y. d# Z" P: d1 E4 w- t
& Q; f/ P, F9 s2 ~! M! H3 p
End Sub5 P2 t) Y3 _' X( R/ q) p" g$ J9 r
- n3 l' v) m  x3 |$ @5 ]
我想通过程序把面域删掉,该怎么做呢
发表于 2013-6-8 12:43:19 | 显示全部楼层 来自: 中国天津
regionObj 是变体变量,创建面域后该变量就变成了一个对象数组。从你的代码上看,该数组只有一个元素(唯一一个面域).
, D( {- f0 v. R0 J) V3 lexplodedObjects = regionObj.Explode 这一行是错的,怎么能对一个数组使用 Explode 方法呢?) r9 ~( C5 @. E& ^! p5 K2 }8 t
正确的方法是9 t" N0 ~: Y+ s/ B
explodedObjects = regionObj(0).Explode4 P/ R2 T/ U5 c+ N( l% S& {# h0 j+ R
删除该面域的方法是3 k1 J. A( u! V$ E4 ^
regionObj(0).Delete
 楼主| 发表于 2013-6-9 11:40:01 | 显示全部楼层 来自: 中国河北秦皇岛
woaishuijia 发表于 2013-6-8 12:43 static/image/common/back.gif& V5 l4 Y" ~& Y. g3 P1 B
regionObj 是变体变量,创建面域后该变量就变成了一个对象数组。从你的代码上看,该数组只有一个元素(唯一一个 ...
9 Z6 D3 v# r* Z9 d& S
我把面域删除了,能不能在这圆内填充图案呢?特别是空间一层一层的环,怎么填充
发表于 2013-6-12 12:18:07 | 显示全部楼层 来自: 中国辽宁沈阳
在本版区自行搜索有关填充的帖子& {4 ?- m. A: v( t3 ?
$ A* Q9 a  M  U, v
VBA:如何填充不规则区域?
0 s- n* H  F5 {
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则


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

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

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