1
0
Fork 0

chore: Added script to export to DXF

This commit is contained in:
Joost De Cock 2020-04-18 18:13:22 +02:00
parent 4f81e3dc8d
commit 4833f1a4c0
4 changed files with 88 additions and 0 deletions

1
.gitignore vendored
View file

@ -1,6 +1,7 @@
# See https://help.github.com/ignore-files/ for more about ignoring files.
# Specifics
export
packages/plugin-theme/src/bundle.css.js
packages/plugin-theme/css
packages/components/Blockquote

View file

@ -22,6 +22,7 @@
"jsonlint:files": "find . -name \"*.json\" | grep -v -f .eslintignore",
"prettier": "npx prettier --write 'packages/**/src/*.js'",
"reconfigure": "npx babel-node scripts/reconfigure.js",
"dxf": "npx babel-node scripts/export-dxf.js",
"prerelease": "lerna version --no-git-tag-version --no-push && yarn reconfigure && lerna run build",
"release": "lerna exec -- npm publish",
"postrelease": "git add . && git commit -m ':bookmark: v$npm_package_version' && git tag -a v$npm_package_version -m ':bookmark: FreeSewing v$npm_package_version'",

29
scripts/export-dxf.js Normal file
View file

@ -0,0 +1,29 @@
const patterns = require('./patterns')
const exportDxfPlugin = require('@freesewing/plugin-export-dxf')
const models = require('@freesewing/models')
const info = require('@freesewing/pattern-info')
const capitalize = require('@freesewing/utils/capitalize')
const fs = require('fs').promises
const exportDxf = async (pattern) => {
if (process.argv[2] && pattern !== process.argv[2]) return
let dxf
try {
dxf = new patterns[capitalize(pattern)](settings).use(exportDxfPlugin).draft().exportDxf()
} catch (err) {
console.log('Could not export ', pattern, err)
}
await fs.writeFile(`${__dirname}/../export/dxf/${pattern.toLowerCase()}.dxf`, dxf)
}
const saveFile = (data, filename) => {}
let settings = {
complete: false,
measurements: models.withoutBreasts.size42
}
for (let pattern of info.withoutBreasts) exportDxf(pattern)
settings.measurements = models.withBreasts.size36
for (let pattern of info.withBreasts) exportDxf(pattern)

57
scripts/patterns.js Normal file
View file

@ -0,0 +1,57 @@
const Aaron = require('@freesewing/aaron')
const Benjamin = require('@freesewing/benjamin')
const Bent = require('@freesewing/bent')
const Breanna = require('@freesewing/breanna')
const Brian = require('@freesewing/brian')
const Bruce = require('@freesewing/bruce')
const Carlita = require('@freesewing/carlita')
const Carlton = require('@freesewing/carlton')
const Cathrin = require('@freesewing/cathrin')
const Diana = require('@freesewing/diana')
const Florent = require('@freesewing/florent')
const Fu = require('@freesewing/fu')
const Holmes = require('@freesewing/holmes')
const Huey = require('@freesewing/huey')
const Hugo = require('@freesewing/hugo')
const Jaeger = require('@freesewing/jaeger')
const Penelope = require('@freesewing/penelope')
const Sandy = require('@freesewing/sandy')
const Shin = require('@freesewing/shin')
const Simon = require('@freesewing/simon')
const Simone = require('@freesewing/simone')
const Sven = require('@freesewing/sven')
const Tamiko = require('@freesewing/tamiko')
const Theo = require('@freesewing/theo')
const Trayvon = require('@freesewing/trayvon')
const Wahid = require('@freesewing/wahid')
const Waralee = require('@freesewing/waralee')
module.exports = {
Aaron,
Benjamin,
Bent,
Breanna,
Brian,
Bruce,
Carlita,
Carlton,
Cathrin,
Diana,
Florent,
Fu,
Holmes,
Huey,
Hugo,
Jaeger,
Penelope,
Sandy,
Shin,
Simon,
Simone,
Sven,
Tamiko,
Theo,
Trayvon,
Wahid,
Waralee
}