围绕基点旋转对象。 支持的平台:仅窗口 签名工 务 局: object.Rotate BasePoint, RotationAngle 返回值(RetVal)无返回值。 言论例子工 务 局: Sub Example_Rotate() ' This example creates a lightweight polyline ' and then rotates that polyline. ' Create the polyline Dim plineObj As AcadLWPolyline Dim points(0 To 11) As Double points(0) = 1: points(1) = 2 points(2) = 1: points(3) = 3 points(4) = 2: points(5) = 3 points(6) = 3: points(7) = 3 points(8) = 4: points(9) = 4 points(10) = 4: points(11) = 2 Set plineObj = ThisDrawing.ModelSpace.AddLightWeightPolyline(points) plineObj.Closed = True ZoomAll MsgBox "Rotate the polyline by 45 degrees.", , "Rotate Example" ' Define the rotation Dim basePoint(0 To 2) As Double Dim rotationAngle As Double basePoint(0) = 4: basePoint(1) = 4.25: basePoint(2) = 0 rotationAngle = 0.7853981 ' 45 degrees ' Rotate the polyline plineObj.Rotate basePoint, rotationAngle ZoomAll MsgBox "Rotation completed.", , "Rotate Example" End Sub Visual LISP: (vl-load-com) (defun c:Example_Rotate() ;; This example creates a lightweight polyline ;; and then rotates that polyline. (setq acadObj (vlax-get-acad-object)) (setq doc (vla-get-ActiveDocument acadObj)) ;; Create the polyline (setq points (vlax-make-safearray vlax-vbDouble '(0 . 11))) (vlax-safearray-fill points '(1 1 1 3 2 3 3 3 4 4 4 2 ) ) (setq modelSpace (vla-get-ModelSpace doc)) (setq plineObj (vla-AddLightWeightPolyline modelSpace points)) (vla-put-Closed plineObj :vlax-true) (vla-ZoomAll acadObj) (alert "Rotate the polyline by 45 degrees.") ;; Define the rotation (setq basePoint (vlax-3d-point 4 4.25 0) rotationAngle 0.7853981) ;; 45 degrees ;; Rotate the polyline (vla-Rotate plineObj basePoint rotationAngle) (vla-ZoomAll acadObj) (alert "Rotation completed.") ) |
|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 苏公网安备32011402011833)
GMT+8, 2025-1-8 19:14
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.