def getCubicPoint(along, begin, controlPoints, end):
 segmentBegin = getQuadraticPoint(along, begin, controlPoints[0], controlPoints[1])
 segmentEnd = getQuadraticPoint(along, controlPoints[0], controlPoints[1], end)
 return (((1.0 - along) * segmentBegin) + (along * segmentEnd))

def getCubicPoint ( along , begin , controlPoints , end ) : segmentBegin = getQuadraticPoint ( along , begin , controlPoints [ 0 ] , controlPoints [ 1 ] ) segmentEnd = getQuadraticPoint ( along , controlPoints [ 0 ] , controlPoints [ 1 ] , end ) return ( ( ( 1.0 - along ) * segmentBegin ) + ( along * segmentEnd ) )
get the cubic point .