CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

ActiveX 开发指南

相关分类

弧长属性 (ActiveX)

2023-1-3 22:47| 发布者: admin| 查看: 497| 评论: 0|来自: AutoCAD

摘要: 获取圆弧的长度。

获取圆弧的长度。

支持的平台:仅窗口

签名

工 务 局:

object.ArcLength
对象

类型:弧形

此属性适用的对象。

属性值

只读:是的

类型:

弧的长度。

言论

没有额外的评论。

例子

工 务 局:

Sub Example_ArcLength()
    ' This example creates an Arc in model space and returns the length of the new Arc
    Dim arcObj As AcadArc
    Dim centerPoint(0 To 2)  As Double
    Dim radius As Double
    Dim startAngleInDegree As Double, endAngleInDegree As Double
    Dim startAngleInRadian As Double, endAngleInRadian As Double
    
    ' Define the Arc
    centerPoint(0) = 0: centerPoint(1) = 0: centerPoint(2) = 0
    radius = 5#
    startAngleInDegree = 10#: endAngleInDegree = 230#

    ' Convert the angles in degrees to angles in radians
    startAngleInRadian = startAngleInDegree * 3.141592 / 180#
    endAngleInRadian = endAngleInDegree * 3.141592 / 180#
    
    ' Create the arc object in model space
    Set arcObj = ThisDrawing.ModelSpace.AddArc(centerPoint, radius, startAngleInRadian, endAngleInRadian)
    ThisDrawing.Application.ZoomAll
    
    ' Return length of new arc
    MsgBox "The length of the new Arc is: " & arcObj.ArcLength
End Sub

Visual LISP:

(vl-load-com)
(defun c:Example_ArcLength()
    ;; This example creates an Arc in model space and returns the length of the new Arc
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))
  
    ;; Define the Arc
    (setq centerPoint (vlax-3d-point 0 0 0)  
          radius 5
          startAngleInDegree 10
          endAngleInDegree 230)

    ;; Convert the angles in degrees to angles in radians
    (setq startAngleInRadian (/ (* startAngleInDegree 3.141592) 180))
    (setq endAngleInRadian (/ (* endAngleInDegree 3.141592) 180))
    
    ;; Create the arc object in model space
    (setq modelSpace (vla-get-ModelSpace doc))  
    (setq arcObj (vla-AddArc modelSpace centerPoint radius startAngleInRadian endAngleInRadian))
    (vla-ZoomAll acadObj)
    
    ;; Return length of new arc
    (alert (strcat "The length of the new Arc is: " (rtos (vla-get-ArcLength arcObj) 2)))
)

路过

雷人

握手

鲜花

鸡蛋

最新评论

QQ|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 )

GMT+8, 2024-5-19 12:23

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部