Parche de superficies Bézier para una superficie

It is easy in Mathematica to generate a surface form cubic Bézier patch (as a list of 3D points) by using "BezierFunction"

Ejemplo:

pts = {{{0, 0, 0}, {0, 1, 0}, {0, 2, 0}, {0, 3, 0}}, {{1, 0, 0}, {1, 
     1, 1}, {1, 2, 1}, {1, 3, 0}},
   {{2, 0, 0}, {2, 1, 1}, {2, 2, 1}, {2, 3, 0}},
   {{3, 0, 0}, {3, 1, 0}, {3, 2, 0}, {3, 3, 0}}};

f = BezierFunction[pts]

Show[Graphics3D[{PointSize[Medium], Red, Map[Point, pts]}],
 Graphics3D[{Gray, Line[pts], Line[Transpose[pts]]}], 
 ParametricPlot3D[f[u, v], {u, 0, 1}, {v, 0, 1}, Mesh -> None]]

But now i have an inverse question, if we have a 3D surface, how can we get an cubic Bézier patch basing in it (by some rules)?

preguntado el 04 de julio de 12 a las 08:07

0 Respuestas

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.