Beginner needs help with extrusion

I am creating a 3d map using Cadmapper and Rhino. I can create the 3d map in Cadmapper with and without topology. If i create a map without topology, i can simply create a square/rectangle below it and do a solid extrude up and connect with the map. If i create the map WITH topology and import it into Rhino, if i perform the same solid extrude up, it engulfs/swallows parts of the map by the time it’s connected to it so there’s no gaps around the edge.
Is there a way to create the topological map and create a flat base platform in Rhino that doesn’t ruin the map i just created?

Yes, there is a way to create a flat base platform for your topological map in rhino without ruining the map. Here are the steps you can follow:

  1. import the topological map into Rhino
  2. draw a rectangle that is larger than the map and position it beneath the map
  3. use the Trim command to trim away any overlapping parts of the map that extend beyond the rectangle
  4. select the rectangle and use the ExtrudeCrv command to extrude it upwards to create a platform
  5. use the BooleanDifference command to subtract the map from the platform. This will create a flat base platform that does not swallow or engulf parts of the map
  6. you can then use the solid extrude command to raise the map above the platform.

Thank you very much for your help. I’m completely new to using Rhino, i only started yesterday. I have 1 other small issue. The map is made up of lots of separate items. For example, when i start the BooleanDifference command, i select the base to be cut, press enter, then if i select something on the map, it only selects that one particular thing as opposed to the entire map.
What am i doing wrong or missing here? Thank you again for your help.

Hi Rich -
You should always provide a 3dm file with the relevant geometry so that we don’t have to make guesses about what you are seeing on your screen.
Apart from that, and based on the information that you provided, I would advise against using Boolean operations here. It sounds like your input objects can be open and that will lead to - for a beginner - unexpected results.
I would just explode the box, delete the top and use the “topology” geometry to Trim the sides where necessary.

Hi Wim, thanks for the reply. I have attached the requested file of what i’m working on. Firstly, i figured that i can simply select everything in the map and group them together making selecting the map easier, however what happens when i do the booleandifference cut is absolutely nothing. The extruded base doesn’t change shape in any way, nor does the map, and if i move the map away (up, for example) the base is still in it’s original shape.
It’s like the cut didn’t do anything.
Dublin Map.3dm (3.6 MB)

Hi Rich -

Yes, for selection, that can come in handy. But not so for doing any operations with this geometry. If necessary - for selection - you can create a “Named Selection”.

As I said, DO NOT use a Boolean operation on this unless you know what that does.

In your model, basically you are only interested (for now) in these two objects:

The box that you drew is too big for the terrain so you can simply delete that.
Select the terrain (mesh) and run BoundingBox. Accept the defaults.

Scale1D that new box so that it goes deep enough for your requirements.

→ Here, I’ve scaled 1D from the mid point, so that goes up and down…

Select the mesh object (SelMesh)

… and run DupBorder

Run Trim and select the top of the box:


You, sir, are my hero!! You’ve quite literally made my day as i can now complete this project and create a 3d map for my wife.

Many many thanks,


Actually, @wim , if i may ask 1 more question please? In this map, i’m trying to extrude solid the water feature so i can lower it -3mm then use it as a boolean cut against the base, which would give a nice little definition to the map of where the water lies.
Here’s the problem: If i create the map without topology, i can simply extrude solid the layer, after i hide all the other layers, and i get a nice tall solid shape that i can work with, then simply drop it 3mm and do the booleandifference cut and i’m done. When i create the map WITH the topology, and i try the same thing after creating my base per your instruction, the extruded water layer is NOT solid. It has no top or bottom to is so it’s more like a wall in the shape of the water layer as opposed to the solid piece i expected.
Could you possibly help me figure out this issue please?

Hi Rich -

If, by that, you mean the outline of the Liffey on the “water” layer, doing what you describe would get rid of bridges and embankment details, so I feel more questions coming up : )


Your file is in meters, and I take it you mean -3 meters?

At any rate, yes, in your file “with topography”, all outlines follow this terrain and are, therefore, not planar. When extruding non-planar curves, you will get open polysurfaces. You could either copy the planar curve from the file “without topography” into this model, or create a copy of that water curve in this file and move that copy up or down a bit to keep it away from the rest.
With this new curve selected, run SetPt. Deselect the Set X and the Set Y options, leaving only the Set Z option checked. Click OK and select any point to place that new curve.

Extruding that curve will create a closed polysurface.

As your terrain is not flat, and water runs downhill, you’ll have to decide how deep you want to dig this river on which end. It won’t be -3 meters on both sides. There’s a difference of about 2 meters in elevation between the two sides.

Since you insist…
Before doing the Boolean operation on these open and closed objects, select the mesh and run Dir.

This shows that the normals of the open mesh object are pointing up. In this case, this will lead to the expected result when running a Boolean difference operation on this.

Since this is a mesh object, you’ll need the MeshBooleanDifference command.

Back to bridges and embankment details - you could run the same procedure on each of the separate and more detailed outlines as selected in this picture: