Puede hacerlo utilizando la rutina de la biblioteca wykobi C++ para las curvas de bezier cúbicas. La biblioteca de Wykobi también admite curvas cuadradas de Bezier.
Por supuesto, como alguien señaló que no desea todos los puntos (aunque no es imposible, solo llevaría un tiempo infinito :).Wykobi hace que sea fácil obtener un cierto número de puntos: si su inicio, c1, c2 y puntos finales (donde c1, c2 son los puntos de control) son exactamente los mismos que los dados a CGContextAddCurveToPoint, entonces los puntos quedarán perfectamente en la línea dibujada por gráficos centrales, para que pueda hacer cosas como dibujar un patrón en varios puntos de la ruta.
Ver: http://www.codeproject.com/Articles/22568/Computational-Geometry-C-and-Wykobi
Además, después de que empecé a usar wykobi He oído que hay un parecido tal vez incluso mejor biblioteca, que forma parte de Boost, pero no han comprobado todavía.
Creé un C++ Class WPoint como un puente entre los puntos de wykobi y los CGPoints (¡C++ divertido!). Aquí hay algo de código (sin WPoint, pero se puede imaginar que es exactamente el mismo diseño que un CGPoint así que si lo hace el reparto derecha se puede convertir fácilmente
NSMutableArray* result = [[NSMutableArray alloc] init];
wykobi::cubic_bezier<CGFloat,2> bezier;
bezier[0] = (WPoint)p1; // start point, in CG we did a CGMoveToPoint
bezier[1] = (WPoint)b1i; // control 1
bezier[2] = (WPoint)b2i; // control 2
bezier[3] = (WPoint)p2; // end point
std::vector<WPoint> point_list;
int numPoints = p2.dist(p3) * pointDensity;
// *** here's the magic ***
wykobi::generate_bezier(bezier,std::back_inserter(point_list), numPoints);
for (int i=0; i<numPoints; i++) {
CGPoint p = (CGPoint)(point_list[i]);
[result addObject:[NSValue valueWithCGPoint:p]];
}
// result has your points!
Aquí hay un enlace a la biblioteca de geometría Boost:. http://www.boost.org/doc/libs/1_47_0/libs/geometry/doc/html/geometry/introduction.html
Aquí ... http://stackoverflow.com/questions/4854035/how-do-i-detect-a-touch-on-a-uibezierpath-and-move-a-ball-along-that/ 4855932 # 4855932 – Fattie