How to displace brep with image

Hi everyone,

I am new in grasshopper and I have been struggling on this problem for few days already…
The thing I want to do is displacing a greyscale image on a brep and so it has the image’s texture on a real 3D model. Just like when you are doing rendering on surface with displacement effect.

Below are the steps I want to implement in my file;

  1. Divide points on both brep and image
  2. Apply the divided points follow on brep shape
  3. Make the divided points on brep are controllable based on greyscale image
  4. Create new surface by using new points

I can’t do the step 2… as now all divided points they are on a plane… Please help~

Reference: Below link is something which is exactly what I want but I need it in brep… I tried their way but seems mesh is quite different to brep…

Greyscale image on (1.6 MB)

Are you sure you want to do this in brep?
It is absolutely faster and easier to do these kind of things in Mesh.
I would suggest you to follow the steps in the Link provided with Mesh and convert it into Nurbs through Subdivision if you have access to Rhino WIP
Doing things in mesh could be comparatively less accurate in some cases, but it works in most cases.
Also, assuming you are not familiar with Mesh editing, try to convert your surface into mesh using QuadMesh command in Rhino WIP if it is difficult to re-model the surface in the picture.


Hi June,

I did tried to follow the link but the UV mapping is totally changed on my brep. I don’t have WIP access for rhino and some issues could be happened after the conversion from Mesh to Nurbs. For now I will try not to do reverse engineering since the original data is Nurbs type.

I tried a command “heightfield” in rhino which allow to create a 3D texture based on greyscale image on a Nurbs surface but the surface has to be built on a flat planer.

Hi, have you figured out?
Check this if it can help you.
PS. Would only work on Rhino 6 and above

Best (548.2 KB)

Hi June,

The sample from yours is FANTASTIC and it is exactly what I want to implement~! Thank you for taking time to study and setup everything and details.

Now I just need to study a little bit the sample to understand the mechanism as it looks pretty complicated for me XD.