1
0
Fork 0
freesewing/packages/plugin-dimension/README.md
2019-04-19 20:09:30 +02:00

7.3 KiB

Note

: This is part of version 2 of FreeSewing.
It is a work in progress, and not ready for prime-time yet

For all questions, please come say hellp in our chatroom on Gitter.

Freesewing logo

FreeSewing is a free and open source library for made-to-measure sewing patterns

Chat with us on GitterFollow @freesewing_org on TwitterFreeSewing on GitHubBecome a FreeSewing PatronLicense: MITBecome a FreeSewing PatronFreeSewing.orgFreeSewing.dev

@freesewing/plugin-dimension

A FreeSewing plugin to add dimensions to your (paperless) pattern

Freesewing logo

 freesewing
a library for made-to-measure sewing patterns

Travis build Version License Code coverage DeepScan grade Chat on Gitter Become a Patron

plugin-dimension

A freesewing plugin to add dimensions to your (paperless) patterns.

Install

Install this plugin from NPM:

npm install @freesewing/plugins-dimension --save

Loading the plugin

To load this plugin, add it to your instantiated pattern:

import pattern from '@freesewing/pattern-brian'
import theme from '@freesewing/plugin-theme'
import dimension from '@freesewing/plugin-dimension'

pattern.with(theme).with(dimension);

You now have the following macros available:

Name Description
hd Adds a horizontal dimension
vd Adds a vertical dimension
ld Adds a linear dimension
pd Adds a dimension that follows a path

You can use them as such:

macro('<name>', {<options>});

Parameters

As all freesewing plugins, all options needs to be passed as a single object.

hd

part.macro('hd', {
  from: points.cbNeck
, to: points.cbHips,
  y: points.cbHips + 15
});
  • from : A point object
  • to : A point object
  • y : The y-value at which to place the dimension

vd

part.macro('vd', {
  from: points.cbNeck
, to: points.cbHips,
  x: points.cbHips + 15
});
  • from : A point object
  • to : A point object
  • x : The x-value at which to place the dimension

As all freesewing macros, bundle these parameters into a single object.

ld

part.macro('ld', {
  from: points.cbNeck
, to: points.cbHips,
  d: 15
});
  • from : A point object
  • to : A point object
  • d : The distance by which to offset the dimension from the line between from and to

As all freesewing macros, bundle these parameters into a single object.

pd

part.macro('pd', {
  path: new path().move(points.cbNeck).curve(points.cbNeckCp1, points.cbNeckCp2,  points.cbHips),
  d: 15
});
  • path : A path object
  • d : The distance by which to offset the dimension from the path

As all freesewing macros, bundle these parameters into a single object.

Example

Below is an example of different dimensions.

Example of the dimension plugin

Where to get help

Questions? Stuck? The freesewing chat room on Gitter is the best place to ask for help.

About FreeSewing

Where the world of makers and developers collide, that's where you'll find FreeSewing.

Our core library is a batteries-included toolbox for parametric design of sewing patterns. It's a modular system (check our list of plugins and getting started is as simple as:

npm init freesewing-pattern

The [getting started] section on freesewing.dev is a good entrypoint to our documentation, but you'll find a lot more there, including our API documentation, as well as examples, and best practices.

If you're a maker, checkout freesewing.org where you can generate our sewing patterns adapted to your measurements.

♥️ Support FreeSewing: Become a patron ♥️

FreeSewing is an open source project run by a community, and financially supported by our patrons.

If you feel what we do is worthwhile, you too should become a patron.