✨ Added tutorial pattern
This commit is contained in:
parent
a1e9badc2c
commit
7d9e41ec6f
28 changed files with 11984 additions and 0 deletions
40
packages/tutorial/src/step3.js
Normal file
40
packages/tutorial/src/step3.js
Normal file
|
@ -0,0 +1,40 @@
|
|||
export default function(part) {
|
||||
let { Point, points, Path, paths, measurements, options } = part.shorthand();
|
||||
|
||||
let tweak = 1;
|
||||
let target = (measurements.headCircumference * options.neckRatio) / 4;
|
||||
let delta = Infinity;
|
||||
do {
|
||||
points.right = new Point((tweak * measurements.headCircumference) / 10, 0);
|
||||
points.bottom = new Point(0, (tweak * measurements.headCircumference) / 12);
|
||||
|
||||
points.rightCp1 = points.right.shift(
|
||||
90,
|
||||
points.bottom.dy(points.right) / 2
|
||||
);
|
||||
points.bottomCp2 = points.bottom.shift(
|
||||
0,
|
||||
points.bottom.dx(points.right) / 2
|
||||
);
|
||||
|
||||
paths.neck = new Path()
|
||||
.move(points.right)
|
||||
.curve(points.rightCp1, points.bottomCp2, points.bottom);
|
||||
|
||||
delta = paths.neck.length() - target;
|
||||
if (delta > 0) tweak = tweak * 0.99;
|
||||
else tweak = tweak * 1.02;
|
||||
} while (Math.abs(delta) > 1);
|
||||
|
||||
// Complete?
|
||||
if (complete) {
|
||||
if (sa) {
|
||||
}
|
||||
|
||||
// Paperless?
|
||||
if (paperless) {
|
||||
}
|
||||
}
|
||||
|
||||
return part;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue