Hello,

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…

-Pascal

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…

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.

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?