Render Heat Map on 3D Mesh / Surface in Rhino

Hi everyone,

I’m new to the forum, not that new to Rhino but a bit rusty and have only ever used it in a fairly limited way since learning 3D modelling at uni a long time ago.

I am now seeing if I can use it at work (completely unrelated to my uni days) , which I am enjoying.

One thing I would like to know if I can do in Rhino (probably can’t get a license for another piece of software) is to render a surface or mesh with a heat map gradient colour. So the high and low points of a surface are differentiated visually by colour. A bit like a topographic chart. Is that possible? I’ve been searching around but can’t seem to find anything on it… which makes me think it’s probably not a thing in Rhino.

Thanks in advance.

Here’s a basic example of coloring mesh vertices by their Z value using Grasshopper:


220521_ColorMeshVerticesByZ_00.gh (310.0 KB)

You can open the file directly with Rhino or drag-and-drop it.

If you’re looking to color the mesh faces instead, you can do something like this (using Python):

Thanks very much… I’ll have a look into that. Completely new to Grasshopper so no idea what I can do with it…

Probably most things you can imagine :wink:

Here’s a list of relevant learning material if you decide to kick the tires a bit:

1 Like

OK great. Its a nice distraction from the rest of my day job! Basic question … Does Grasshopper require an additional license or is it included with Rhino?

Grasshopper is a native Rhino plugin since Rhino 6. And it was always free.

Also, an alternative route you might consider is to learn Python scripting using the EditPythonScript editor (i.e. not using Grasshopper at all). I would recommend starting with Grasshopper though. And then start using the Python or C# scripting components if you want to dabble with textual coding:

1 Like

Have a bit of time to look at this now. i think the colouring by Z value wont work for me. As I’m interested in using this for a 3D object with multiple faces, all that I would like to be able to colour based on local topography, if that makes sense.

I’ll start to have a look through all the videos and things you linked.

You probably need to bare a bit more specific. Sharing example files and/or screenshots always helps :slight_smile:

Hi @Nick_Sharwood-Smith
If your end product is rendering, you can also just use a simple planar mapping and a gradient bitmap to colour your geometry. Or if you can settle for 2 colours, there’s even a procedural gradient material. But as @AndersDeleuran wrote, it’s a good idea to tell us a bit more about what you are actually trying to achieve and maybe post an example file.


HTH, Jakob

2 Likes


So here is a screen shot of an example. Its a mesh, imported as SubD but could just be a mesh. The part I’d be interested in, in this instance, is the part between the red lines, its a sacrificial bar anode so the purpose is to visually show how much material it has lost, surface pitting etc. I would have the original design spec for the anode so I could make a model of how it was new if that would help. Basically when it was new it was a smooth rectangle and now its a pitted and smaller rectangle, or extruded trapezoid.


That’s how the surface looks close up