スプラインのノット ベクトルを取得します。
サポートされているプラットフォーム: Windows のみ
読み込み専用: いいえ
タイプ: バリアント型(倍精度実数の 3 要素配列)
スプラインのノット ベクトル。
追加の注意はありません。
VBA:
Sub Example_Knots() ' This example creates a Spline object in model space and ' returns the knot vector for the new Spline Dim splineObj As AcadSpline Dim startTan(0 To 2) As Double, endTan(0 To 2) As Double Dim fitPoints(0 To 8) As Double Dim knotVector As Variant ' Define the Spline object startTan(0) = 0.5: startTan(1) = 0.5: startTan(2) = 0 endTan(0) = 0.5: endTan(1) = 0.5: endTan(2) = 0 fitPoints(0) = 0: fitPoints(1) = 0: fitPoints(2) = 0: fitPoints(3) = 5 fitPoints(4) = 5: fitPoints(5) = 0: fitPoints(6) = 10: fitPoints(7) = 0: fitPoints(8) = 0 ' Create new Spline object Set splineObj = ThisDrawing.ModelSpace.AddSpline(fitPoints, startTan, endTan) ThisDrawing.Application.ZoomAll ' Display the knot vector of the new Spline knotVector = splineObj.Knots MsgBox "The knot vector of the new Spline is: " & vbCrLf & _ knotVector(0) & vbCrLf & _ knotVector(1) & vbCrLf & _ knotVector(2) End Sub
Visual LISP:
(vl-load-com) (defun c:Example_Knots() ;; This example creates a Spline object in model space and ;; returns the knot vector for the new Spline (setq acadObj (vlax-get-acad-object)) (setq doc (vla-get-ActiveDocument acadObj)) ;; Define the Spline object (setq startTan (vlax-3d-point 0.5 0.5 0) endTan (vlax-3d-point 0.5 0.5 0) fitPoints (vlax-make-safearray vlax-vbDouble '(0 . 8))) (vlax-safearray-fill fitPoints '(0 0 0 5 5 0 10 0 0 ) ) ;; Create new Spline object (setq modelSpace (vla-get-ModelSpace doc)) (setq splineObj (vla-AddSpline modelSpace fitPoints startTan endTan)) (vla-ZoomAll acadObj) ;; Display the knot vector of the new Spline (setq knotVector (vlax-safearray->list (vlax-variant-value (vla-get-Knots splineObj)))) (alert (strcat "The knot vector of the new Spline is: " "\n" (rtos (nth 0 knotVector) 2) "\n" (rtos (nth 1 knotVector) 2) "\n" (rtos (nth 2 knotVector) 2))) )