# `FitCubic`

*Function*

## Declaration

```swift
func FitCubic(_ d: UnsafePointer<NSPoint>!, _ first: Int32, _ last: Int32, _ tHat1: NSPoint, _ tHat2: NSPoint, _ error: Double, _ pen: (any GSPenProtocol & NSObjectProtocol)!, _ hasMove: UnsafeMutablePointer<ObjCBool>!)
```

```objc
void FitCubic(const NSPoint *d, int first, int last, NSPoint tHat1, NSPoint tHat2, double error, NSObject<GSPenProtocol> *pen, BOOL *hasMove);
```

```python
FitCubic(d: NSPoint, first: int, last: int, tHat1: NSPoint, tHat2: NSPoint, error: float, pen: NSObject<GSPenProtocol>, hasMove: bool)
```

## See Also

### Curve Fitting

- [`FitCurve`](/Core/GlyphsCore/FitCurve)
- [`FitCubicSingle`](/Core/GlyphsCore/FitCubicSingle)
- [`GSDetectBreaksAndFit`](/Core/GlyphsCore/GSDetectBreaksAndFit)
- [`GSCubicFitsPoints`](/Core/GlyphsCore/GSCubicFitsPoints)
- [`GSCubicCollinearish`](/Core/GlyphsCore/GSCubicCollinearish)
- [`GSCalculateErrorLength`](/Core/GlyphsCore/GSCalculateErrorLength)
- [`GSSignificantT`](/Core/GlyphsCore/GSSignificantT)
- [`splitBezierCurveTo`](/Core/GlyphsCore/splitBezierCurveTo)

