add vector struct
add quadratic curve interface