乐筑天下

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

[求助] 请高手请入

[复制链接]

12

主题

40

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
88
发表于 2007-1-6 20:58:00 | 显示全部楼层 |阅读模式
在用Pline画线时按提示
指定指定下一个点或 [圆弧(A)/闭合(C)/半宽(H)/长度(L)/放弃(U)/宽度(W)]:指定点 (2) 或输入选项
                        下一个点或 [圆弧(A)/闭合(C)/半宽(H)/长度(L)/放弃(U)/宽度(W)]:指定点 (2) 或输入选项
       
如果输入 A  即画的多段线中有的部份是圆弧,请问怎样用程序的方法来分别出带圆弧的多段线和不带圆弧的多段线,有相应的不同属性吗?
回复

使用道具 举报

12

主题

40

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
88
发表于 2007-1-6 21:21:00 | 显示全部楼层
刚才在本站找到如下代码应该能实现,可是我不懂lisp,哪位大侠帮忙用vba解释一下
(defun checkarc (ename)
  (setq obj (vlax-ename->vla-object ename))
  (setq plist (vlax-safearray->list
(vlax-variant-value
  (vla-get-coordinates obj))))
  (setq n 0 bu nil)
  (repeat (/ (length plist) 2)
    (if (/= (vla-getbulge obj n) 0)
      (setq bu T)
     )
    (setq n (+ n 1))
  )
  bu
)
回复

使用道具 举报

12

主题

40

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
88
发表于 2007-1-6 21:47:00 | 显示全部楼层
' 按照起点、终点和凸度计算多段线中某一段的长度
Function GetArcLeng(PointS As Variant, PointE As Variant, Bugle As Double) As Double
    Dim Angle As Double
    Dim Radius As Double
    Dim Length As Double
    Dim Dist As Double
    Dim i As Integer
    ' 计算起点到终点的长度
    For i = LBound(PointS) To UBound(PointS)
        Dist = Dist + ((PointS(i) - PointE(i)) ^ 2)
    Next
    Length = Sqr(Dist)
    ' 如果凸度为0,则为直线段,所以起点到终点的长度就是需要的长度
    If Bugle = 0 Then
        GetArcLeng = Length
    Else
        ' 如果凸度不为零,则计算弧段的长度。按照凸度的定义,凸度为包角的1/4的正切值。
        Angle = 4 * Atn(Abs(Bugle))
        ' 计算弧段的半径
        Radius = (Length / 2) / Sin(Angle / 2)
        ' 计算弧段的长度
        GetArcLeng = Radius * Angle
    End If
End Function中的Bugle怎样得到其值?
回复

使用道具 举报

158

主题

2315

帖子

10

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2951
发表于 2007-1-7 14:01:00 | 显示全部楼层
凸度可从多段线的属性中取得,自己看看。
回复

使用道具 举报

1

主题

25

帖子

6

银币

初来乍到

Rank: 1

铜币
29
发表于 2013-5-31 16:42:00 | 显示全部楼层
计算多义线的凸度,好东东
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-6-29 19:08 , Processed in 0.511233 second(s), 73 queries .

© 2020-2025 乐筑天下

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