Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Using an array of shapes in sweep() #6

Open
Jerimon1998 opened this issue May 10, 2017 · 3 comments
Open

Using an array of shapes in sweep() #6

Jerimon1998 opened this issue May 10, 2017 · 3 comments

Comments

@Jerimon1998
Copy link

Is there an existing way to use a different shape for each point in path_transforms, besides using the transformation matrices in path_transformations? Or is this something yet to be implemented?

I need this to create a special kind of spur gear with teeth that are pointed at the sides (sort of like the involute curve already on the teeth). I already have the methods down for creating the individual shapes for each step in the path (thanks to the hyperbolic worm gear that this gear mates with).
My initial thought for a workaround is to use some version of loft() with a large number of these shapes, achieving a reasonable curve, but it may be quite tedious for CGAL to render.

@OskarLinde
Copy link

OskarLinde commented May 10, 2017 via email

@Jerimon1998
Copy link
Author

Oh yeah, I forgot to mention the vertices. I did assume that a consistent number of points would be needed, and it is actually the default of the method I am using.
Each gear shape is basically a point array version of the involute gears in MCAD. As such, my plan was to use a function to set each shape with a different backlash. The number of points always stays the same, but the shapes are not convex, which could throw a wrench into the plan for any methods not capable of handling such shapes.
So far the only functional "loft" that I have found for openscad is one that uses python to prepare the shapes and then openscad to execute the tweening. The entire workflow for my existing project is in OpenSCAD, so I will have to either find a way to replicate the code in OpenSCAD or go back to using my old dxf->xyz->scad workflow (except now as dxf->xyz->python->scad).

@kintel
Copy link
Member

kintel commented May 12, 2017

Sounds like skin() would work: https://github.com/openscad/list-comprehension-demos#extrusionscad

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants