SolveSpace Logo SOLVESPACE -- parametric 2d/3d CAD
Examples
Tutorials
Features
Download
Reference
Technology
Library
Forum
Contact
USER FORUM

(you are viewing a thread; or go back to list of threads)

frustum-extrusion patch for solvespace-3.1 (by cmpxchg)
Hi,

Find attached a patch based on a old development branch of solvespace, but now made compatible with solvespace-3.1.

It adds a frustum extrude feature, like a variant of normal extrude, helix, lathe and revolve. It can be used for bevel-gears, and slant vases.
It works and I already made 3D prints with the STL outputs.

Surprisingly, it only took me an hour to get this working, I found the codebase amazingly well structured - adding such complex feature with less than 30 kbytes of code.
Thanks whitequark and all successor developers for this awesome work! I hope somebody can take up the effort of integrating and releasing features like frustum extrude in upcoming version(s) of this awesome piece of 3D design code!

Note: File saving and integration/mixing in and opeing in older versions of solvespace might be painful and buggy, but for over-holiday expermentation it should be good enough for now.

cmpxchg
Sun Dec 24 2023, 13:57:14, download attachment frustum.patch
(no subject) (by Paul)
Nice! That looks like my old frustum implementation with an icon added to the toolbar ;-) Some comments:

This is unlikely to make it into mainline solvespace. But if someone needs it short term to make some geometry, by all means do so. Compatibility with future versions is not likely though.

I was never happy that the scaled end could not be resized by dragging the mouse. There were maybe some other minor annoyances too. Since then I've decided to undertake a much more comprehensive task, which will be my idea of extrusion along a path, and frustum will be a subset of that capability.

It always bothers me (in a good way) when people maintain funcionality on their own and we don't get it in officially for whatever reason. Like when someone implemented intersection booleans as A-(A-B) it kind of triggered me and then Ruevs to get it done "the right way". There have been other cases too ;-) So I feel like you're lighting a fire under my arse to finally do a complex feature so people won't have to run around using a patched version! ;-)

I love it when people actually dig into the code!
Sun Dec 24 2023, 18:30:04
(no subject) (by cmpxchg)
Extruding along a path would indeed be another great feature, especially if the shapes of the source and destination can be (vastly?) different, and in different size too, linearly or other-function sizing along the path.
And what about the one-sided and two-sided versions of that extrude, would it just create a implied mirrored path on-the-fly ?

I wouldn't know how to even select a 2D workplane and center of a linked in assembly to do that - clicking a point and vector of the center of a pipe-like structure ? How to find all the lines of inner and outer side of the extrusion, and how to map it to the source shape?

Also, currently the order of groups is very rigid and logical, could it be changed afterwards to 'make ends meet' ?
Mon Dec 25 2023, 04:23:06
intégrer ce patch (by joliez)
Bonjour,
Comment intégrer ce patch ?
Merci de votre aide.
Thu Dec 28 2023, 12:05:19
(no subject) (by cmpxchg)
@joliez It is a proof-of concept, to inspire development and new developers - not ready for turn-key integration within file-formats and no thoughts whatsever for forwards or backwards-compatibility.
Fri Dec 29 2023, 10:47:12
Post a reply to this comment:
Your Name:
Your Email:
Subject:
(no HTML tags; use plain text, and hit Enter for a line break)
Attached file (if you want, 5 MB max):
© 2008-2022 SolveSpace contributors. Most recent update June 2 2022.