64 lines
2 KiB
JavaScript
64 lines
2 KiB
JavaScript
export default function (part, demo = false) {
|
|
const { Point, Path, points, paths, snippets, Snippet, store, options } = part.shorthand()
|
|
|
|
if (options.only === 'snippets' || demo) {
|
|
let y = store.get('y')
|
|
let w = store.get('w')
|
|
|
|
const snips = {
|
|
logo: 35,
|
|
notch: 15,
|
|
bnotch: 15,
|
|
button: 15,
|
|
buttonhole: 25,
|
|
'buttonhole-start': 15,
|
|
'buttonhole-end': 25,
|
|
'snap-socket': 25,
|
|
'snap-stud': 15,
|
|
}
|
|
y += 20
|
|
if (!demo)
|
|
paths.noClip = new Path()
|
|
.move(new Point(0, y - 5))
|
|
.line(new Point(10, y - 5))
|
|
.attr('class', 'hidden')
|
|
else
|
|
points.snippets = new Point(0, y)
|
|
.attr('data-text', 'Snippets')
|
|
.attr('data-text-class', 'text-lg bold')
|
|
y += 10
|
|
points['sl1'] = new Point(w * 0.25, y)
|
|
points['sl2'] = new Point(w * 0.5, y)
|
|
points['sl3'] = new Point(w * 0.75, y)
|
|
points['sl1']
|
|
.attr('data-text', 'data-scale: 1\ndata-rotate: 0')
|
|
.attr('data-text-class', 'center text')
|
|
.attr('data-text-lineheight', 7)
|
|
points['sl2']
|
|
.attr('data-text', 'data-scale: 1.25\ndata-rotate: 0')
|
|
.attr('data-text-class', 'center text')
|
|
.attr('data-text-lineheight', 7)
|
|
points['sl3']
|
|
.attr('data-text', 'data-scale: 0.75\ndata-rotate: 90')
|
|
.attr('data-text-class', 'center text')
|
|
.attr('data-text-lineheight', 7)
|
|
y += 55
|
|
for (let i in snips) {
|
|
points['snt' + i] = new Point(0, y)
|
|
points['snt' + i].attr('data-text', i)
|
|
points['sn1' + i] = new Point(w * 0.3, y)
|
|
points['sn2' + i] = new Point(w * 0.55, y)
|
|
points['sn3' + i] = new Point(w * 0.8, y)
|
|
snippets['sn1' + i] = new Snippet(i, points['sn1' + i])
|
|
snippets['sn2' + i] = new Snippet(i, points['sn2' + i])
|
|
snippets['sn2' + i].attr('data-scale', 1.25)
|
|
snippets['sn3' + i] = new Snippet(i, points['sn3' + i])
|
|
snippets['sn3' + i].attr('data-scale', 0.75).attr('data-rotate', 90)
|
|
y += snips[i]
|
|
}
|
|
store.set('y', y)
|
|
if (!demo) paths.noClip.line(new Point(w, y))
|
|
}
|
|
|
|
return part
|
|
}
|