49 lines
876 B
JavaScript
49 lines
876 B
JavaScript
export default (part) => {
|
|
let { Point, points, Path, paths, macro } = part.shorthand()
|
|
|
|
points.A = new Point(0, 0)
|
|
points.B = new Point(0, 100)
|
|
points.C = new Point(50, 100)
|
|
points.D = new Point(100, 50)
|
|
points.DCp1 = new Point(100, 0)
|
|
|
|
paths.box = new Path()
|
|
.move(points.A)
|
|
.line(points.B)
|
|
.line(points.C)
|
|
.line(points.D)
|
|
.curve(points.DCp1, points.A, points.A)
|
|
.close()
|
|
|
|
macro('vd', {
|
|
from: points.A,
|
|
to: points.B,
|
|
x: points.A.x - 15,
|
|
})
|
|
|
|
macro('hd', {
|
|
from: points.B,
|
|
to: points.C,
|
|
y: points.B.y + 15,
|
|
})
|
|
|
|
macro('ld', {
|
|
from: points.C,
|
|
to: points.D,
|
|
d: -15,
|
|
})
|
|
|
|
macro('ld', {
|
|
from: points.C,
|
|
to: points.D,
|
|
d: -30,
|
|
text: 'Custom text',
|
|
})
|
|
|
|
macro('pd', {
|
|
path: new Path().move(points.A).curve(points.A, points.DCp1, points.D),
|
|
d: -15,
|
|
})
|
|
|
|
return part
|
|
}
|