No problem, I think I'm just excited someone else is interested in OpenSCAD... Here's the code that'll work: Code: $fn=90; translate([0,0,30]) rotate_extrude(angle=360) translate([9,0,0]) circle(d=2); I indented the operations to show the order they're applied, innermost to outermost. The translates have to be done separately, the [9,0,0] one first to move the circle out to where it will make the ring, and the [0,0,30] after the rotate_extrude to move the object to where you want it. The $fn=90 sets the number of faces "circular" operations use; you can change it to whatever you want to make your objects smooth enough. I use $fn=6 to make bolt heads, works like a charm... Yeah, OpenSCAD is more than a scripting language, it's a full programming language with all the attendant baggage. I use it because I think that way after decades of training and experience, but I don't expect it to become mainstream. It does have its uses; right now I'm writing OpenSCAD parts that can be changed by adjusting a few parameters; my first one is a double-hung window you can play with here: https://glenn.pulpitrock.net/customizable_models/, read the intro and click on Double-Hung Window at the bottom...