Compare commits

...

2 commits

Author SHA1 Message Date
Shy
7913d0353f Dismissed triangular holes. 2024-01-20 18:39:16 +01:00
Shy
adef079360 Small optimizations. 2024-01-20 18:38:39 +01:00
4 changed files with 34 additions and 79 deletions

View file

@ -423,29 +423,26 @@ module outer() {
}
}
}
}
// Maske, um angerundete oder abgeschrägte Außenkanten zu schneiden.
// Maske, um abgerundete oder abgeschrägte Außenkanten zu schneiden.
module edge_cut() {
minkowski() {
linear_extrude(height=0.1) {
import("./svg/back outline.svg");
}
$fn = $preview ? 4 : 8;
$fn = $preview ? 4 : 16;
if (beveled_edges) {
// Abgeschrägte Kanten.
cylinder(h=4, r1=1.5, r2=0);
} else {
// Abgerundete Kanten.
// Dafür generieren wir im folgenden einen konkaven Kegel.
union() {
curve = [1.34, 1.07, 0.84, 0.63, 0.46, 0.32, 0.2, 0.11, 0.05, 0.01, 0];
for (i = [0:len(curve)-2]) {
translate([0, 0, i*0.5])
cylinder(h=0.5, r1=curve[i], r2=curve[i+1]);
}
curve = [1.34, 1.07, 0.84, 0.63, 0.46, 0.32, 0.2, 0.11, 0.05, 0.01, 0];
for (i = [0:len(curve)-2]) {
translate([0, 0, i*0.5])
cylinder(h=0.5, r1=curve[i], r2=curve[i+1]);
}
}
}

View file

@ -219,7 +219,6 @@ module border_strut(width, length, height) {
[3, 4, 0],
[0, 4, 5, 1]
]);
}
// Die äußeren Teile: Front und Ränder.
@ -325,29 +324,26 @@ module outer() {
border_strut(1.6, pos[3], pos[3]);
}
}
}
// Maske, um angerundete oder abgeschrägte Außenkanten zu schneiden.
// Maske, um abgerundete oder abgeschrägte Außenkanten zu schneiden.
module edge_cut() {
minkowski() {
linear_extrude(height=0.1) {
import("./svg/front outline.svg");
}
$fn = $preview ? 4 : 8;
$fn = $preview ? 4 : 16;
if (beveled_edges) {
// Abgeschrägte Kanten.
cylinder(h=4, r1=1.5, r2=0);
} else {
// Abgerundete Kanten.
// Dafür generieren wir im folgenden einen konkaven Kegel.
union() {
curve = [1.34, 1.07, 0.84, 0.63, 0.46, 0.32, 0.2, 0.11, 0.05, 0.01, 0];
for (i = [0:len(curve)-2]) {
translate([0, 0, i*0.5])
cylinder(h=0.5, r1=curve[i], r2=curve[i+1]);
}
curve = [1.34, 1.07, 0.84, 0.63, 0.46, 0.32, 0.2, 0.11, 0.05, 0.01, 0];
for (i = [0:len(curve)-2]) {
translate([0, 0, i*0.5])
cylinder(h=0.5, r1=curve[i], r2=curve[i+1]);
}
}
}

View file

@ -5,7 +5,7 @@
viewBox="0 0 150 110"
version="1.1"
id="svg8"
inkscape:version="1.3.2 (091e20ef0f, 2023-11-25, custom)"
inkscape:version="1.2.2 (b0a8486541, 2022-12-01)"
sodipodi:docname="back construction.svg"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
@ -16,19 +16,7 @@
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<defs
id="defs2">
<inkscape:path-effect
effect="offset"
id="path-effect1541"
is_visible="false"
lpeversion="1"
linejoin_type="miter"
unit="mm"
offset="-2"
miter_limit="4"
attempt_force_join="true"
update_on_knot_move="true" />
</defs>
id="defs2" />
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
@ -36,9 +24,9 @@
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="2.4839156"
inkscape:cx="357.90266"
inkscape:cy="144.52987"
inkscape:zoom="2.2345265"
inkscape:cx="283.28149"
inkscape:cy="207.87402"
inkscape:document-units="mm"
inkscape:current-layer="layer1"
inkscape:document-rotation="0"
@ -572,35 +560,6 @@
rx="2"
ry="2"
transform="scale(-1,1)" />
<path
style="opacity:0.5;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 93.999999,50.000001 99.25,44.749997 l 0,10.5 z"
id="path948"
sodipodi:nodetypes="cccc" />
<use
x="0"
y="0"
xlink:href="#path948"
id="use950"
transform="matrix(-1,0,0,1,150,0)"
width="100%"
height="100%" />
<use
x="0"
y="0"
xlink:href="#path948"
id="use952"
transform="matrix(-1,0,0,1,190,10)"
width="100%"
height="100%" />
<use
x="0"
y="0"
xlink:href="#path948"
id="use954"
transform="translate(-40,10)"
width="100%"
height="100%" />
<rect
style="display:inline;opacity:0.5;fill:#000000;stroke:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round"
id="rect1"

Before

Width:  |  Height:  |  Size: 246 KiB

After

Width:  |  Height:  |  Size: 245 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 7.9 KiB

After

Width:  |  Height:  |  Size: 5.8 KiB