乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 115|回复: 6

问了几次了,多段线的长度怎么获得

[复制链接]

17

主题

38

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
106
发表于 2003-6-13 18:46:00 | 显示全部楼层 |阅读模式
问了几次了,多段线的长度怎么获得
劳烦版主回答了几次,
但我运行时却报错呀
贴出我的源程序
Sub Count_len()
    ' 创建新的选择集
    Dim sset As AcadSelectionSet
For i = 0 To ThisDrawing.SelectionSets.Count - 1
ThisDrawing.SelectionSets.Item(i).Clear
ThisDrawing.SelectionSets.Item(i).Delete
Next
On Error Resume Next
    Set sset = ThisDrawing.SelectionSets.Add("SS0")
   sset.SelectOnScreen
     Dim entry As AcadEntity
    Dim l_text As String
    Dim l_l As Double
    Dim Arc_count As Integer
    Dim Line_count As Integer
    For Each entry In sset
        '如果是多段线或曲线的长度,就不行了
        If entry.ObjectName = "AcDbArc" Then
        l_text = l_text & "+" & entry.ArcLength
        l_l = l_l + entry.ArcLength
        Arc_count = Arc_count + 1
        ElseIf entry.ObjectName = "AcDbLine" Then
        l_text = l_text & "+" & entry.Length
        l_l = l_l + entry.Length
        Line_count = Line_count + 1
        End If
    Next entry
ThisDrawing.Utility.Prompt vbCrLf & Arc_count & "个弧," & Line_count & "条直线. 共" & Arc_count + Line_count & "个对象." & vbCrLf & l_text & "=" & l_l & vbCrLf
End Sub
回复

使用道具 举报

158

主题

2315

帖子

10

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2951
发表于 2003-6-13 22:20:00 | 显示全部楼层
http://www.mjtd.com/function/list.asp?id=308&ordertype=byletter
回复

使用道具 举报

7

主题

63

帖子

5

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
91
发表于 2003-6-14 08:03:00 | 显示全部楼层
你用ACAD2004算了。
回复

使用道具 举报

17

主题

38

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
106
发表于 2003-6-14 13:32:00 | 显示全部楼层

本程序需要使用VLAX类。
什么意思,我不懂
回复

使用道具 举报

158

主题

2315

帖子

10

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2951
发表于 2003-6-15 09:31:00 | 显示全部楼层
http://www.mjtd.com/mcdown/list.asp?id=85
回复

使用道具 举报

17

主题

38

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
106
发表于 2003-6-15 11:15:00 | 显示全部楼层
多谢版主一直照顾我,
回复

使用道具 举报

3

主题

6

帖子

2

银币

初来乍到

Rank: 1

铜币
18
发表于 2012-5-22 15:02:00 | 显示全部楼层
Public Sub Test()  Dim objAcadObject As AcadObject Dim varPickedPoint As Variant Dim objDocument As AcadDocument     ThisDrawing.Utility.GetEntity objAcadObject, varPickedPoint, "請選擇 Polyline"  If TypeOf objAcadObject Is AcadPolyline Then    Dim objPolyline As AcadPolyline    Set objPolyline = objAcadObject    MsgBox "Polyline 長度=" + CStr(objPolyline.Length)  End If  End Sub
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-6-30 04:44 , Processed in 1.721766 second(s), 66 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表