organize project structure

This commit is contained in:
2025-05-11 14:07:06 +08:00
parent 976459d867
commit 6254e31564
14 changed files with 74 additions and 0 deletions

BIN
家装/手柄挂架.3mf (Stored with Git LFS) Normal file

Binary file not shown.

30
家装/手柄挂架.scad Normal file
View File

@ -0,0 +1,30 @@
difference() {
translate([0, -5, 0])
minkowski() {
cube([28, 28, 28], center=true);
sphere(1);
};
cube([80, 20, 18], center=true);
translate([0, 0, 20])
cube([17, 20, 40], center=true);
};
translate([-7, -19, -180 - 15 + 1])
minkowski() {
union() {
cube([14, 14+14, 180]);
translate([-17, -48, 14])
cube([48, 4, 4]);
translate([-17, -48, 0])
cube([48, 62+14, 14]);
translate([-17, -48, 14+150])
cube([48, 4, 4]);
translate([-17, -48, 150])
cube([48, 62+14, 14]);
};
sphere(1);
}

View File

@ -0,0 +1,60 @@
union() {
linear_extrude(height=20)
polygon([
[12, 30],
[11, 29],
[11, 28],
[22, 12],
[22, 11],
[21, 10],
[2, 10],
[1, 9.7],
[0, 8 ],
[0, 0 ],
[64, 0 ],
[64, 8 ],
[63.7, 9.7],
[63, 10],
[44, 10],
[42.3, 10.3],
[42, 12],
[53.7, 28.3],
[54, 29.7],
[53, 30],
]);
difference() {
polyhedron(
points = [
[0,0,0], // 索引 0: V0
[0,0,20], // 索引 1: V1
[64,0,20], // 索引 2: V2
[64,0, 0], // 索引 3: V3
[64,-60,0],// 索引 4: V4
[0, -60,0] // 索引 5: V5
],
faces = [
// 修正后的 faces 列表:
[0, 5, 4, 3], // Bottom (Z=0) - 确认顺序,从外部看顺时针
[1, 0, 3, 2], // Face at Y=0 (Vertical Front) - 确认顺序,从外部看顺时针
[1, 2, 4, 5], // Top (Sloped) - 确认顺序,从外部看顺时针
[1, 5, 0], // Left Side (X=0, Triangle) - 确认顺序,从外部看顺时针
[2, 3, 4] // Right Side (X=64, Triangle) - 确认顺序,从外部看顺时针
]
);
translate([0, -60, 0])
difference() {
cube(4);
translate([4,4,0])
cylinder(h=4, r=4);
}
translate([60, -60, 0])
difference() {
cube(4);
translate([0,4,0])
cylinder(h=4, r=4);
}
}
}

BIN
家装/机器人缓坡1.stl (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,393 @@
translate([0,0,0]) {
union() {
translate([0,0,0]) {
linear_extrude(height=20)
polygon([
[12, 20],
[11, 19],
[11, 18],
[22, 2],
[22, 1],
[21, 0],
[2, 0],
[44, 0],
[42.3, 0.3],
[42, 2],
[53.7, 18.3],
[54, 19.7],
[53, 20],
]);
difference() {
polyhedron(
points = [
[0,0,0], // 索引 0: V0
[0,0,20], // 索引 1: V1
[64,0,20], // 索引 2: V2
[64,0, 0], // 索引 3: V3
[64,-60,0],// 索引 4: V4
[0, -60,0] // 索引 5: V5
],
faces = [
// 修正后的 faces 列表:
[0, 5, 4, 3], // Bottom (Z=0) - 确认顺序,从外部看顺时针
[1, 0, 3, 2], // Face at Y=0 (Vertical Front) - 确认顺序,从外部看顺时针
[1, 2, 4, 5], // Top (Sloped) - 确认顺序,从外部看顺时针
[1, 5, 0], // Left Side (X=0, Triangle) - 确认顺序,从外部看顺时针
[2, 3, 4] // Right Side (X=64, Triangle) - 确认顺序,从外部看顺时针
]
);
translate([0, -60, 0])
difference() {
cube(4);
translate([4,4,0])
cylinder(h=4, r=4);
}
translate([60, -60, 0])
difference() {
cube(4);
translate([0,4,0])
cylinder(h=4, r=4);
}
}
}
translate([64, 0, 0]) {
difference() {
polyhedron(
points = [
[0,0,0], // 索引 0: V0
[0,0,20], // 索引 1: V1
[64,0,20], // 索引 2: V2
[64,0, 0], // 索引 3: V3
[64,-60,0],// 索引 4: V4
[0, -60,0] // 索引 5: V5
],
faces = [
// 修正后的 faces 列表:
[0, 5, 4, 3], // Bottom (Z=0) - 确认顺序,从外部看顺时针
[1, 0, 3, 2], // Face at Y=0 (Vertical Front) - 确认顺序,从外部看顺时针
[1, 2, 4, 5], // Top (Sloped) - 确认顺序,从外部看顺时针
[1, 5, 0], // Left Side (X=0, Triangle) - 确认顺序,从外部看顺时针
[2, 3, 4] // Right Side (X=64, Triangle) - 确认顺序,从外部看顺时针
]
);
translate([0, -60, 0])
difference() {
cube(4);
translate([4,4,0])
cylinder(h=4, r=4);
}
translate([60, -60, 0])
difference() {
cube(4);
translate([0,4,0])
cylinder(h=4, r=4);
}
}
}
translate([128, 0, 0]) {
linear_extrude(height=20)
polygon([
[12, 20],
[11, 19],
[11, 18],
[22, 2],
[22, 1],
[21, 0],
[2, 0],
[44, 0],
[42.3, 0.3],
[42, 2],
[53.7, 18.3],
[54, 19.7],
[53, 20],
]);
difference() {
polyhedron(
points = [
[0,0,0], // 索引 0: V0
[0,0,20], // 索引 1: V1
[64,0,20], // 索引 2: V2
[64,0, 0], // 索引 3: V3
[64,-60,0],// 索引 4: V4
[0, -60,0] // 索引 5: V5
],
faces = [
// 修正后的 faces 列表:
[0, 5, 4, 3], // Bottom (Z=0) - 确认顺序,从外部看顺时针
[1, 0, 3, 2], // Face at Y=0 (Vertical Front) - 确认顺序,从外部看顺时针
[1, 2, 4, 5], // Top (Sloped) - 确认顺序,从外部看顺时针
[1, 5, 0], // Left Side (X=0, Triangle) - 确认顺序,从外部看顺时针
[2, 3, 4] // Right Side (X=64, Triangle) - 确认顺序,从外部看顺时针
]
);
translate([0, -60, 0])
difference() {
cube(4);
translate([4,4,0])
cylinder(h=4, r=4);
}
translate([60, -60, 0])
difference() {
cube(4);
translate([0,4,0])
cylinder(h=4, r=4);
}
}
}
}
}
translate([200,0,0]) {
union() {
translate([0,0,0]) {
linear_extrude(height=20)
polygon([
[12, 20],
[11, 19],
[11, 18],
[22, 2],
[22, 1],
[21, 0],
[2, 0],
[44, 0],
[42.3, 0.3],
[42, 2],
[53.7, 18.3],
[54, 19.7],
[53, 20],
]);
difference() {
polyhedron(
points = [
[0,0,0], // 索引 0: V0
[0,0,20], // 索引 1: V1
[64,0,20], // 索引 2: V2
[64,0, 0], // 索引 3: V3
[64,-60,0],// 索引 4: V4
[0, -60,0] // 索引 5: V5
],
faces = [
// 修正后的 faces 列表:
[0, 5, 4, 3], // Bottom (Z=0) - 确认顺序,从外部看顺时针
[1, 0, 3, 2], // Face at Y=0 (Vertical Front) - 确认顺序,从外部看顺时针
[1, 2, 4, 5], // Top (Sloped) - 确认顺序,从外部看顺时针
[1, 5, 0], // Left Side (X=0, Triangle) - 确认顺序,从外部看顺时针
[2, 3, 4] // Right Side (X=64, Triangle) - 确认顺序,从外部看顺时针
]
);
translate([0, -60, 0])
difference() {
cube(4);
translate([4,4,0])
cylinder(h=4, r=4);
}
translate([60, -60, 0])
difference() {
cube(4);
translate([0,4,0])
cylinder(h=4, r=4);
}
}
}
translate([64, 0, 0]) {
difference() {
polyhedron(
points = [
[0,0,0], // 索引 0: V0
[0,0,20], // 索引 1: V1
[64,0,20], // 索引 2: V2
[64,0, 0], // 索引 3: V3
[64,-60,0],// 索引 4: V4
[0, -60,0] // 索引 5: V5
],
faces = [
// 修正后的 faces 列表:
[0, 5, 4, 3], // Bottom (Z=0) - 确认顺序,从外部看顺时针
[1, 0, 3, 2], // Face at Y=0 (Vertical Front) - 确认顺序,从外部看顺时针
[1, 2, 4, 5], // Top (Sloped) - 确认顺序,从外部看顺时针
[1, 5, 0], // Left Side (X=0, Triangle) - 确认顺序,从外部看顺时针
[2, 3, 4] // Right Side (X=64, Triangle) - 确认顺序,从外部看顺时针
]
);
translate([0, -60, 0])
difference() {
cube(4);
translate([4,4,0])
cylinder(h=4, r=4);
}
translate([60, -60, 0])
difference() {
cube(4);
translate([0,4,0])
cylinder(h=4, r=4);
}
}
}
translate([128, 0, 0]) {
linear_extrude(height=20)
polygon([
[12, 20],
[11, 19],
[11, 18],
[22, 2],
[22, 1],
[21, 0],
[2, 0],
[44, 0],
[42.3, 0.3],
[42, 2],
[53.7, 18.3],
[54, 19.7],
[53, 20],
]);
difference() {
polyhedron(
points = [
[0,0,0], // 索引 0: V0
[0,0,20], // 索引 1: V1
[64,0,20], // 索引 2: V2
[64,0, 0], // 索引 3: V3
[64,-60,0],// 索引 4: V4
[0, -60,0] // 索引 5: V5
],
faces = [
// 修正后的 faces 列表:
[0, 5, 4, 3], // Bottom (Z=0) - 确认顺序,从外部看顺时针
[1, 0, 3, 2], // Face at Y=0 (Vertical Front) - 确认顺序,从外部看顺时针
[1, 2, 4, 5], // Top (Sloped) - 确认顺序,从外部看顺时针
[1, 5, 0], // Left Side (X=0, Triangle) - 确认顺序,从外部看顺时针
[2, 3, 4] // Right Side (X=64, Triangle) - 确认顺序,从外部看顺时针
]
);
translate([0, -60, 0])
difference() {
cube(4);
translate([4,4,0])
cylinder(h=4, r=4);
}
translate([60, -60, 0])
difference() {
cube(4);
translate([0,4,0])
cylinder(h=4, r=4);
}
}
}
}
}
translate([400,0,0]) {
union() {
translate([0,0,0]) {
linear_extrude(height=20)
polygon([
[12, 20],
[11, 19],
[11, 18],
[22, 2],
[22, 1],
[21, 0],
[2, 0],
[44, 0],
[42.3, 0.3],
[42, 2],
[53.7, 18.3],
[54, 19.7],
[53, 20],
]);
difference() {
polyhedron(
points = [
[0,0,0], // 索引 0: V0
[0,0,20], // 索引 1: V1
[64,0,20], // 索引 2: V2
[64,0, 0], // 索引 3: V3
[64,-60,0],// 索引 4: V4
[0, -60,0] // 索引 5: V5
],
faces = [
// 修正后的 faces 列表:
[0, 5, 4, 3], // Bottom (Z=0) - 确认顺序,从外部看顺时针
[1, 0, 3, 2], // Face at Y=0 (Vertical Front) - 确认顺序,从外部看顺时针
[1, 2, 4, 5], // Top (Sloped) - 确认顺序,从外部看顺时针
[1, 5, 0], // Left Side (X=0, Triangle) - 确认顺序,从外部看顺时针
[2, 3, 4] // Right Side (X=64, Triangle) - 确认顺序,从外部看顺时针
]
);
translate([0, -60, 0])
difference() {
cube(4);
translate([4,4,0])
cylinder(h=4, r=4);
}
translate([60, -60, 0])
difference() {
cube(4);
translate([0,4,0])
cylinder(h=4, r=4);
}
}
}
translate([64, 0, 0]) {
linear_extrude(height=20)
polygon([
[12, 20],
[11, 19],
[11, 18],
[22, 2],
[22, 1],
[21, 0],
[2, 0],
[44, 0],
[42.3, 0.3],
[42, 2],
[53.7, 18.3],
[54, 19.7],
[53, 20],
]);
difference() {
polyhedron(
points = [
[0,0,0], // 索引 0: V0
[0,0,20], // 索引 1: V1
[64,0,20], // 索引 2: V2
[64,0, 0], // 索引 3: V3
[64,-60,0],// 索引 4: V4
[0, -60,0] // 索引 5: V5
],
faces = [
// 修正后的 faces 列表:
[0, 5, 4, 3], // Bottom (Z=0) - 确认顺序,从外部看顺时针
[1, 0, 3, 2], // Face at Y=0 (Vertical Front) - 确认顺序,从外部看顺时针
[1, 2, 4, 5], // Top (Sloped) - 确认顺序,从外部看顺时针
[1, 5, 0], // Left Side (X=0, Triangle) - 确认顺序,从外部看顺时针
[2, 3, 4] // Right Side (X=64, Triangle) - 确认顺序,从外部看顺时针
]
);
translate([0, -60, 0])
difference() {
cube(4);
translate([4,4,0])
cylinder(h=4, r=4);
}
translate([60, -60, 0])
difference() {
cube(4);
translate([0,4,0])
cylinder(h=4, r=4);
}
}
}
}
}

BIN
家装/机器人缓坡2.3mf (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,60 @@
union() {
linear_extrude(height=20)
polygon([
[12, 30],
[11, 29],
[11, 28],
[22, 12],
[22, 11],
[21, 10],
[2, 10],
[1, 9.7],
[0, 8 ],
[0, 0 ],
[64, 0 ],
[64, 8 ],
[63.7, 9.7],
[63, 10],
[44, 10],
[42.3, 10.3],
[42, 12],
[53.7, 28.3],
[54, 29.7],
[53, 30],
]);
difference() {
polyhedron(
points = [
[0,0,0], // 索引 0: V0
[0,0,20], // 索引 1: V1
[64,0,20], // 索引 2: V2
[64,0, 0], // 索引 3: V3
[64,-60,0],// 索引 4: V4
[0, -60,0] // 索引 5: V5
],
faces = [
// 修正后的 faces 列表:
[0, 5, 4, 3], // Bottom (Z=0) - 确认顺序,从外部看顺时针
[1, 0, 3, 2], // Face at Y=0 (Vertical Front) - 确认顺序,从外部看顺时针
[1, 2, 4, 5], // Top (Sloped) - 确认顺序,从外部看顺时针
[1, 5, 0], // Left Side (X=0, Triangle) - 确认顺序,从外部看顺时针
[2, 3, 4] // Right Side (X=64, Triangle) - 确认顺序,从外部看顺时针
]
);
translate([0, -60, 0])
difference() {
cube(4);
translate([4,4,0])
cylinder(h=4, r=4);
}
translate([60, -60, 0])
difference() {
cube(4);
translate([0,4,0])
cylinder(h=4, r=4);
}
}
}

BIN
家装/机器人缓坡2.stl (Stored with Git LFS) Normal file

Binary file not shown.