16 lines
421 B
OpenSCAD
16 lines
421 B
OpenSCAD
$fn = 100;
|
|
|
|
// --- function returns the heart points (data) ---
|
|
function heart_pts(n=300, s=1) = [
|
|
for (i = [0:n-1]) let(t = 360*i/n)
|
|
[ s*16*pow(sin(t),3),
|
|
s*(13*cos(t) - 5*cos(2*t) - 2*cos(3*t) - cos(4*t)) ]
|
|
];
|
|
|
|
// --- module produces the heart polygon (geometry) ---
|
|
module heart(n=300, s=1) {
|
|
polygon(points = heart_pts(n, s),
|
|
paths = [[ for (i=[0:n-1]) i ]]);
|
|
}
|
|
heart(300, 1);
|