From f3c7c606188dae2489226007e4c4b7c2f56af4d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Dante=20Ursini?= Date: Sun, 2 Feb 2025 19:36:39 -0300 Subject: [PATCH] Swiss Sign --- Kitesurf-Fins.json | 6 +- Kitesurf-Fins.scad | 124 ++++++++++++---------------------- Readme.md | 9 ++- Swiss-Sign.scad | 140 +++++++++++++++++++++++++++++++++++++++ common.scad | 7 +- res/Kiteboard-Points.png | Bin 0 -> 50859 bytes 6 files changed, 197 insertions(+), 89 deletions(-) create mode 100644 Swiss-Sign.scad create mode 100644 res/Kiteboard-Points.png diff --git a/Kitesurf-Fins.json b/Kitesurf-Fins.json index 55c2c2c..c1743da 100644 --- a/Kitesurf-Fins.json +++ b/Kitesurf-Fins.json @@ -251,14 +251,13 @@ "resin_escape_diameter": "4", "scale_factor": "1", "show_debug_layers": "false", - "start": "[0, 0]", "version": "0.9b" }, "New set 8": { "CLEARING": "0.10000000000000001", "OFFSET": "0.01", "build_fin": "false", - "draw_profile": "false", + "draw_profile": "true", "fin_back_angle": "20", "fin_back_height": "30", "fin_back_strength": "30", @@ -292,11 +291,10 @@ "printable": "true", "render_drill_template": "false", "render_fin": "false", - "render_mold": "true", + "render_mold": "false", "resin_escape_diameter": "4", "scale_factor": "1", "show_debug_layers": "false", - "start": "[0, 0]", "version": "0.9b" } } diff --git a/Kitesurf-Fins.scad b/Kitesurf-Fins.scad index 2de7317..eadf8fb 100644 --- a/Kitesurf-Fins.scad +++ b/Kitesurf-Fins.scad @@ -127,9 +127,6 @@ CLEARING = 0.1; mold_width = fin_height +2 * mold_extra_width; mold_length = fin_width +2 * mold_extra_width; -//mold_height = mold_base_height; - -//drilling_length = mold_base_height+mold_piston_height+2*OFFSET; /******************/ /* Profile points */ @@ -172,40 +169,7 @@ points = flatten([ ]); profile = translate_path( asCurve(points,32),-fin_base/2,0 ); - - -if (false) back(100) { - - support( profile,extraWidth = mold_extra_width, height = fin_thickness/2 + mold_extra_height, part="bottom" ) ; - - - %moldSkirt ( profile, deepness = fin_thickness, heightFactor = mold_skirt_factor, thickness = 3, part = "bottom" ); - %moldSkirt ( profile, deepness = fin_thickness, heightFactor = mold_skirt_factor, thickness = 3, part = "top" ); -} - - -//mold_support_height = 10; -//mold_extra_width -//back(50) showDebugPath (profile_path); -//back(100) showDebugPath (profile); -//back(-55) left(50) drawProfile(points); -//back(-50) left(60+120) drawProfile(points); - - -// ***************** -// * Fin Drawing * -// ***************** -if ( render_fin ) { - scale([scale_factor, scale_factor, scale_factor]) - buildFin( fin_thickness ); -} - -/** - * Render Mold - */ -if ( render_mold ) buildMold(); -if ( render_drill_template ) buildDrillTemplate(); @@ -300,38 +264,6 @@ module buildMold() { */ } -/** - * Mold Case - * - * @param height - Height of the case - * @param bottom - Is bottom or top - */ -module case( height , bottom=true ) { - difference() { - diff() cuboid( [ mold_length, mold_width, height ], - rounding=4, - edges=[bottom ? BOTTOM: TOP], - anchor=TOP ){ - // Drills - align(BOTTOM,[FRONT+LEFT,FRONT+RIGHT,BACK+LEFT,BACK+RIGHT],inset=10,overlap=-OFFSET) - color("orange") - tag("remove") - drilling(); - }; - // Material holes - mirror([bottom ? 0:1,0,0]) - back(38) left(55) - color("Red") - up(OFFSET) - rounded_triangle(radius=3, height=height+2*OFFSET); - // Length hole - fwd(32) cuboid([120,10,50],rounding=5); - // Side holes - left(67) cuboid([10,40,50],rounding=5); - right(67) cuboid([10,40,50],rounding=5); - } -} - /** * Drill template * @@ -486,23 +418,37 @@ echo ("**********************"); - module drawProfile( points,debug = true ){ - - text_size=40; - - debugPoint (start, "Start", "Red" ,textSize=text_size , t=[-20,4,0]); - debugPoint (top_point, "Top", "Blue" ,textSize=text_size , t=[-5,5,0]); - debugPoint (edge_point, "Edge", "Brown" ,textSize=text_size , t=[10,-5,0]); - debugPoint (counter_edge_point, "Counter Edge", "Brown" ,textSize=text_size , t=[35,-5,0]); - debugPoint (tail_point, "Tail", "Yellow" ,textSize=text_size , t=[8,-5,0]); - debugPoint (end_point, "End", "Yellow" ,textSize=text_size , t=[13,4,0]); - + module drawProfile( points,layouts,debug = true, r = 1.5, text_size = 40 ){ + for (i = [ 0 : len( layouts ) - 1 ]) { + debugPoint ( + points[i == 0 ? 0 : i * 3], + id = layouts[i][0], + color = layouts[i][1], + t = layouts[i][2], + textSize = text_size, + r = r + ); + } debug_bezier(points, N=3,width=1.2); } -// Draw fin profile -if ( draw_profile ) drawProfile( points, true ); + + +if ( draw_profile ) + drawProfile( + points, + [ + //["Start" /*, "Red", [-20,4,0]*/], + ["Start", "Red", [-20,-14,0]], + ["Top" , "Blue", [-5,5,0]], + ["Edge" , "Brown", [10,-5,0]], + ["Counter Edge","Orange", [35,-5,0]], + ["Tail" , "Yellow", [8,-5,0]], + ["End" , "Red", [8,-10,0]], + ], + text_size = 40 + ); echo ("****************************"); echo ("** Build **"); @@ -510,7 +456,21 @@ echo ("****************************"); echo (str("filename :",name,"-",mold_part,"-"/*,partition,*/,version,".stl"," ")); - +// ***************** +// * Fin Drawing * +// ***************** +if ( render_fin ) + scale([scale_factor, scale_factor, scale_factor]) + buildFin( fin_thickness ); + +/** + * Render Mold + */ +if ( render_mold ) + buildMold(); + +if ( render_drill_template ) + buildDrillTemplate(); diff --git a/Readme.md b/Readme.md index e242a26..79c7005 100644 --- a/Readme.md +++ b/Readme.md @@ -25,7 +25,14 @@ Fin profile is defined using bézier 3 points control ![](./res/Kitesurf-Fins-Bottom.png) ![](./res/Kitesurf-Fins-Top.png) -[Understanding Kitesruf fins](https://24-7boardsports.com/understanding-kitesurf-twintip-board-fins/) +### Control Points + +Points are Bézier 3 points with before and after control points : + +![](./res/Kiteboard-Points.png) + + +[Understanding Kitesurf fins](https://24-7boardsports.com/understanding-kitesurf-twintip-board-fins/) ### Measure models diff --git a/Swiss-Sign.scad b/Swiss-Sign.scad new file mode 100644 index 0000000..4b3e128 --- /dev/null +++ b/Swiss-Sign.scad @@ -0,0 +1,140 @@ + +include ; + + +red_color = [0.69, 0.15, 0.15]; + + +$fn=64; +/** + * Creates a Swiss cross shape with optional background. + * + * @param w - Width of the cross (number, positive) + * @param h - Height of extrusion (number, positive) + * @param bg - If true, adds a red background (boolean, default: true) + * + * Usage: + * swiss_x(w, h, bg); + * + * Example: + * + * swiss_x(50, 10); // Cross without background + * swiss_x(50, 10, true); // Cross with red background + */ +module swiss_x(w, h, bg = true) { + // Parameter validation + assert(is_num(w) && w > 0, "Width 'w' must be a positive number."); + assert(is_num(h) && h > 0, "Height 'h' must be a positive number."); + assert(is_bool(bg), "Background 'bg' must be a boolean."); + + // Calculate dimensions + l = w * 80/110; // Length of cross arm + t = w * 24/110; // Thickness of cross arm + + // Half dimensions for point calculation + hw = l / 2; // Half width + ht = t / 2; // Half thickness + + // Points for the cross shape + pts = [ + [-hw, ht], // 0 + [-ht, ht], // 1 + [-ht, hw], // 2 + [ ht, hw], // 3 + [ ht, ht], // 4 + [ hw, ht], // 5 + [ hw,-ht], // 6 + [ ht,-ht], // 7 + [ ht,-hw], // 8 + [-ht,-hw], // 9 + [-ht,-ht], // 10 + [-hw,-ht] // 11 + ]; + + // Draw white cross + color("white") + linear_extrude(h) + polygon(pts); + + // Optional red background + if (bg) + color("red") + linear_extrude(h/2) + square(w, center=true); +} + +// Example usage +//swiss_x(w = 8, h = 1, bg = false); // Extrude to 10 units in height + +module swiss_x_2(w, h, bg = true) { + // Calculate dimensions + l = w * 80/110; // Length of cross arm + t = w * 24/110; // Thickness of cross arm + w2 = l-t; + echo ("l",l); + echo ("t",t); + echo ("x",x); + + + // Half dimensions for point calculation + hw = l / 2; // Half width + ht = t / 2; // Half thickness + + // Points for the cross shape + pts = [ + [-hw, ht], // 0 + [-ht, ht], // 1 + [-ht, hw], // 2 + [ ht, hw], // 3 + [ ht, ht], // 4 + [ hw, ht], // 5 + [ hw,-ht], // 6 + [ ht,-ht], // 7 + [ ht,-hw], // 8 + [-ht,-hw], // 9 + [-ht,-ht], // 10 + [-hw,-ht] // 11 + ]; + + x = w * 26/110; // Thickness of cross arm + x1 = hw + ht; + + //down(h) %swiss_x( w = w, h = h, bg = false); + f = 1.8; + d = 0.14; + + s1 = t*1.2; + s2 = (hw-ht) * 1.1; + + r = w * 3/110; + + linear_extrude(h) difference() { + //color (red_color) round2d(r=3) { + color (red_color) round2d(r=r) { + translate([0,x1,0]) + square((f-0*d) * s1 *0.8,center=true); + translate([x,x,0]) + square((f-1*d) * s2,center=true,anchor=LEFT); + translate([x1,0,0]) + square((f-2*d) * s1,center=true); + translate([x,-x,0]) + square((f-3*d) * s2,center=true,anchor=LEFT); + translate([0,-x1,0]) + square((f-4*d) * s1,center=true); + translate([-x,-x,0]) + square((f-5*d) *s2,center=true,anchor=LEFT); + translate([-x1,0,0]) + square((f-6*d) * s1,center=true); + translate([-x,x,0]) + square( (f-7*d) * s2* 1.1,center=true,anchor=LEFT); + }; + round2d(r=r) polygon(pts); + } + + +} + +//swiss_x_2(w = 110, h = 1, bg = false); // Extrude to 10 units in height +swiss_x_2(w = 10, h = 2, bg = false); // Extrude to 10 units in height + + diff --git a/common.scad b/common.scad index 1ba5645..d69e1c3 100644 --- a/common.scad +++ b/common.scad @@ -32,13 +32,16 @@ function handle(point,angle,strength) = [ * Show Debug point */ module debugPoint(point, id, color,textSize=20,r=1.5,t = [0,0,0]) { + + translation = is_undef(t) ? [0,0,0] : t; + translate(point) { - color(color) sphere(r = r); + color(is_undef(color) ? "white" : color) sphere(r = r); //translate([3, 3, 0.6]) { - translate([textSize/7+t[0], textSize/7+t[1], textSize/10+t[2]]) { + translate([textSize/7+translation[0], textSize/7+translation[1], textSize/10+translation[2]]) { color("white") scale([0.2, 0.2, 1]) linear_extrude(height = 0.1) diff --git a/res/Kiteboard-Points.png b/res/Kiteboard-Points.png new file mode 100644 index 0000000000000000000000000000000000000000..374a23245c84ea9313bcd1385372564fd1be0b50 GIT binary patch literal 50859 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 Cv%Yx% literal 0 HcmV?d00001