Creating holes on a cylindrical surface

Hello all,
I am trying to create a porous cylinder model and I need only the half portion of the cylinder to be porous. Can anyone help me with the best approach in dealing this?

I need something similar to the below given image.
porous cylinder


Draw a line that extends past the wall thickness of your main cylinder, then:

  • Pipe cmd on the line to generate a dowel.
  • ArrayPolar cmd of the dowel to create the first row.
  • ArrayLinear cmd can generate the subsequent rows upward on the Z-Axis
  • BooleanDifference cmd can create all of the cut outs.

It’s worth centering your main cylinder on the origin [0,0,0] of the CPLane so that the ArrayPolar can easily rotate around the ZAxis itself.

ArrayPolar and ArrayLinear could easily swap position if you’d rather try that.

The setup looks something like this…

You can start getting pretty fancy if you introduce multiple polar array that have a Z-offset placed into them. That will create a spiral/helical climb along the Z-Axis… which in turn can be rotated around the main cylinder a number of times with another array.

Each row can step down/up in size; by spacing, or by dowel size to have a nice graded change spanning between course to fine.