openscad
openscad copied to clipboard
New parameter "v" for rotate_extrude
The parameter "v" in rotate_extrude, similar to linear_extrude defines an extra linear direction of extruion which makes it easy to design helical screws and other fancy stuff. An extra parameter method, which defaults to "center" defines the per-point elevation depending on the rotated angle. With "center" the center of gravity is calculated on the 2 objects, wherease for setting " linear" steepnees decreases 1/x from the v axis outwards "center" looks better whereas "linear" is more natural.
I understand the desire for introducing vertical offset to rotate_extrude, to allow for much simpler creation of threads and springs etc.
However I'm not sure if a fully configurable vector is the way to go. I can't imagine a use case where I would want to offset anything other than perfectly vertical. Has this been a requested feature or is this simply being done to match the recent linear_extrude work?
I am starting to think that these sort of cases (linear_extrude included) would better handled via a separate affine transformation of shear.
I believe that the result of a vertical offset, and then shear would give the same result, would it not?
I think the existing multmatrix module can be used with a user-constructed matrix to do this, however a builtin module with more convenient parameters would certainly be more user-friendly, reducing cognitive load to construct such a matrix.
One benefit I can think of is that if we know the shear in advance, we can tessellate slightly better.