// -*- C -*-
+include <utils.scad>
+
wings_dist_x = 40;
-wings_cup_angle = 45;
+wings_cup_angle = 40;
wings_cup_depth = 5;
-wings_cup_inner_dia = 3;
+wings_cup_inner = 3;
wings_inner_th = 1;
wings_main_th = 2.5;
wings_cup_z = -34;
+$fs = 0.1;
+$fa = 3;
+
// calculated
+module AtWingCupElevation () {
+ translate([ -wings_dist_x, wings_cup_z ])
+ rotate(-wings_cup_angle)
+ children();
+}
+
module WingCupElevationNegative () {
- translate([ -wings_dist_x, wings_cup_z ]){
- rotate(-wings_cup_angle){
- hull(){
- circle(r = wings_cup_inner_dia/2);
- translate([0, 20])
- square(wings_cup_inner_dia);
+ AtWingCupElevation(){
+ hull(){
+ translate([ 0, wings_cup_inner/2 ])
+ circle(r = wings_cup_inner/2);
+ translate([0, 20])
+ square(wings_cup_inner, center=true);
+ }
+ }
+}
+
+module WingCupElevationPositive () {
+ AtWingCupElevation(){
+ hull(){
+ translate([ wings_cup_inner/2 + wings_inner_th/2, 0 ]){
+ translate([ 0, wings_cup_depth - wings_inner_th/2 ])
+ circle(r = wings_inner_th/2);
+ translate([ 0, wings_cup_inner/2 ])
+ square([wings_inner_th, 0.1], center=true);
+ }
+ }
+ translate([ (wings_inner_th - wings_main_th)/2,
+ wings_cup_inner/2 ]){
+ intersection(){
+ circle(r = (wings_inner_th + wings_main_th + wings_cup_inner)/2);
+ rectfromto([-100, -100], [100, 0]);
}
}
}
}
-/*
+
+module WingElevation(){
+ AtWingCupElevation(){
+ translate([ -(wings_inner_th + wings_main_th)/2,
+ wings_cup_inner/2 ])
+ circle(r = wings_main_th);
+ }
}
-WingsElevation () {
+
+module WingCupElevationDemo(){
+ translate([0,0,2]) color("red") WingCupElevationNegative();
+ translate([0,0,1]) color("blue") WingElevation();
+ WingCupElevationPositive();
+}
+
+/*WingsElevation () {
difference(){
}
*/
-WingCupElevationNegative();
+WingCupElevationDemo();