明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2374|回复: 7

求助:请帮忙写一个VBA的程序,自动计算距离的,急!谢谢!

[复制链接]
发表于 2004-11-30 18:27:00 | 显示全部楼层 |阅读模式
求助:请熟悉VBA程序的朋友帮忙写一个自动计算两点间距离的程序,谢谢,要求等见链接中的图片,急,再次感谢!

[WEB]http://www.1sj2003.com/bbs/uploadImages/200411301802059905.jpg[/WEB]
发表于 2004-11-30 19:54:00 | 显示全部楼层
如果求两点距离,可以用getpoint


或者求交点


不过你的图形,太复杂了。没有看出来这两个点是怎么取出的。


企盼中
发表于 2004-11-30 23:07:00 | 显示全部楼层
只是取两点距离?
 楼主| 发表于 2004-12-1 09:17:00 | 显示全部楼层

谢谢两位朋友的回复!

非常感谢两位的回复!这个问题也是一个朋友问我的,因不怎么懂VBA,所以上网求助,具体要求我也不太知道了,应该只是求两点间的距离吧!如果可以能否写一个简单的程序呢?谢谢!
发表于 2004-12-1 09:40:00 | 显示全部楼层
问题的确是有点复杂化了,看不懂楼主的意思。
 楼主| 发表于 2004-12-1 13:10:00 | 显示全部楼层
看来问题不太明确,这下真的复杂化了,不知哪位高手能看懂!拜托拜托!
发表于 2012-7-4 12:39:39 | 显示全部楼层
Sub 计算距离()
On Error GoTo NoSelect
With ThisDrawing
Do
Dim a As Variant, b As Variant, charudian As Variant
a = .Utility.GetPoint(, "请选择点A"): b = .Utility.GetPoint(, "请选择点B"):
distance = Int(Abs(Sqr((a(0) - b(0)) ^ 2 + (a(1) - b(1)) ^ 2)) + 1)
charudian = .Utility.GetPoint(, "请选择插入点")
Set txt = .ModelSpace.AddText(distance, charudian, 1.5)
If Abs(a(0) - b(0)) < 1 Then
txt.Rotation = 1.57
ElseIf Abs(a(1) - b(1)) < 1 Then
txt.Rotation = 0
End If
txt.color = acWhite
Loop While err.Number = 0
End With
NoSelect:
err.Clear
End Sub
高手莫笑 菜鸟编程
发表于 2013-4-8 03:18:04 来自手机 | 显示全部楼层
还用编程么……拉条线查属性不就得了……
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-25 15:56 , Processed in 0.172839 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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