mirror of https://github.com/vitalif/openscad
269 lines
13 KiB
Plaintext
269 lines
13 KiB
Plaintext
group() {
|
|
multmatrix([[1, 0, 0, -30], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]]) {
|
|
group() {
|
|
linear_extrude(height = 0.5, center = true, convexity = 1, scale = [1, 1], $fn = 0, $fa = 12, $fs = 2) {
|
|
projection(cut = false, convexity = 0) {
|
|
group() {
|
|
difference() {
|
|
sphere($fn = 0, $fa = 30, $fs = 2, r = 25);
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
multmatrix([[1, 0, 0, 0], [0, 0, -1, 0], [0, 1, 0, 0], [0, 0, 0, 1]]) {
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
}
|
|
multmatrix([[0, 0, 1, 0], [0, 1, 0, 0], [-1, 0, 0, 0], [0, 0, 0, 1]]) {
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
%group() {
|
|
difference() {
|
|
sphere($fn = 0, $fa = 30, $fs = 2, r = 25);
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
multmatrix([[1, 0, 0, 0], [0, 0, -1, 0], [0, 1, 0, 0], [0, 0, 0, 1]]) {
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
}
|
|
multmatrix([[0, 0, 1, 0], [0, 1, 0, 0], [-1, 0, 0, 0], [0, 0, 0, 1]]) {
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
multmatrix([[1, 0, 0, 30], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]]) {
|
|
group() {
|
|
group() {
|
|
multmatrix([[0.933013, 0.0669873, -0.353553, 0], [0.0669873, 0.933013, 0.353553, 0], [0.353553, -0.353553, 0.866025, 0], [0, 0, 0, 1]]) {
|
|
multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 20], [0, 0, 0, 1]]) {
|
|
linear_extrude(height = 0.5, center = true, convexity = 1, scale = [1, 1], $fn = 0, $fa = 12, $fs = 2) {
|
|
projection(cut = true, convexity = 0) {
|
|
multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, -20], [0, 0, 0, 1]]) {
|
|
multmatrix([[0.933013, 0.0669873, 0.353553, 0], [0.0669873, 0.933013, -0.353553, 0], [-0.353553, 0.353553, 0.866025, 0], [0, 0, 0, 1]]) {
|
|
group() {
|
|
difference() {
|
|
sphere($fn = 0, $fa = 30, $fs = 2, r = 25);
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
multmatrix([[1, 0, 0, 0], [0, 0, -1, 0], [0, 1, 0, 0], [0, 0, 0, 1]]) {
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
}
|
|
multmatrix([[0, 0, 1, 0], [0, 1, 0, 0], [-1, 0, 0, 0], [0, 0, 0, 1]]) {
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
multmatrix([[0.933013, 0.0669873, -0.353553, 0], [0.0669873, 0.933013, 0.353553, 0], [0.353553, -0.353553, 0.866025, 0], [0, 0, 0, 1]]) {
|
|
multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 15], [0, 0, 0, 1]]) {
|
|
linear_extrude(height = 0.5, center = true, convexity = 1, scale = [1, 1], $fn = 0, $fa = 12, $fs = 2) {
|
|
projection(cut = true, convexity = 0) {
|
|
multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, -15], [0, 0, 0, 1]]) {
|
|
multmatrix([[0.933013, 0.0669873, 0.353553, 0], [0.0669873, 0.933013, -0.353553, 0], [-0.353553, 0.353553, 0.866025, 0], [0, 0, 0, 1]]) {
|
|
group() {
|
|
difference() {
|
|
sphere($fn = 0, $fa = 30, $fs = 2, r = 25);
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
multmatrix([[1, 0, 0, 0], [0, 0, -1, 0], [0, 1, 0, 0], [0, 0, 0, 1]]) {
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
}
|
|
multmatrix([[0, 0, 1, 0], [0, 1, 0, 0], [-1, 0, 0, 0], [0, 0, 0, 1]]) {
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
multmatrix([[0.933013, 0.0669873, -0.353553, 0], [0.0669873, 0.933013, 0.353553, 0], [0.353553, -0.353553, 0.866025, 0], [0, 0, 0, 1]]) {
|
|
multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 10], [0, 0, 0, 1]]) {
|
|
linear_extrude(height = 0.5, center = true, convexity = 1, scale = [1, 1], $fn = 0, $fa = 12, $fs = 2) {
|
|
projection(cut = true, convexity = 0) {
|
|
multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, -10], [0, 0, 0, 1]]) {
|
|
multmatrix([[0.933013, 0.0669873, 0.353553, 0], [0.0669873, 0.933013, -0.353553, 0], [-0.353553, 0.353553, 0.866025, 0], [0, 0, 0, 1]]) {
|
|
group() {
|
|
difference() {
|
|
sphere($fn = 0, $fa = 30, $fs = 2, r = 25);
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
multmatrix([[1, 0, 0, 0], [0, 0, -1, 0], [0, 1, 0, 0], [0, 0, 0, 1]]) {
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
}
|
|
multmatrix([[0, 0, 1, 0], [0, 1, 0, 0], [-1, 0, 0, 0], [0, 0, 0, 1]]) {
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
multmatrix([[0.933013, 0.0669873, -0.353553, 0], [0.0669873, 0.933013, 0.353553, 0], [0.353553, -0.353553, 0.866025, 0], [0, 0, 0, 1]]) {
|
|
multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 5], [0, 0, 0, 1]]) {
|
|
linear_extrude(height = 0.5, center = true, convexity = 1, scale = [1, 1], $fn = 0, $fa = 12, $fs = 2) {
|
|
projection(cut = true, convexity = 0) {
|
|
multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, -5], [0, 0, 0, 1]]) {
|
|
multmatrix([[0.933013, 0.0669873, 0.353553, 0], [0.0669873, 0.933013, -0.353553, 0], [-0.353553, 0.353553, 0.866025, 0], [0, 0, 0, 1]]) {
|
|
group() {
|
|
difference() {
|
|
sphere($fn = 0, $fa = 30, $fs = 2, r = 25);
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
multmatrix([[1, 0, 0, 0], [0, 0, -1, 0], [0, 1, 0, 0], [0, 0, 0, 1]]) {
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
}
|
|
multmatrix([[0, 0, 1, 0], [0, 1, 0, 0], [-1, 0, 0, 0], [0, 0, 0, 1]]) {
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
multmatrix([[0.933013, 0.0669873, -0.353553, 0], [0.0669873, 0.933013, 0.353553, 0], [0.353553, -0.353553, 0.866025, 0], [0, 0, 0, 1]]) {
|
|
multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]]) {
|
|
linear_extrude(height = 0.5, center = true, convexity = 1, scale = [1, 1], $fn = 0, $fa = 12, $fs = 2) {
|
|
projection(cut = true, convexity = 0) {
|
|
multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]]) {
|
|
multmatrix([[0.933013, 0.0669873, 0.353553, 0], [0.0669873, 0.933013, -0.353553, 0], [-0.353553, 0.353553, 0.866025, 0], [0, 0, 0, 1]]) {
|
|
group() {
|
|
difference() {
|
|
sphere($fn = 0, $fa = 30, $fs = 2, r = 25);
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
multmatrix([[1, 0, 0, 0], [0, 0, -1, 0], [0, 1, 0, 0], [0, 0, 0, 1]]) {
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
}
|
|
multmatrix([[0, 0, 1, 0], [0, 1, 0, 0], [-1, 0, 0, 0], [0, 0, 0, 1]]) {
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
multmatrix([[0.933013, 0.0669873, -0.353553, 0], [0.0669873, 0.933013, 0.353553, 0], [0.353553, -0.353553, 0.866025, 0], [0, 0, 0, 1]]) {
|
|
multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, -5], [0, 0, 0, 1]]) {
|
|
linear_extrude(height = 0.5, center = true, convexity = 1, scale = [1, 1], $fn = 0, $fa = 12, $fs = 2) {
|
|
projection(cut = true, convexity = 0) {
|
|
multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 5], [0, 0, 0, 1]]) {
|
|
multmatrix([[0.933013, 0.0669873, 0.353553, 0], [0.0669873, 0.933013, -0.353553, 0], [-0.353553, 0.353553, 0.866025, 0], [0, 0, 0, 1]]) {
|
|
group() {
|
|
difference() {
|
|
sphere($fn = 0, $fa = 30, $fs = 2, r = 25);
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
multmatrix([[1, 0, 0, 0], [0, 0, -1, 0], [0, 1, 0, 0], [0, 0, 0, 1]]) {
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
}
|
|
multmatrix([[0, 0, 1, 0], [0, 1, 0, 0], [-1, 0, 0, 0], [0, 0, 0, 1]]) {
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
multmatrix([[0.933013, 0.0669873, -0.353553, 0], [0.0669873, 0.933013, 0.353553, 0], [0.353553, -0.353553, 0.866025, 0], [0, 0, 0, 1]]) {
|
|
multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, -10], [0, 0, 0, 1]]) {
|
|
linear_extrude(height = 0.5, center = true, convexity = 1, scale = [1, 1], $fn = 0, $fa = 12, $fs = 2) {
|
|
projection(cut = true, convexity = 0) {
|
|
multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 10], [0, 0, 0, 1]]) {
|
|
multmatrix([[0.933013, 0.0669873, 0.353553, 0], [0.0669873, 0.933013, -0.353553, 0], [-0.353553, 0.353553, 0.866025, 0], [0, 0, 0, 1]]) {
|
|
group() {
|
|
difference() {
|
|
sphere($fn = 0, $fa = 30, $fs = 2, r = 25);
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
multmatrix([[1, 0, 0, 0], [0, 0, -1, 0], [0, 1, 0, 0], [0, 0, 0, 1]]) {
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
}
|
|
multmatrix([[0, 0, 1, 0], [0, 1, 0, 0], [-1, 0, 0, 0], [0, 0, 0, 1]]) {
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
multmatrix([[0.933013, 0.0669873, -0.353553, 0], [0.0669873, 0.933013, 0.353553, 0], [0.353553, -0.353553, 0.866025, 0], [0, 0, 0, 1]]) {
|
|
multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, -15], [0, 0, 0, 1]]) {
|
|
linear_extrude(height = 0.5, center = true, convexity = 1, scale = [1, 1], $fn = 0, $fa = 12, $fs = 2) {
|
|
projection(cut = true, convexity = 0) {
|
|
multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 15], [0, 0, 0, 1]]) {
|
|
multmatrix([[0.933013, 0.0669873, 0.353553, 0], [0.0669873, 0.933013, -0.353553, 0], [-0.353553, 0.353553, 0.866025, 0], [0, 0, 0, 1]]) {
|
|
group() {
|
|
difference() {
|
|
sphere($fn = 0, $fa = 30, $fs = 2, r = 25);
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
multmatrix([[1, 0, 0, 0], [0, 0, -1, 0], [0, 1, 0, 0], [0, 0, 0, 1]]) {
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
}
|
|
multmatrix([[0, 0, 1, 0], [0, 1, 0, 0], [-1, 0, 0, 0], [0, 0, 0, 1]]) {
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
multmatrix([[0.933013, 0.0669873, -0.353553, 0], [0.0669873, 0.933013, 0.353553, 0], [0.353553, -0.353553, 0.866025, 0], [0, 0, 0, 1]]) {
|
|
multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, -20], [0, 0, 0, 1]]) {
|
|
linear_extrude(height = 0.5, center = true, convexity = 1, scale = [1, 1], $fn = 0, $fa = 12, $fs = 2) {
|
|
projection(cut = true, convexity = 0) {
|
|
multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 20], [0, 0, 0, 1]]) {
|
|
multmatrix([[0.933013, 0.0669873, 0.353553, 0], [0.0669873, 0.933013, -0.353553, 0], [-0.353553, 0.353553, 0.866025, 0], [0, 0, 0, 1]]) {
|
|
group() {
|
|
difference() {
|
|
sphere($fn = 0, $fa = 30, $fs = 2, r = 25);
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
multmatrix([[1, 0, 0, 0], [0, 0, -1, 0], [0, 1, 0, 0], [0, 0, 0, 1]]) {
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
}
|
|
multmatrix([[0, 0, 1, 0], [0, 1, 0, 0], [-1, 0, 0, 0], [0, 0, 0, 1]]) {
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
%group() {
|
|
difference() {
|
|
sphere($fn = 0, $fa = 30, $fs = 2, r = 25);
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
multmatrix([[1, 0, 0, 0], [0, 0, -1, 0], [0, 1, 0, 0], [0, 0, 0, 1]]) {
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
}
|
|
multmatrix([[0, 0, 1, 0], [0, 1, 0, 0], [-1, 0, 0, 0], [0, 0, 0, 1]]) {
|
|
cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|