# ThreePointCubic class Null safety

A cubic polynomial composed of two curves that share a common center point.

The curve runs through three points: (0,0), the midpoint, and (1,1).

The Curves class contains a curve defined with this class: Curves.easeInOutCubicEmphasized.

The ThreePointCubic class implements third-order Bézier curves, where two curves share an interior midpoint that the curve passes through. If the control points surrounding the middle point (b1, and a2) are not colinear with the middle point, then the curve's derivative will have a discontinuity (a cusp) at the shared middle point.

• Curves, where many more predefined curves are available.
• Cubic, which defines a single cubic polynomial.
• CatmullRomCurve, a curve which passes through specific values.
Inheritance

## Constructors

ThreePointCubic(Offset a1, Offset b1, Offset midpoint, Offset a2, Offset b2)
Creates two cubic curves that share a common control point.
const

## Properties

a1
The coordinates of the first control point of the first curve.
final
a2
The coordinates of the first control point of the second curve.
final
b1
The coordinates of the second control point of the first curve.
final
b2
The coordinates of the second control point of the second curve.
final
flipped
Returns a new curve that is the reversed inversion of this one.
hashCode int
The hash code for this object.
midpoint
The coordinates of the middle shared point.
final
runtimeType Type
A representation of the runtime type of the object.

## Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed.
inherited
toString()
A string representation of this object.
override
transform()
Returns the value of the curve at point `t`.
inherited
transformInternal()
Returns the value of the curve at point `t`.
override

## Operators

operator ==(Object other) bool
The equality operator.
inherited