Subframe now switchable between aluminium and carbon versions; TODO carbon

variant lacks its wheel leg.
This commit is contained in:
Simon Brooke 2025-09-10 18:19:03 +01:00
parent 5231893347
commit 87a0c3431e
3 changed files with 44 additions and 16 deletions

View file

@ -9,7 +9,6 @@ include <SprocketGenerator2/files/Sprocket_Generator_v2_example_10.scad>
include <chainset.scad>
include <epicyclic.scad>
module subframe_cycleparts(rim=451, chainring_teeth=82, crank=140) {
// wheel
translate([0, 382, 93])
@ -30,7 +29,8 @@ module subframe_cycleparts(rim=451, chainring_teeth=82, crank=140) {
epicyclic();
}
module subframe (rim=451, chainring_teeth=82, crank=140) {
module aluminium_subframe (rim=451, chainring_teeth=82, crank=140) {
// front leg (supports cross-shaft, epicyclic, motor
translate([-25, 820, -60])
color("silver")
@ -64,5 +64,33 @@ module subframe (rim=451, chainring_teeth=82, crank=140) {
subframe_cycleparts(rim, chainring_teeth, crank);
}
/**
* this is more or less right. I need to sculpt out a depression for
* the secondary chain, and make a bracket to hold the epicyclic and
* motor.
*/
module carbon_subframe(rim=451, chainring_teeth=82, crank=140) {
translate([-25, 0, 0])
color("black")
difference() {
rotate([90, 0, 90])
linear_extrude( height=50)
polygon([[1020, 306], [680, 400], [150,408], [50, 0], [1020, 0]]);
translate([-26, 382, 93])
rotate([90,0,90])
cylinder( h=100, r=rim * 0.61);
}
subframe_cycleparts(rim, chainring_teeth, crank);
}
module subframe( structure="carbon", rim=451, chainring_teeth=82, crank=140) {
if (structure == "carbon") {
carbon_subframe(rim=rim, chainring_teeth=chainring_teeth, crank=crank);
} else {
aluminium_subframe(rim=rim, chainring_teeth=chainring_teeth, crank=crank);
}
}
// subframe( structure="carbon");
// subframe(chainring_teeth=90, crank=140);