# Partial rotate_extrude (OpenSCAD) working with 0 radius

## by florianlb, published

## Description

While designing an object for my 3D printer, I used the partial_rotate_extrude provided by CarryTheWhat. However, I realized that his routine did not work with a zero radius. I slightly modified the script to account for a new parameter to permit a partial_rotate_extrude working with a translation radius of zero.

## Remixed From

## Tags

## License

## Give a Shout Out

## Instructions

Use (same as rotate_extrude): partial_rotate_extrude(angle = 90, radius = 3, axial_range= 5, convex = 20) circle(5);

This will extrude the circle for `angle`

degrees about the origin at a distance of `radius`

. The 'axial_range' is the object's dimension perpendicular to the rotation axis. The convexity parameter is the same as in rotate_extrude, see en.wikibooks.org/wiki/OpenSCAD_User_Manual/2D_to_3D_Extrusion

More elaborate example, inspired from the 'extruding a polygon' manual section: partial_rotate_extrude(angle = 255, radius = 0, axial_range = 5, convex = 10) polygon( points=[[0,0],[2,1],[1,2],[1,3],[3,4],[0,5]] );

Copy/Paste access:

module pie_slice(radius, angle, step) {
for(theta = [0:step:angle-step]) {
rotate([0,0,0]) linear_extrude(height = radius*2, center=true)
polygon( points = [[0,0],[radius * cos(theta+step) ,radius * sin(theta+step)],[radius*cos(theta),radius*sin(theta)]]);
}}

module partial_rotate_extrude(angle, radius, axial_range, convex) { intersection () { rotate_extrude(convexity=convex) translate([radius,0,0]) child(0); pie_slice(radius + axial_range, angle, angle/10); }}

#### File Name

#### Downloads

#### Size

Please Login to Comment

You're welcome. Happy it helps you! :)