1
0
mirror of https://github.com/JustinSDK/dotSCAD.git synced 2025-08-01 04:20:27 +02:00

move feet

This commit is contained in:
Justin Lin
2022-06-17 11:50:01 +08:00
parent 464fcc5f8f
commit 6a30eb0e76
2 changed files with 28 additions and 26 deletions

View File

@@ -1,6 +1,5 @@
use <helix.scad>
use <along_with.scad>
use <shear.scad>
use <curve.scad>
use <sweep.scad>
use <shape_circle.scad>
@@ -154,26 +153,27 @@ module mountain_dragon() {
dragon_head();
rotate([-8, -2, -10])
translate([12, 3, 44])
rotate([16, -67.5, -200])
rotate(-2)
translate([12, 2, 44])
rotate([10, -67.5, -200])
scale(.7)
foot();
translate([13, 6.5, 45])
rotate([-75, -35, -92])
translate([13, 2.5, 45.5])
rotate([-76, -25, -95])
rotate([0, -20, 0])
mirror([1, 0, 0])
scale(.7)
translate([2, 0, 1])
foot();
translate([-11, -13, 12])
rotate([15, -65, 47])
rotate(-18)
translate([-13, -13, 13])
rotate([54, -72, 30])
rotate(-30)
scale(.65)
foot();
translate([-15, -13.5, 12])
rotate([-69, -45, 145])
translate([-10, -15.5, 12])
rotate([-87, -45, 145])
mirror([1, 0, 0])
scale(.65)
foot();
@@ -188,8 +188,8 @@ module mountain() {
difference() {
union() {
translate([0, 0, 12])
scale([.925, .85, 2.5])
worley_sphere(radius, detail, amplitude, dist, seed = 5);
scale([.925, .85, 2.4])
worley_sphere(radius, detail, amplitude, dist, seed = 14);
translate([4, -4, -15])
scale([1.04, 1.04, 1])
@@ -206,6 +206,7 @@ module mountain() {
rotate(180) {
translate([0, 0, 7])
mountain_dragon($fn = 12);
rotate(57)
translate([-1, -1, 0])
rotate(67.5)
mountain();
}

View File

@@ -21,7 +21,6 @@ module one_segment(body_r, body_fn, one_scale_data) {
rotate([-90, 0, 0])
dragon_body_scales(body_r, body_fn, one_scale_data);
points = [[0, 0, 0], [0, .1, 1], [0, 1, 1.5]] * 4;
path = bezier_curve(0.1, points);
@@ -110,7 +109,7 @@ module tail() {
}
}
module spiral_dragon() {
module mountain_dragon() {
path_pts = helix(
radius = [r1, r2],
levels = levels,
@@ -138,13 +137,13 @@ module spiral_dragon() {
one_body_scale_data = one_body_scale(body_r, body_fn, scale_fn, scale_tilt_a);
scale(1.075)
along_with(path_pts, scale = [0.575, 0.575, 0.85], method = "EULER_ANGLE")
along_with(path_pts, twist = 45, scale = [0.575, 0.575, 0.85], method = "EULER_ANGLE")
one_segment(body_r, body_fn, one_body_scale_data);
translate([27.25, 3, -.5])
rotate([-88, 0, 0])
rotate([0, 0, 90])
scale([.65, .8, 1.4])
translate([27.25, 4, 1])
rotate([-78, 0, 0])
rotate([0, 0, 125])
scale([.5, .725, 1.5])
tail();
translate([16, 0, 63])
@@ -162,11 +161,11 @@ module mountain() {
difference() {
union() {
translate([0, 0, 12])
scale([1.05, .85, 2.7])
worley_sphere(radius, detail, amplitude, dist, seed = 5);
scale([.925, .85, 2.4])
worley_sphere(radius, detail, amplitude, dist, seed = 14);
translate([4, -4, -15])
scale([1.04, 1.04, .9])
scale([1.04, 1.04, 1])
rotate(10)
worley_sphere(radius * 1.2, detail, amplitude, dist, seed = 1);
}
@@ -179,6 +178,8 @@ module mountain() {
rotate(180) {
translate([0, 0, 7])
spiral_dragon($fn = 12);
mountain();
mountain_dragon($fn = 12);
translate([-1, -1, 0])
rotate(67.5)
mountain();
}