明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2630|回复: 3

[求助]文字镜像的问题

[复制链接]
发表于 2004-3-14 19:38:00 | 显示全部楼层 |阅读模式
我用这个


SetVariable "MIRRTEXT", 0


然后用mirror这个函数镜像出来的文字还是倒过来的?


为什么?该怎么做?谢谢
发表于 2004-3-14 19:55:00 | 显示全部楼层
把你的代码放上来,别人试一下,看是否有你说的情况。
 楼主| 发表于 2004-3-14 20:33:00 | 显示全部楼层
Sub 镜像()
Dim 用户选择集合 As AcadSelectionSet
Dim 轴线集合 As AcadSelectionSet
Dim 标注集合 As AcadSelectionSet
Dim 轴线(0 To 0) As AcadLine
Dim 标注(0 To 0) As AcadText SetVariable "MIRRTEXT", 0
MsgBox "MIRRTEXT的值是:" & GetVariable("MIRRTEXT") Set 用户选择集合 = ThisDrawing.SelectionSets.Add("用户选择集合")
Set 轴线集合 = ThisDrawing.SelectionSets.Add("轴线集合")
Set 标注集合 = ThisDrawing.SelectionSets.Add("标注集合") ' 提示用户选择对象并将它们添加到选择集中。
' 要完成选择,按回车。
用户选择集合.SelectOnScreen
' 在选择集中循环并将每一对象的颜色改为蓝色。 '''
'''过虑选择集,筛选出垂直钢筋和paixs
'''
For Each 图元 In 用户选择集合 Select Case 图元.EntityName Case "AcDbLine"
Set 轴线(0) = 图元
If 图元.Layer = "PAXIS" And _
图元.StartPoint()(0) - 图元.EndPoint()(0) < 10 Then

轴线集合.AddItems 轴线 End If
Case "AcDbText"
If 图元.Layer = "垂直钢筋" Then
Set 标注(0) = 图元
标注集合.AddItems 标注 End If
Case Else End Select Next 图元 '''
'''进行镜像
'''
For Each 标注文字 In 标注集合 Dim 文字的x坐标 As Double
Dim 最近的x坐标 As Double
Dim 最小值 As Double
最小值 = 0
标注文字的x坐标 = 标注文字.InsertionPoint()(0)

For Each 对称轴线 In 轴线集合
If 最小值 = 0 Then
最小值 = Abs(标注文字的x坐标 - 对称轴线.StartPoint()(0))
最近的x坐标 = 对称轴线.StartPoint()(0)
End If
If 最小值 > Abs(标注文字的x坐标 - 对称轴线.StartPoint()(0)) Then
最小值 = 标注文字的x坐标 - 对称轴线.StartPoint()(0)
最近的x坐标 = 对称轴线.StartPoint()(0)
End If
Next 对称轴线
' 定义镜像轴
Dim point1(0 To 2) As Double
Dim point2(0 To 2) As Double
point1(0) = 最近的x坐标: point1(1) = 0: point1(2) = 0
point2(0) = 最近的x坐标: point2(1) = 1: point2(2) = 0
'MsgBox "被镜像的文字是:" & _
'&"镜像的坐标是:" &最近的x坐标
Dim 镜像文字 As AcadText
Set 镜像文字 = 标注文字.Mirror(point1, point2)
Next 标注文字 End Sub 这段代码还会时不时的出错 不知道是为什么 在autocad2000里面可以运行而且文字镜像好好的,但是在r14里面不可以 昨天是不可以,刚刚就出错了,在"For Each 图元 In 用户选择集合"这个位置 谢谢
发表于 2004-3-15 08:43:00 | 显示全部楼层
镜像文字时不会有问题。


程序在创建选择集时没有判断选择集是否已经存在。这样第二次运行时就会出错。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-28 08:47 , Processed in 0.160152 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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