QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
8天前
查看: 4861|回复: 17
收起左侧

[已解决] 怎样把相同的很多矩形一次改为圆形?

[复制链接]
发表于 2008-3-18 15:32:33 | 显示全部楼层 |阅读模式 来自: 中国广东广州

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

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

x
怎样把相同的很多矩形一次改为圆形?
发表于 2008-3-18 15:42:48 | 显示全部楼层 来自: 中国四川成都
就我所知道的而言,要把矩形变为圆,只有用PE命令.但是一次只能编辑一个.但是要保证你的矩形是用rec命令画了.如果是用直线的话,需要先编辑一下.
& D$ M7 c' F9 ]' Z5 U6 }/ C如果所有的矩形尺寸都一样的话,可以做成一个块,然后编辑块,所有的对像都会被重生,这样可以批量修改.
 楼主| 发表于 2008-3-18 16:18:44 | 显示全部楼层 来自: 中国广东广州
可惜,矩形也画好,而且是线段。
发表于 2008-3-18 16:28:16 | 显示全部楼层 来自: 中国四川成都
是线段的话要用pe命令编辑成多义线才行,可是这样太麻烦了.谁还有好办法没有呢?顶一下.
发表于 2008-3-18 17:37:20 | 显示全部楼层 来自: 中国广东中山
还没遇到过要这样改法的。
发表于 2008-3-18 17:46:46 | 显示全部楼层 来自: 中国广东中山

没法

试了,没法了,只能自己慢慢来了
发表于 2008-3-18 18:19:06 | 显示全部楼层 来自: 中国广东江门
只能一个个来了,如果是定义了块就可以比较块的替换
发表于 2008-3-19 05:04:11 | 显示全部楼层 来自: 中国上海
这个问题得找搞CAD二次开发的
发表于 2008-3-19 08:55:21 | 显示全部楼层 来自: 中国台湾
楼主可否提供调试图面(Dwg)+范例说明
发表于 2008-3-19 10:29:26 | 显示全部楼层 来自: 中国江苏扬州
不知楼主的用途.9 |6 d' q$ G+ e) v6 v5 K' T; p
) F* n3 V- @) y. f
可以有另类的方法.........
发表于 2008-3-19 12:46:30 | 显示全部楼层 来自: 中国浙江杭州
pe命令的话,你可以选取所有的线段一次性转换,这样就会成为无数的矩形,如果图面比较复杂,你吧别的层隐藏掉!
发表于 2008-3-19 14:36:15 | 显示全部楼层 来自: 中国四川成都
用2009的话,有一个动作宏,能够解决一部份的问题,也许我做得不够好,要点好几次鼠标才能转换一个圆.期待高手.
发表于 2008-6-9 13:41:27 | 显示全部楼层 来自: 中国辽宁营口
VBA代码4 T$ L: t5 q/ p0 E. B) ?5 C% Y8 J

: d8 `, a' u7 C9 Z, LSub A()7 A/ h2 v; _! f$ v( e  s  N
On Error Resume Next
9 ~$ d; ~& U4 }8 A6 d    Dim SS As AcadSelectionSet, Ft(0) As Integer, Fd(0) As Variant, PL As AcadLWPolyline, C(2) As Double, P As Variant
0 W4 v- I# i3 a2 X6 M5 ^/ w    With ThisDrawing
! n; J5 k! j4 D( g) ^! k) ]2 H        Set SS = .SelectionSets.Add("SS") '新建选择集
7 z* O! \5 j" T5 _" V( r        Ft(0) = 0 '定义选择规则为多段线9 P1 j+ p0 p: T7 m$ O9 N
        Fd(0) = "LWPolyLine"
# D+ x; _- I/ w' M  ]& Q# Z) N        SS.SelectOnScreen Ft, Fd '从屏幕上选取多段线对象5 E. H+ ~2 B" d5 |# E4 v: S
        For Each PL In SS '遍历选择集中多段线
& q$ a- p& L& K, V4 y, @            P = PL.Coordinates '获取多段线顶点坐标数组$ K$ L' r! C4 `) X
            If UBound(P) = 7 And PL.Closed Then '图省事,只检查多段线是否为四个顶点及是否闭合,没严格检查是否矩形
* v8 L, ^( j8 b! K                C(0) = (P(0) + P(4)) / 2# '取第1、第3顶点的中点为圆心
0 P) b; I9 a0 Y& f  ^5 a$ ^$ L                C(1) = (P(1) + P(5)) / 2#) @& K' K4 m$ ~3 q8 g( [. u8 A
                PL.Delete '删除多段线+ a: U0 ?) u3 q# j/ u
                .ModelSpace.AddCircle C, Sqr((P(0) - P(4)) ^ 2 + (P(1) - P(5)) ^ 2) / 2# '画圆,半径为第1、第3顶点连线长度的一半
$ Y9 l' r' n# P  @3 X            End If
+ Q7 g( x% Q; _/ B) E  j: B        Next
. s1 h: t! g2 z" o; E/ W5 y( [        SS.Delete '删除选择集0 V8 g8 A" l; T) M
    End With
7 w& C' u4 |: @. T& u7 @. {9 R! hEnd Sub

评分

参与人数 1三维币 +10 收起 理由
wsj249201 + 10 应助

查看全部评分

发表于 2010-7-9 09:15:38 | 显示全部楼层 来自: 中国山东青岛
直接画圆就行了
发表于 2010-7-9 13:36:32 | 显示全部楼层 来自: 中国广东东莞
我知道有一个光学软件GTOOLS,架在AUTOCAD里面,通过更改系统网点的命令,可以将一个图形换成另一个图形,此命令最方便
发表于 2010-7-16 19:31:36 | 显示全部楼层 来自: 中国上海
不知道此VBA程序有人调试成功了否?
发表于 2010-12-24 09:13:22 | 显示全部楼层 来自: 中国广东东莞
aaa.gif
发表于 2010-12-24 09:14:07 | 显示全部楼层 来自: 中国广东东莞
将图片保存下来看,效果更好
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

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