# Approximate a Surface

Hi all,
maybe someone has the same problem and got a solution.

I have a list of unsorted points. I can Interpolate them with GeomAPI_PointsToBSpline. That works fine. But if i try to interpolate them to a surface with GeomAPI_PointsToBSplineSurface, i didnt get successful results, because the points are not sorted. How can i get TColgp_Array2OfPnt from TColgp_Array1OfPnt ready for the interpolation. Or is there an other function for interpolation.

thanks, juri

Hello Juri,
you might want to look at GeomPlate_BuildPlateSurface, you can build a NURBS surface from unsorted points. One of the sample (...\samples\standard\mfc\11_Plate) show you how to use it.

Good Luck,
Francois.

Hello Francois,

thank you for the hint. The code from the sample works fine and was a big help.

bye, juri

This method works fairly well. But an application condition must be pointed out: (In inverse steps)

Suppose that some points are picked from a surface. We use these points to reconstruct a surface by the plate method. It's easy to see that if the projection of the original surface on the plane XOY has self-intersection, the surface construction from these points may fail.
Under this constance, the plane XOY should be a local plane on which the projection of the original surface has no intersection.
Since the original surface doesn't exist, there is still some work to do to insure the construction.

I am wondering what is the parameters in this example "11_Plate" that help us control the amount of approximation (e.g. If I want to keep the approximation as less as possible like least square method) Any help please please please.

Could you please send me the points? I'd like to have a try.

Thanks!

I am wondering what is the parameters in this example "11_Plate" that help us control the amount of approximation (e.g. If I want to keep the approximation as less as possible like least square method) Any help please please please.