Minor update for Toothed Wheel:
-> Initial set of object parameters are attached.
-> Got the control handles up and running. They should always maintain legal values whichever handles you play around with.
-> Parameters are set to support both involute and ring gears. Items not relevant to the current setup would be hidden.
note: in the video, the mesh is just a proxy for the final geometry. The green section would be where the teeth should go.
Current to-do is just generating the basic gear shape. I'm essentially at the halfway point on the development on this plugin. I'm checking out the cinema4dsdk's source files to see what needs to be done. Kinda exhausting figuring out which things do what without comments on the code...
As for the tooth profile, I'm still contemplating on how I'm gonna set it up. So far I've got a few options:
No need to move out of object mode.
What you see is what you get; no need to compensate for the rectangular-to-polar coordinate conversion.
Animatable if the data is configured to support it.
If you want to transfer the tooth shape, it'll take some work.
You'll have to zoom in on one tooth to modify it.
Can just drop a spline from the object manager. (It's possible to store the point values of the spline into a hidden variable, so the shape should be retained after deleting the reference spline. Although, if you want the teeth to be animatable, you might have to keep the spline somewhere.)
Zooming/scaling wouldn't be an issue as end points of the spline can be used as reference for the tooth's proportions.
Multiple Toothed Wheel objects can share the same spline.
Possible tooth misalignment
Point mismatch as there's a constant number of control points(6 movable points +2 static points).
Also, developing the tools to mirror/reflect the spline might be trickier.
Another alternative would be to create a custom gui for it, although I haven't read on creating those just yet. And I think coding it to behave in real-time could get messy.
I'm eyeing the spline option at the moment. I guess I'll just have to find a way to constrain the points to ensure stability.
I'll add a few preemptive answers for some questions I'll be expecting.
1. This'll be a paid plugin. That's why I'm trying to get it reasonably feature-rich. As for the price point, I'll still have to think about that. But I'll be developing a few free plugins after this.
2. Toothed Gear is essentially a polygon object primitive, and will behave as such.
4. As seen on the video, there are parts of the gear that can be beveled. I'm not adding options for parametric fillets to maintain mesh integrity. But as I've cleaned the generated mesh, you can use the Bevel command after making it editable without having to worry about artefacts. (of course, this assumes your bevel parameters are within reasonable ranges)
3. Release1 would handle only involute and ring gears. I'll probably add an option for "none" on the tooth shape, so it can function as an alternative tube primitive. Racks, Bevel gears, and Helicals would be considered for release2 if there's enough of a demand.
4. No, I won't be adding options for keys, grooves, holes or spokes. That can easily be done with booleans or a separate mesh, or extra geometry after you make it editable. The topology should be clean enough that your machine shouldn't take too much of a hit from adding booleans. I'll drop in a few rim meshes in the sample file.
5. Currently I'm prototyping this on C4D r11.5 on a 32-bit windows machine(Vista Home Premium). After I compile the stable r11.5 builds I'll be recompiling it for r12, and possibly r10. I'm only using basic modeling commands for this one, so reworking it shouldn't be too hard.
I hope I can get your opinions and suggestions for it guys. I want Toothed Wheel to be a well-rounded polygon primitive, not something just for dynamics-simulated gear rigs.
EDIT: Sorry, But I forgot to mention that I am gonna do Mac builds as well. I'll just have to look for a contact who can help me compile it.
Loading more stuff…
Hmm…it looks like things are taking a while to load. Try again?