获取圆弧的长度。 支持的平台:仅窗口 属性值只读:是的 类型:双 弧的长度。 言论没有额外的评论。 例子工 务 局: 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)))
)
|
|Archiver|CAD开发者社区
( 苏ICP备2022047690号-1 苏公网安备32011402011833)
GMT+8, 2025-10-29 08:39
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.