2021-10-17 18:26:00 +02:00
|
|
|
---
|
2021-08-25 16:09:31 +02:00
|
|
|
title: Creating a new pattern design
|
|
|
|
for: developers
|
|
|
|
about: Shows you how to create a new design
|
2021-10-17 18:26:00 +02:00
|
|
|
---
|
2021-08-25 16:09:31 +02:00
|
|
|
|
|
|
|
To create a new pattern, call `new freesewing.Design()`.
|
2022-02-19 08:04:25 +01:00
|
|
|
It takes your pattern configuration,
|
2021-08-25 16:09:31 +02:00
|
|
|
and any plugins you want to load as parameters.
|
|
|
|
|
|
|
|
For example, if we were creating a new pattern called `Sorcha`:
|
|
|
|
|
|
|
|
```js
|
|
|
|
import freesewing from "@freesewing/core"
|
|
|
|
import plugins from "@freesewing/plugin-bundle"
|
|
|
|
import config from "../config"
|
|
|
|
|
|
|
|
// Create new design
|
|
|
|
const Sorcha = new freesewing.Design(config, plugins)
|
|
|
|
```
|
|
|
|
|
2022-02-19 08:04:25 +01:00
|
|
|
This method does not return a `Design` object. Instead it returns
|
2021-08-25 16:09:31 +02:00
|
|
|
a constructor method for your pattern.
|
|
|
|
|
|
|
|
When importing your pattern, it is itself a constructor:
|
|
|
|
|
|
|
|
```js
|
|
|
|
import Sorcha from "@freesewing/sorcha"
|
|
|
|
|
|
|
|
// Sorcha is a constructor for your pattern.
|
|
|
|
let pattern = new Sorcha()
|
|
|
|
```
|
|
|
|
|
|
|
|
<Tip>
|
|
|
|
|
|
|
|
##### Design() is a super-constructor
|
|
|
|
|
2022-02-19 08:04:25 +01:00
|
|
|
Constructors are functions you can call with `new` to create an object.
|
2021-08-25 16:09:31 +02:00
|
|
|
As `freesewing.Design()` returns a constructor, you can think of it
|
|
|
|
as a super-constructor.
|
|
|
|
|
|
|
|
</Tip>
|