Evaluate parameters

I don’t understand what the double t and double s parameters? Please, give more information about all parameters this function. I want to get points from nurbsurface and pushing it to mesh. How I can do this?
How I can get points from function Evaluate?

Hello - What is the context of your question? How are you doing this, in a script or Rhino commands. or? I’m not sure I understand what you’re doing but to get a 3d point on a surface the surface is evaluated at a parameter ‘location’, - two numbers that designate a ‘U,V’ location on the surface, which corresponds to a 3d location for a surface in 3d space…


I use opennurbs library in my code, I want to transform opennurbs(3dm) to openmesh(obj,stl). I have ON_Brep surface. if I have surface, how I can get some 3dpoints? Please code this…

If this is outside of Rhino you will need to use compute to get a mesh from a brep.

Sorry, however, I can not use that application, I want to write myself, but I do not understand how I can get points from the function evaluate? Could you give an example of a code that receives points from this function?

It’d help if you linked to the function doc you are trying to use. And what programming language you are using.

http://docs.ros.org/hydro/api/pcl/html/opennurbs__nurbssurface_8cpp_source.html in 847 line ON_NurbsSurface::Evaluate. I use c++.

Given the following:

ON_NurbsSurface srf;

You can evaluate a point, given a u,v parameter as follows:

double u = srf.Domain(0).Mid();
double v = srf.Domain(1).Mid();
ON_3dPoint point = srf.PointAt(u, v);

– Dale

Thank you Dale, How I can get more points from surface? for example 100 or 1000 points.

@vadvirus1997 divide the domain as you see fit.

ON_3dPoint point = srf.PointAt(srf.Domain(0).Max(), double v = srf.Domain(1).Max()); not a point of a figure always. how to calculate max v if u is max?

Please help me, I use
for (double u = NSF->Domain(0).Min(); u <= NSF->Domain(0).Max(); u+=uadd)
for (double v = NSF->Domain(1).Min(); v <= NSF->Domain(1).Max(); v+=vadd, )
ON_3dPoint point = srf.PointAt(u,v);
how to check if u/v is within the trimmed area?