指定圆弧、直线或椭圆的起点。 支持的平台:仅窗口 属性值只读:是的,除了可读写的 Line 对象 类型:变体(双精度的三元素数组) 表示对象起点的 3D 坐标。 言论![]() 圆弧、椭圆和直线的起点 不能更改圆弧或椭圆的起点。要编辑弧,请使用和属性。要编辑椭圆,请使用、和属性。EndAngleRadiusEndAngleMajorAxisRadiusRatio 例子工 务 局: Sub Example_StartPoint()
' This example creates an elliptical arc and then
' finds the coordinates of its start point and endpoint.
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, "StartPoint Example"
End Sub
Visual LISP: (vl-load-com)
(defun c:Example_StartPoint()
;; 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-28 02:10
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.