指定圆弧、直线或椭圆的端点。 支持的平台:仅窗口 属性值只读:是的,除了可读写的 Line 对象 类型:变体(双精度的三元素数组) 表示对象端点的 3D 坐标。 言论![]() 圆弧、椭圆和直线的端点 注意:不能更改圆弧或椭圆的端点。要编辑弧,请使用和属性。要编辑椭圆,请使用、和属性。EndAngleRadiusEndAngleMajorAxisRadiusRatio
例子工 务 局: Sub Example_EndPoint()
' This example creates an elliptical arc and then
' finds the coordinates of its start and end points.
Dim ellObj As AcadEllipse
Dim majAxis(0 To 2) As Double
Dim center(0 To 2) As Double
Dim radRatio As Double
Dim startPoint As Variant
Dim endPoint As Variant
' Create an ellipse in model space
center(0) = 5#: center(1) = 5#: center(2) = 0#
majAxis(0) = 10: majAxis(1) = 20#: majAxis(2) = 0#
radRatio = 0.3
Set ellObj = ThisDrawing.ModelSpace.AddEllipse(center, majAxis, radRatio)
' Enter a start angle of 45 degrees, and an end angle of 270 degrees
ellObj.startAngle = 45 * (3.14 / 180)
ellObj.endAngle = 270 * (3.14 / 180)
ZoomAll
' Find the start and endpoints for the ellipse
startPoint = ellObj.startPoint
endPoint = ellObj.endPoint
MsgBox "This ellipse has a start point of " & startPoint(0) & ", " & startPoint(1) & ", " & startPoint(2) & " and an endpoint of " & endPoint(0) & ", " & endPoint(1) & ", " & endPoint(2), vbInformation, "EndPoint Example"
End Sub
Visual LISP: (vl-load-com)
(defun c:Example_EndPoint()
;; This example creates an elliptical arc and then
;; finds the coordinates of its start and end points.
(setq acadObj (vlax-get-acad-object))
(setq doc (vla-get-ActiveDocument acadObj))
;; Create an ellipse in model space
(setq center (vlax-3d-point 5 5 0)
majAxis (vlax-3d-point 10 20 0)
radRatio 0.3)
(setq modelSpace (vla-get-ModelSpace doc))
(setq ellObj (vla-AddEllipse modelSpace center majAxis radRatio))
;; Enter a start angle of 45 degrees, and an end angle of 270 degrees
(vla-put-StartAngle ellObj (* 45 (/ 3.14 180)))
(vla-put-EndAngle ellObj (* 270 (/ 3.14 180)))
(vla-ZoomAll acadObj)
;; Find the start and endpoints for the ellipse
(setq startPoint (vlax-safearray->list (vlax-variant-value (vla-get-StartPoint ellObj))))
(setq endPoint (vlax-safearray->list (vlax-variant-value (vla-get-EndPoint ellObj))))
(alert (strcat "This ellipse has a start point of " (rtos (nth 0 startPoint) 2) ", "
(rtos (nth 1 startPoint) 2) ", "
(rtos (nth 2 startPoint) 2) " and an endpoint of "
(rtos (nth 0 endPoint) 2) ", "
(rtos (nth 1 endPoint) 2) ", "
(rtos (nth 2 endPoint) 2)))
)
|
|Archiver|CAD开发者社区
( 苏ICP备2022047690号-1 苏公网安备32011402011833)
GMT+8, 2025-10-29 06:02
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.