2022-01-19 16:23:25 +01:00
|
|
|
const draftDimension = (part) => {
|
2022-01-18 08:30:33 +01:00
|
|
|
const { points, Point, paths, Path, options, macro } = part.shorthand()
|
|
|
|
|
|
|
|
if (['dimension', 'all'].indexOf(options.plugin) !== -1) {
|
2022-01-19 16:23:25 +01:00
|
|
|
points.a = new Point(0, 0)
|
|
|
|
points.b = new Point(10, 0)
|
|
|
|
points.c = new Point(0, 10)
|
|
|
|
points.d = new Point(100, 0)
|
|
|
|
points.e = new Point(0, 100)
|
|
|
|
points.f = new Point(50, 50)
|
|
|
|
points.g = new Point(80, 80)
|
|
|
|
paths.a = new Path().move(points.c).curve(points.e, points.g, points.d)
|
2022-01-18 08:30:33 +01:00
|
|
|
|
|
|
|
const opts = {
|
|
|
|
text: options.dimensionCustomText ? 'custom text' : false,
|
|
|
|
d: options.dimensionD,
|
|
|
|
noStartMarker: !options.dimensionStartMarker,
|
|
|
|
noEndMarker: !options.dimensionEndMarker,
|
|
|
|
}
|
|
|
|
|
|
|
|
macro('hd', {
|
|
|
|
from: points.a,
|
|
|
|
to: points.b,
|
|
|
|
...opts,
|
|
|
|
})
|
|
|
|
macro('vd', {
|
|
|
|
from: points.c,
|
|
|
|
to: points.a,
|
|
|
|
...opts,
|
|
|
|
})
|
|
|
|
macro('hd', {
|
|
|
|
from: points.b,
|
|
|
|
to: points.d,
|
|
|
|
...opts,
|
|
|
|
})
|
|
|
|
macro('vd', {
|
|
|
|
from: points.e,
|
|
|
|
to: points.c,
|
|
|
|
...opts,
|
|
|
|
})
|
|
|
|
macro('ld', {
|
|
|
|
from: points.b,
|
|
|
|
to: points.f,
|
|
|
|
...opts,
|
|
|
|
})
|
|
|
|
macro('pd', {
|
|
|
|
path: paths.a,
|
|
|
|
...opts,
|
|
|
|
})
|
|
|
|
|
|
|
|
// Prevent clipping of text
|
|
|
|
paths.box = new Path()
|
|
|
|
.move(new Point(-10, -10))
|
|
|
|
.line(new Point(110, 10))
|
|
|
|
.attr('class', 'hidden')
|
|
|
|
}
|
|
|
|
|
|
|
|
return part
|
|
|
|
}
|
|
|
|
|
|
|
|
export default draftDimension
|