Adds the fit point to the spline at a given index.
Supported platforms: Windows only
VBA:
object.AddFitPoint Index, FitPoint
Type: Spline
The object this method applies to.
Access: Input-only
Type: Integer
Position in the fit point list to add the fit point. If the index is a negative number, then the point is added to the beginning of the spline. If the index exceeds the number of fit points in the spline, then the point is added to the end of the spline.
Access: Input-only
Type: Variant (three-element array of doubles)
The 3D WCS coordinates specifying the fit point to be added.
No return value.
AutoCAD adds the point and refits the spline through the new set of points. To view the changes, use the Update or Regen method.
VBA:
Sub Example_AddFitPoint() ' This example creates a spline object in model space. ' It then adds a fit point to the spline. ' Create the spline Dim splineObj As AcadSpline Dim startTan(0 To 2) As Double Dim endTan(0 To 2) As Double Dim fitPoints(0 To 8) As Double startTan(0) = 0.5: startTan(1) = 0.5: startTan(2) = 0 endTan(0) = 0.5: endTan(1) = 0.5: endTan(2) = 0 fitPoints(0) = 1: fitPoints(1) = 1: fitPoints(2) = 0 fitPoints(3) = 5: fitPoints(4) = 5: fitPoints(5) = 0 fitPoints(6) = 10: fitPoints(7) = 0: fitPoints(8) = 0 ' Create the spline object Set splineObj = ThisDrawing.ModelSpace.AddSpline(fitPoints, startTan, endTan) ZoomAll MsgBox "The Spline has " & splineObj.NumberOfFitPoints & " fit points.", , "AddFitPoint Example" ' Define the new fit point Dim newFitPoint(0 To 2) As Double newFitPoint(0) = 8: newFitPoint(1) = 5: newFitPoint(2) = 0 ' Add the new fit point at the first index in the spline's array of points splineObj.AddFitPoint 1, newFitPoint ThisDrawing.Regen True MsgBox "A fit point has been added at Index:1 WCS: 8, 5, 0" & vbCrLf & "The Spline has " & splineObj.NumberOfFitPoints & " fit points.", , "AddFitPoint Example" End Sub
Visual LISP:
(vl-load-com) (defun c:Example_AddFitPoint() ;; This example creates a spline object in model space. ;; It then adds a fit point to the spline. (setq acadObj (vlax-get-acad-object)) (setq doc (vla-get-ActiveDocument acadObj)) ;; Create the spline (setq startTan (vlax-3d-point 0.5 0.5 10) endTan (vlax-3d-point 0.5 0.5 10)) (setq fitPoints (vlax-make-safearray vlax-vbDouble '(0 . 8))) (vlax-safearray-fill fitPoints '(1 1 10 5 5 10 10 0 10 ) ) ;; Create the spline object (setq modelSpace (vla-get-ModelSpace doc)) (setq splineObj (vla-AddSpline modelSpace fitPoints startTan endTan)) (vla-ZoomAll acadObj) (alert (strcat "The Spline has " (itoa (vla-get-NumberOfFitPoints splineObj)) " fit points.")) ;; Define the new fit point (setq newFitPoint (vlax-3d-point 8 5 0)) ;; Add the new fit point at the first index in the spline's array of points (vla-AddFitPoint splineObj 1 newFitPoint) (vla-Regen doc :vlax-true) (alert (strcat "A fit point has been added at Index:1 WCS: 8, 5, 0" "\nThe Spline has " (itoa (vla-get-NumberOfFitPoints splineObj)) " fit points." ) ) )