<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="/assets/rss.xsl" type="text/xsl"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
>
<channel>
	<title>Sacha Chua - category - sewing</title>
	<atom:link href="https://sachachua.com/blog/category/sewing/feed/index.xml" rel="self" type="application/rss+xml" />
	<atom:link href="https://sachachua.com/blog/category/sewing" rel="alternate" type="text/html" />
	<link>https://sachachua.com/blog/category/sewing/feed/index.xml</link>
	<description>Emacs, sketches, and life</description>
	<lastBuildDate>Mon, 06 Apr 2026 14:36:57 GMT</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>daily</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>11ty</generator>
  <item>
		<title>Making and re-making: fabric is tuition</title>
		<link>https://sachachua.com/blog/2025/06/making-and-re-making-fabric-is-tuition/</link>
		<dc:creator><![CDATA[Sacha Chua]]></dc:creator>
		<pubDate>Tue, 10 Jun 2025 01:09:58 GMT</pubDate>
    <category>sewing</category>
<category>parenting</category>
<category>life</category>
		<guid isPermaLink="false">https://sachachua.com/blog/2025/06/making-and-re-making-fabric-is-tuition/</guid>
		<description><![CDATA[<p>
Sewing together with A+ is helping me learn so
much about making and re-making, and about saying
yes.
</p>

<p>
I'm not good at saying yes. Sometimes it's because
I have no idea how to make something happen, and I
don't want to overcommit. Sometimes it's because I
don't think something will be practical or
worthwhile. Sometimes it's because I want to spend
the time or money on other things instead.
Sometimes I don't know how to make it something
that she can help with. But A+ asks with shining
eyes, and I'm learning, slowly, slowly, to say
yes. I'm beginning to trust that the mistakes
don't matter as much as the memories do.
</p>

<div class="center-doodle" id="org833212d">

<figure id="orgd57b351">
<img src="https://sachachua.com/blog/2025/06/making-and-re-making-fabric-is-tuition/2025-06-09%20swim%20dress.jpg" alt="2025-06-09 swim dress.jpg" style="max-height:300px" title="Sketch of A+ twirling in a floor-length dress of swimsuit fabric, her skirt billowing">

</figure>

</div>

<p>
A+ has always had ideas about what she wants to
wear. At five, she was all about floor-length
dresses. I sewed her A-line dresses in comfortable
cotton Lycra, peasant-style dresses that matched
my tops. I also made a knee-length swim skirt for
her. She liked it and requested a floor-length
version so that she could twirl and twirl and
twirl at the splash pad. She wore it into the
wading pool too, enjoying how it swirled around
her, trapping air under the skirt and marvelling
as it ballooned. The following year, she asked me
to attach a bodice to it to make it a dress. I
turned the knee-length skirt into the bodice for
the floor-length dress, took out the stitches that
had previously narrowed the then-too-large waist,
and it was good for another year of twirling.
</p>

<p>
When she was 6 and in the throes of a Cinderella
obsession (we read through 50+ variants of the
story from the library), I made her a powder blue
charmeuse ballgown with a full-circle skirt
supported by the petticoats and tutus that she
layered with abandon: 19 layers of tulle in total.
She loved curtsying and twirling with that whole
shebang at the pretend tea parties she hosted at
the playground, and it survived the washing
machine surprisingly well.
</p>

<p>
A+ is nine now and has long outgrown the ballgown,
which has been stashed in the closet until I
figure out if it's going to become a skirt for her
or for me. But she still wears the A-line dresses
from years ago, which now reach her knees instead
of her ankles. She still likes fanciful clothes. I
made a floor-length light blue dress so that she
could wear it to her cousin's wedding. She picked
out some ribbon for the waist, a lace trim to
place near the hem, and some ribbon flowers as
embellishments, and she asked me to sew a hooded
cloak with a ribbon closure. After the wedding, I
trimmed the dress to knee-length and re-sewed the
lace close to the new hem so that she could wear
it while biking to the playground.
</p>

<p>
Inevitably, she's beginning to grow up. Her fancy
is tempered by a few nods to practicality:
</p>

<ul class="org-ul">
<li>knee-length skirts because they don't get in the way of riding her bike</li>
<li>she likes stretchy fabric more than woven fabric</li>
<li>skorts are great for doing cartwheels or hanging upside down.</li>
</ul>

<p>
We prefer to buy fabric in person so that she can
feel the fabric on her skin. At the store, A+
zeroed in on a sheer floral print organza that she
had seen on a mannequin in the window display.
"The organza doesn't have a border," she said. "We
can make it a circle skort." She's learning to
think about the characteristics of the fabric and
what we can do with it. She matched the sheer
floral organza fabric with a peach
polyester-spandex from the swimwear section and
the right colour of thread from the basement.
</p>

<p>
This will be the fourth warm-weather skirt this
year. We make little tweaks each time, as she
learns more about what she likes to wear. Here's
the progression so far:
</p>

<ul class="org-ul">
<li>For her first summer skirt this year, I made a
lavender knee-length rectangle skirt with
scallop-edged embroidered mesh over bridal
satin, gathered at a 1:2 ratio. She liked the
dressiness of it, but 1:2 turned out to not be
enough ease for cartwheels, so she changes into
something else when she wants to be more active.</li>
<li>The second was a mermaid scale skort made from
the swimwear fabric I ordered last year, based
on one of the purchased skorts she liked. It'll
be her new swim skirt.</li>
<li>The third one was a purple skort. I changed it
from side seams to a single back seam so that
it's easier for A+ to tell the difference
between front and back.</li>
</ul>

<div class="center-doodle" id="orgb0daf39">

<figure id="orgde2da36">
<img src="https://sachachua.com/blog/2025/06/making-and-re-making-fabric-is-tuition/2025-06-09%20variations%20on%20a%20theme.jpg" alt="2025-06-09 variations on a theme.jpg" style="max-height:200px" title="Variations on a theme">

</figure>

</div>

<p>
I love being able to change things based on her
feedback. We've browsed nearby clothing stores and
bought a few pieces, but she rarely finds things
that she really likes. Her last pick from the
store was a peach skort with a matching top. I
removed the waist elastic from the top because she
doesn't like elastics, and now it's good to go.
It'll be the model for the new skort, I think: a
non-stretchy skirt with a stretchy fabric used for
the shorts. This time she wants a knee-length
circle skirt instead of the mid-thigh length of
the commercial skorts. Easy enough - just a matter of
drawing a bigger circle.
</p>

<div class="center-doodle" id="orga407492">

<figure id="org06742cf">
<img src="https://sachachua.com/blog/2025/06/making-and-re-making-fabric-is-tuition/2025-06-09%20hat.jpg" alt="2025-06-09 hat.jpg" style="max-height:200px" title="Sketch of a pointy hat">

</figure>

</div>

<p>
I appreciate how all this experience re-making
things makes it easier to say yes to A+'s ideas.
For example, the hat I sewed for her last year is
starting to feel a bit small. I cut pieces for a
new bucket hat using the free <a href="https://www.applegreencottage.com/tutorial-cute-bucket-hat/">AppleGreen Cottage
pattern</a> that I'd previously used to make two other
hats for her and one for me. This time, I wanted
to make the outer layer from the floral canvas
left over from reupholstering long-gone dining
room chairs and the inner layer from the linen tea
toweling that we decided not to use in the
kitchen. Midway through the process, A+ asked me
if I could make the hat pointy instead, like a
witch's hat. I put the brim pieces together,
sketched out a quick quarter-circle, sewed the
outer layer, and tested the fit on her head. Then
I used the inner brim layer to cover up the seams,
finished with some topstitching, and it was good
to go. I figured that if she changed her mind and
wanted a flat hat, I could easily make one from
the scraps, or I could even modify this pointy hat
to put a different crown on it.
</p>

<div class="center-doodle" id="orgba7b339">

<figure id="orgdd6a227">
<img src="https://sachachua.com/blog/2025/06/making-and-re-making-fabric-is-tuition/2025-06-09%20doll.jpg" alt="2025-06-09 doll.jpg" style="max-height:300px" title="A doll with a scrap of fabric tied around her">

</figure>

</div>

<p>
Sewing is becoming more enjoyable and less
stressful. I worry less about making mistakes
because I've learned how to recover from many of
them. Sometimes something's more of a loss, like
that lavender floor-length cotton dress with a
split organza overskirt that she wore a couple of
times before it was declared too uncomfortable, or
the scraps that she cuts up when trying to fashion
a dress for her doll. That's fine, fabric is
tuition for learning.
</p>

<p>
A+'s becoming more adept, too. She's no longer
limited to standing still for measurements,
fetching pieces of fabric, or other make-work I
could think of to keep her busy while I sewed. Now
she can get the sewing machine to wind the bobbin
and she can thread the needle. She can sew
straight seams and stop when the machine makes an
unexpected sound. She can turn straps right side
out and unpick seams when we make mistakes or
change our minds. She knows it isn't just a matter
of how a fabric looks, but also what it feels like
and how it moves. She's gradually learning what
she likes and what she doesn't like. And if I have
the temerity to remind her how to do something
("Make a 'p' shape with the thread when you put it
in the bobbin case"), I get a glimpse of the
teenager she'll become ("I know how to do it,
Mom.").
</p>

<p>
We're getting better at seeing the clothes as
their component parts: patterns, fabric, pieces we
can recombine. "Can you copy this, but without
sleeves?" she asks, and I figure it out. Looking
at the yardage left, I can start to think: ah, I
can squeeze a matching training bra out of this
part, and I think I have enough here to make a
top, and this rectangle is large enough for a
headband, and I can turn these scraps into flowers
while I'm waiting for her at a playdate.
</p>

<p>
I'm learning from all her requests. By myself, I
tend to settle into comfortable routines. In 2015,
<a href="https://sachachua.com/blog/2015/05/quantified-self-the-numbers-on-sewing/">I made 18 tops</a> based on the <a href="https://www.seamwork.com/pdf-sewing-patterns/sorbetto-easy-woven-tank-top?cv=2">Colette Sorbetto woven
tank top pattern</a>, eventually taking advantage of
<a href="https://hacklab.to/">Hacklab</a>'s laser cutter to <a href="https://sachachua.com/blog/2015/04/laser-cutting-update-marvel-version/">precisely cut the fabric</a>
so that my notches lined up every time. When I
find something I like, I make it again and again.
A+'s still figuring out what she likes. We're
learning so much.
</p>

<p>
Sewing for A+ is a time-limited opportunity, and I
want to make the most of it. There are only so
many clothes I can sew for her. Eventually she may
want to wear the same things as everyone else, or
eventually she might be comfortable doing all the
sewing herself. Eventually she'll be off on her
own life. Maybe the ballgowns will turn into
skirts or camisoles, and from there into headbands
or scrunchies.
</p>

<div class="org-center">
<p>
・・・・・
</p>
</div>


<p>
Re-making echoes through our past. My mom tells me
this story of how her mom sewed, and how their
family was poor. My mom rarely got a new dress, so
when her mom sewed a red dress for her, that was
special. She wore it until the bodice couldn't fit
any more. Her mom undid the seams, sewed a new
bodice onto the skirt, and gave the dress back to
her. She wore it until the skirt was all worn out.
Her mom undid the seams and replaced the skirt. My
mom said to her mom, "Does this mean I have a <a href="https://en.wikipedia.org/wiki/Ship_of_Theseus">new
dress</a> now?" This was not the only dress my
grandmother made for her. My mom also tells a
story of how one time she hovered by her mom's
sewing machine, impatiently waiting for her mom to
finish sewing the dress that she was going to wear
to a party that day. My grandmother must have also
worked on re-making, on learning how to say yes.
My mom didn't make clothes for me, but she passed
on the stories.
</p>

<p>
All this reminds me a little of two picture books
we borrowed from the library. <a href="https://www.goodreads.com/book/show/6219325-my-forever-dress">My Forever Dress</a> by
Harriet Ziefurt and Liz Murphy (2009, <a href="https://www.youtube.com/watch?v=0YezKVKVgho">video</a>) shows
how a grandmother extended and transformed a dress
as her granddaughter grew. <a href="https://schol.ca/our-books/book/something-from-nothing-9781443119467">Something from Nothing</a>
by Phoebe Gilman (1992, <a href="https://www.youtube.com/watch?v=sVIcmOVuFsI">video</a>) retells the Yiddish
folktale about <a href="http://www.newtunings.com/kidmid/overcoat.html">Joseph's overcoat</a>, this time with a
special blanket that gets worn down and
transformed into a jacket, a vest, a tie, a
handkerchief, ending as a fabric-covered button.
The button gets lost, but it turns into a story.
Of the two, I liked <i>Something from Nothing</i> more.
I liked the lighter touch it told the story with,
and I liked the reminder that cherished things can
be turned into stories.
</p>

<div class="center-doodle" id="org6387b5c">

<figure id="orgee08f78">
<img src="https://sachachua.com/blog/2025/06/making-and-re-making-fabric-is-tuition/2025-06-09%20bag.jpg" alt="2025-06-09 bag.jpg" style="max-height:400px" title="A bag that's just the right size">

</figure>

</div>

<p>
A+ was in the kitchen, making a grocery list on an
LCD writing tablet. She wanted to buy apple sauce,
yogurt cups, and mac and cheese. She wanted to do
it herself, with her own money. W- will walk her
to the store, let her loose, and meet up with her
in front of one of the aisles. "Mama, you can stay
home," she said.
</p>

<p>
Challenge: She wanted her own bag for groceries.
Her backpack was too small. I rummaged through the
reusable bags hanging on the coat hooks. There's
this cotton tote we got from an event, but the
straps are too long. When she put it on her
shoulder, it threatened to fall down. When she
carried the bag by its straps, the bag dragged on
the floor. I shortened one strap to see if she can
hold it then. The body of the bag itself was too
long. I sewed a seam across the bottom. Now it's
the right height for her. I shortened the other
strap and serged the bottom seam to make it neat.
She wanted a pocket for her purse and the KN95
mask that she'll wear in the supermarket. W- was
almost ready to head out. "Give me another five
minutes and I can make her a pocketed bag," I
said. He waited. I opened up the scrap from the
bottom, sewed the edges together in the other
direction, turned it into a pocket, and sewed it
to the top hem of the bag. A+ pronounced it
perfect. She tucked her purse, mask, and shopping
list into the bag, looped the straps over her
shoulder, snugged the bag under her elbow, and
headed out into the world.
</p>

<div class="org-center">
<p>
・・・・・
</p>
</div>


<p>
I still sweat my way through figuring out how to
sew what she comes up with, but it's good for me.
I make and re-make so she can have things that fit
her ideas, and so that she can dream of more.
She's learning that her ideas matter. It can take
several tries, but we can make them happen
together. Someday she'll make and re-make things
all on her own.
</p>

<p>
<i>This post was inspired by the June IndieWeb Carnival theme of <a href="https://www.nicksimson.com/posts/2025-indieweb-carnival-take-two.html">Take Two</a>.</i>
</p>
<div><a href="https://sachachua.com/blog/2025/06/making-and-re-making-fabric-is-tuition/index.org">View org source for this post</a></div>
<p>You can <a href="https://social.sachachua.com/@sacha/statuses/01JXBPVR37BD6XZXF4JBKHCNPH" target="_blank" rel="noopener noreferrer">comment on Mastodon</a> or <a href="mailto:sacha@sachachua.com?subject=Comment%20on%20https%3A%2F%2Fsachachua.com%2Fblog%2F2025%2F06%2Fmaking-and-re-making-fabric-is-tuition%2F&body=Name%20you%20want%20to%20be%20credited%20by%20(if%20any)%3A%20%0AMessage%3A%20%0ACan%20I%20share%20your%20comment%20so%20other%20people%20can%20learn%20from%20it%3F%20Yes%2FNo%0A">e-mail me at sacha@sachachua.com</a>.</p>]]></description>
		</item><item>
		<title>Level up: figured out how to add a zipper pull on continuous zipper tape</title>
		<link>https://sachachua.com/blog/2016/02/level-figured-add-zipper-pull-continuous-zipper-tape/</link>
		<dc:creator><![CDATA[Sacha Chua]]></dc:creator>
		<pubDate>Sat, 06 Feb 2016 02:14:00 GMT</pubDate>
    <category>sewing</category>
		<guid isPermaLink="false">https://sachachua.com/blog/?p=28604</guid>
		<description><![CDATA[<p>The fabric warehouse near our house has an assortment of zippers, but it can be tricky digging through the bins to find a zipper of the appropriate type, length, and colour. They also sell zippers by the yard, and will thread on as many pulls as you ask for.</p>
<p>I picked up a few yards of zipper tape months ago as an experiment. I've used the zippers on a number of small pouches already. It's so convenient being able to just cut the length of the zipper I need instead of sifting through a stash of pre-cut zippers.</p>
<p>Today I was sewing a large pouch that needed a 21&#8243; zipper along one end. One side of the zipper had escaped the zipper pull on the segment I was working with, so I opened the zipper and removed the last two zipper pulls that were on it. Then I realized I had no idea how to get the zipper pulls back on.</p>
<p>Youtube to the rescue! I followed this tutorial:</p>
<p><iframe loading="lazy" src="https://www.youtube.com/embed/BZ8srHfJ-aM" width="640" height="360" frameborder="0" allowfullscreen="allowfullscreen"></iframe></p>
<p>After a little bit of wiggling, I got the zipper pull onto the coils. The new zipper pull zipped the zipper closed behind it. Hooray!</p>
<p>Bonus: Because I had left the bottom part of the zipper closed, by the time I had moved the zipper pull to the middle of the segment I had stitched into the pouch, the zipper pull was basically in between two closed parts of the zipper. This made stitching over both sides of the zipper much neater than it would have been if one of the sides were open, like the way pre-cut zippers are.</p>
<p><a href="https://sachachua.com/blog/wp-content/uploads/2016/02/2016-02-05a-Zipper-pulls-and-zipper-tape-index-card-sewing.png" rel="attachment wp-att-28607"><img loading="lazy" class="alignnone size-medium wp-image-28607" src="https://sachachua.com/blog/wp-content/uploads/2016/02/2016-02-05a-Zipper-pulls-and-zipper-tape-index-card-sewing-640x383.png" alt="2016-02-05a Zipper pulls and zipper tape &#45;&#45; index card #sewing" width="640" height="383" srcset="https://sachachua.com/blog/wp-content/uploads/2016/02/2016-02-05a-Zipper-pulls-and-zipper-tape-index-card-sewing-640x383.png 640w, https://sachachua.com/blog/wp-content/uploads/2016/02/2016-02-05a-Zipper-pulls-and-zipper-tape-index-card-sewing-280x168.png 280w, https://sachachua.com/blog/wp-content/uploads/2016/02/2016-02-05a-Zipper-pulls-and-zipper-tape-index-card-sewing-768x460.png 768w, https://sachachua.com/blog/wp-content/uploads/2016/02/2016-02-05a-Zipper-pulls-and-zipper-tape-index-card-sewing.png 1497w" sizes="(max-width: 640px) 100vw, 640px"></a></p>
<p>2016-02-05a Zipper pulls and zipper tape &#8212; index card #sewing</p>
<p>I love how easy it is to find all sorts of practical tutorials on the Internet. It's a small thing, but it's nice to know that I can deal with zipper pulls and zipper tape. It means that I can buy zipper tape by the yard and never have to worry about having the wrong length, and that I can make large containers without being constrained by the pre-cut lengths available in the fabric stores. Yay making things!</p>

<p>You can <a href="mailto:sacha@sachachua.com?subject=Comment%20on%20https%3A%2F%2Fsachachua.com%2Fblog%2F2016%2F02%2Flevel-figured-add-zipper-pull-continuous-zipper-tape%2F&body=Name%20you%20want%20to%20be%20credited%20by%20(if%20any)%3A%20%0AMessage%3A%20%0ACan%20I%20share%20your%20comment%20so%20other%20people%20can%20learn%20from%20it%3F%20Yes%2FNo%0A">e-mail me at sacha@sachachua.com</a>.</p>]]></description>
		</item><item>
		<title>Learning about patchwork and sewing</title>
		<link>https://sachachua.com/blog/2015/12/learning-patchwork-sewing/</link>
		<dc:creator><![CDATA[Sacha Chua]]></dc:creator>
		<pubDate>Tue, 29 Dec 2015 00:20:00 GMT</pubDate>
    <category>sewing</category>
		<guid isPermaLink="false">https://sachachua.com/blog/?p=28530</guid>
		<description><![CDATA[<p>I&#8217;ve been looking into patchwork and quilting as a way to reuse scraps of fabric left over from sewing. That way, I don&#8217;t end up stashing stray odd-cuts forever, and I don&#8217;t feel guilty about trashing or donating material. (There are only so many zippered pouches I need in my life!) I can cut as many standard-size pieces as I can, and then store those in a more organized way.</p>
<p>I wanted to start pretty small: 4&#8243;x4&#8243; squares (3.5&#8243; after sewing with 1/4&#8243; seam allowances), maybe 11&#215;11 squares for a finished size of 38.5&#8243; square. I still have lots of scraps to cut up, but I figured I&#8217;d give it a try first before committing the rest of my stash. Make a prototype, see what it&#8217;s like, maybe turn it into something for the cats or something to drape…</p>
<p>I counted the squares I cut from some fabric I had lying around, and assigned one-character labels for them. I stopped after I cut a little over 121 squares (11&#215;11).</p>
<table id="orgtable1" border="2" frame="hsides" rules="groups" cellspacing="0" cellpadding="6">
<colgroup>
<col class="org-left">
<col class="org-left">
<col class="org-right"> </colgroup>
<tbody>
<tr>
<td class="org-left">A</td>
<td class="org-left">red gingham</td>
<td class="org-right">12</td>
</tr>
<tr>
<td class="org-left">b</td>
<td class="org-left">black gingham</td>
<td class="org-right">38</td>
</tr>
<tr>
<td class="org-left">m</td>
<td class="org-left">marvel</td>
<td class="org-right">6</td>
</tr>
<tr>
<td class="org-left">D</td>
<td class="org-left">beige</td>
<td class="org-right">11</td>
</tr>
<tr>
<td class="org-left">B</td>
<td class="org-left">white crosses</td>
<td class="org-right">56</td>
</tr>
</tbody>
</table>
<p>Time to plan! I created a dot grid (in Emacs, naturally) and began filling it in with characters, like so:</p>
<pre class="example">B.B.B.B.B.B
...........
B.........B
...........
B.........B
...........
B.........B
...........
B.........B
...........
B.B.B.B.B.B
</pre>
<p>At first, I tried to keep track of the number of squares manually, but that got annoying to update as I tweaked the layout. By the time I got to something like this:</p>
<pre id="orgexampleblock1" class="example">BbBbBbBbBbB
bBbBbBbBbBb
BbBABABABbB
bBABDBDBABb
BbBDmbmDBbB
bBABDmDBABb
BbBDmbmDBbB
bBABDBDBABb
BbBABABABbB
bBbBbBbBbBb
BbBbBbBbBbB
</pre>
<p>… I found this code to be really helpful for making sure I hadn&#8217;t put in more of one character than I had, and to show me which ones I still had left.</p>
<div class="org-src-container">
<pre id="orgsrcblock1" class="src src-emacs-lisp">(<span class="org-keyword">let</span> ((totals
       (mapcar (<span class="org-keyword">lambda</span> (x) (cons (char-to-string (car x)) (length (cdr x))))
               (-group-by 'identity (string-to-list (replace-regexp-in-string <span class="org-string">"\n"</span> <span class="org-string">""</span> data))))))
  (mapcar (<span class="org-keyword">lambda</span> (x) (append (list (assoc-default (car x) totals)
                                    (- (elt x 2) (assoc-default (car x) totals)))
                              x)) <span class="org-warning">squares))</span>
</pre>
</div>
<p>The first column has the number of squares used in the design. The second column has the number of squares left. The remaining columns were copied from the original table.</p>
<table border="2" frame="hsides" rules="groups" cellspacing="0" cellpadding="6">
<colgroup>
<col class="org-right">
<col class="org-right">
<col class="org-left">
<col class="org-left">
<col class="org-right"> </colgroup>
<tbody>
<tr>
<td class="org-right">12</td>
<td class="org-right">0</td>
<td class="org-left">A</td>
<td class="org-left">red gingham</td>
<td class="org-right">12</td>
</tr>
<tr>
<td class="org-right">38</td>
<td class="org-right">0</td>
<td class="org-left">b</td>
<td class="org-left">black gingham</td>
<td class="org-right">38</td>
</tr>
<tr>
<td class="org-right">5</td>
<td class="org-right">1</td>
<td class="org-left">m</td>
<td class="org-left">marvel</td>
<td class="org-right">6</td>
</tr>
<tr>
<td class="org-right">10</td>
<td class="org-right">1</td>
<td class="org-left">D</td>
<td class="org-left">beige</td>
<td class="org-right">11</td>
</tr>
<tr>
<td class="org-right">56</td>
<td class="org-right">0</td>
<td class="org-left">B</td>
<td class="org-left">white crosses</td>
<td class="org-right">56</td>
</tr>
</tbody>
</table>
<p>After lots of sewing and pressing, I ended up with something that looked reasonably like a patchwork quilt. It was actually pretty relaxing to sew once I got the hang of arranging things, since it just used straight lines. I unpicked two seams after stitching them incorrectly. The rest of the seams turned out okay.</p>
<p><a href="https://sachachua.com/blog/wp-content/uploads/2015/12/2015-12-28-17.16.17.jpg" rel="attachment wp-att-28531"><img loading="lazy" class="alignnone size-medium wp-image-28531" src="https://sachachua.com/blog/wp-content/uploads/2015/12/2015-12-28-17.16.17-640x480.jpg" alt="2015-12-28 17.16.17" width="640" height="480" srcset="https://sachachua.com/blog/wp-content/uploads/2015/12/2015-12-28-17.16.17-640x480.jpg 640w, https://sachachua.com/blog/wp-content/uploads/2015/12/2015-12-28-17.16.17-267x200.jpg 267w, https://sachachua.com/blog/wp-content/uploads/2015/12/2015-12-28-17.16.17-768x576.jpg 768w" sizes="(max-width: 640px) 100vw, 640px"></a></p>
<p>In retrospect, maybe I shouldn&#8217;t have included two strong black-and-white prints. This one feels a little like an optical illusion, and it&#8217;s not that restful to look at it in full. I probably won&#8217;t be using it as a wall hanging, but it might be nice to use it to dress up one of the cat beds. I could skip the batting, buy a cotton or flannel sheet from the thrift store for use as backing, and then quilt it for practice. Skipping the batting this time around might let me get away without setting up a walking foot, too.</p>
<p>I still have tons to learn about dealing with colours and prints. Maybe I can learn faster with smaller blocks. I&#8217;ll probably cut more 4&#8243; squares since that&#8217;s a convenient size for my grid ruler, and maybe 2.5&#8243; or 2&#8243; if there are leftover scraps that won&#8217;t fit. Then I&#8217;ll organize them by value and colour and see what I can make. I can turn them into shopping bags, since our current collection is starting to wear out. We&#8217;ll see how that goes!</p>

<p>You can <a href="mailto:sacha@sachachua.com?subject=Comment%20on%20https%3A%2F%2Fsachachua.com%2Fblog%2F2015%2F12%2Flearning-patchwork-sewing%2F&body=Name%20you%20want%20to%20be%20credited%20by%20(if%20any)%3A%20%0AMessage%3A%20%0ACan%20I%20share%20your%20comment%20so%20other%20people%20can%20learn%20from%20it%3F%20Yes%2FNo%0A">e-mail me at sacha@sachachua.com</a>.</p>]]></description>
		</item><item>
		<title>What&#8217;s worth making?</title>
		<link>https://sachachua.com/blog/2015/12/whats-worth-making/</link>
		<dc:creator><![CDATA[Sacha Chua]]></dc:creator>
		<pubDate>Wed, 23 Dec 2015 21:06:00 GMT</pubDate>
    <category>sewing</category>
		<guid isPermaLink="false">https://sachachua.com/blog/?p=28525</guid>
		<description><![CDATA[<p>I&#8217;ve been thinking about what&#8217;s worth making and what&#8217;s worth buying. Sometimes it&#8217;s cheaper to buy finished products used (or even new) than to buy the raw materials to make my own, especially in terms of common clothes and accessories. On the other hand, there are benefits to using and developing my DIY skills, such as cooking and sewing (and maybe eventually woodworking again).</p>
<p>Thinking about my considerations for that make vs. buy decision can help me improve those decisions. If I can make that &#8220;make&#8221; decision better, I can benefit from improved skills, more satisfaction, and possible savings. If I can make that &#8220;buy&#8221; decision better, I can take advantage of the capabilities of industries. Here are some factors that nudge me towards making things instead of buying them.</p>
<p><b>When something is much more expensive to buy than to make</b>: Considering the quantities I use, the characteristics I want, and the cost of raw materials and time, it can be much cheaper to make things than to buy them. Cooking generally falls into this category. Sometimes sewing does too, especially if I can use fabric from sales or the thrift store.</p>
<p><b>When I want to adjust for personal fit, taste, or needs</b>: It&#8217;s been nice to enjoy our favourite meals without being limited to what&#8217;s offered in restaurants. I also like being able to make several copies of simple blouses that fit me well in colours and fabrics that appeal to me, instead of trawling through stores to find the intersections of fit, style, fabric, colour/pattern, and price.</p>
<p><b>For that extra bit of satisfaction</b>: I feel a little more satisfied when I enjoy something I&#8217;ve made compared to something I&#8217;ve simply bought. I&#8217;ve noticed this with the clothes I wear and the meals I make, and I&#8217;m looking forward to enjoying this even more as I learn how to make accessories.</p>
<p><b>When something is difficult to find</b>: It&#8217;s often hard to find the things I want in store. Sometimes even online searching can be a hassle, especially with international shipping.</p>
<p><b>Independence from market trends and frustrating shopping experiences</b>: Along those lines, it&#8217;s nice to be able to skip noisy malls and arbitrary trends.</p>
<p><b>Conversation starters and identity signallers</b>: There&#8217;s a less of this because I don&#8217;t usually pay extra for novelty prints (well, aside from that Marvel comics one! =) ). I don&#8217;t feel the need to wear my geekiness on my sleeve &#8211; it usually comes out pretty quickly in conversation anyway. Still, it&#8217;s fun to infuse a little bit of personality into the things I make, like adding a cat-shaped pocket to a peasant blouse or making things that match each other. Who knows, maybe it will lead to interesting conversations with other crafters.</p>
<p><b>Convenience, not having to search:</b> A well-stocked pantry lets us make something we like without having to look for a restaurant that&#8217;s open with the kind of food we might want to eat at the moment. Likewise, I want to eventually develop an organized stash of flexible, easy-to-coordinate fabric so that I can make things as needed (ex: apparel cotton, flannel, lining, knit, PUL). I haven&#8217;t quite sorted out my system yet, and I tend to do things in single colours/patterns because I&#8217;m not confident about coordinating. Someday, though!</p>
<p><b>Gifts</b>: I&#8217;m pretty meh about giving and receiving gifts. It&#8217;s better when things are consumable or home-made, or preferably both. =)</p>
<p><b>Developing skills and appreciation</b>: The more I make things, the more I learn about how things are constructed. This helps me appreciate the things around me, and it might even help me make those buying decisions more effectively.</p>
<p><b>Fuel for thinking/writing/sharing</b>: Experiments in making things can often be turned into blog posts and ideas.</p>
<p><b>Ethical considerations</b>: Although manufacturing can be good for the economic growth of developing countries, I&#8217;m not too comfortable with ethical issues in factories for clothing or other consumer goods. Besides, I like the waste reduction of repurposing things that might otherwise be trashed or turned into rags.</p>
<p><b>The intrinsic enjoyment of the activity</b>: Cooking is fun, especially when W- and I cook together. Sewing is starting to be pretty fun too. It has its frustrating moments, but I&#8217;m starting to build up a good stash of &#8220;Look! This actually works!&#8221; memories.</p>
<p>In terms of decisions to buy instead of make:</p>
<ul class="org-ul">
<li>There are things I definitely don&#8217;t have the skills or materials to make, so that&#8217;s an easy &#8220;buy&#8221; decision.</li>
<li>If I <b>could</b> make it, but it&#8217;s much cheaper and easier to buy things, then I might put off making them.</li>
<li>I tend to put off buying things if I know I can buy them inexpensively on short notice. I&#8217;ll wait until I have a clear need for them, since it&#8217;s often better to make do than to have more than we need.</li>
<li>I&#8217;ll buy in advance if I have a clear idea of our usage, or if there&#8217;s a good enough sale that I&#8217;m comfortable with the trade-offs.</li>
</ul>
<p>Sometimes I also consider the question: &#8220;What else could I be doing with this energy, time, and money?&#8221; My life is pretty flexible at the moment, so it&#8217;s usually a choice of:</p>
<ul class="org-ul">
<li>doing more consulting: good for building up skills and savings, but can be too tempting compared to the long-term value of other activities</li>
<li>doing something else in the real world: other DIY things, taking care of chores/errands/exercise</li>
<li>coding or learning something intangible: automating parts of my life, developing skills</li>
<li>thinking/drawing/writing about stuff: good for understanding, remembering, and connecting</li>
</ul>
<p>There&#8217;s time enough for a little bit of everything, so I don&#8217;t worry too much about the decisions moment by moment. Still, it&#8217;s nice to be clear about the factors to consider so that I can recognize them more easily when they come up. =)</p>
<p>Based on our enjoyment of DIY videos on YouTube, I think I&#8217;ll enjoy a life that&#8217;s tilted even more towards making things. It would be awesome to be able to think spatially and draft my own patterns, and maybe get more into laser cutting, 3D-printing, and woodworking too.</p>
<p>We&#8217;ll see how things go!</p>

<p>You can <a href="mailto:sacha@sachachua.com?subject=Comment%20on%20https%3A%2F%2Fsachachua.com%2Fblog%2F2015%2F12%2Fwhats-worth-making%2F&body=Name%20you%20want%20to%20be%20credited%20by%20(if%20any)%3A%20%0AMessage%3A%20%0ACan%20I%20share%20your%20comment%20so%20other%20people%20can%20learn%20from%20it%3F%20Yes%2FNo%0A">e-mail me at sacha@sachachua.com</a>.</p>]]></description>
		</item><item>
		<title>Python + sewing: Making basic shapes and splitting up larger patterns</title>
		<link>https://sachachua.com/blog/2015/10/python-sewing-making-basic-shapes-and-splitting-up-larger-patterns/</link>
		<dc:creator><![CDATA[Sacha Chua]]></dc:creator>
		<pubDate>Wed, 28 Oct 2015 12:00:00 GMT</pubDate>
    <category>geek</category>
<category>sewing</category>
		<guid isPermaLink="false">https://sachachua.com/blog/?p=28448</guid>
		<description><![CDATA[<p>More Python and sewing. =) The first step was to make parameterization even easier by allowing command-line specification of measurements. I refactored some code from <code>client.py</code> and modified <code>mkpattern</code> to accept the new arguments, splitting up the name and value based on regular expressions (<a href="https://github.com/sachac/tmtp/commit/cf757b1244aa9bd5ca7a2cfbb176677950781ae3">commit</a>). That way, I could quickly generate patterns based on different dimensions, like so:</p>
<pre class="example">python ../mkpattern &#45;&#45;client=../customer/Sacha/sacha-cm.json \
   &#45;&#45;pattern=../patterns/box_tote.py \
   &#45;&#45;styles=../tests/test_styles.json \
   -m height=4in -m width=7.5in -m seam_allowance=0.5in \
   -m depth=7.5in -m strap_width=1in -m strap_length=10in -m hem_allowance=1in \
   ../foo.svg
</pre>
<p>I sketched basic patterns for cylindrical and box-type containers the other day, so I wanted to try them out. It turned out that the Python framework I used for sewing patterns didn&#8217;t yet support arcs. Adding the arc element to the SVG was straightforward. I initially faked the bounding box for the arc, but since that made the code misbehave a little, I looked around for a better implementation. I translated the code from <a href="http://fridrich.blogspot.ca/2011/06/bounding-box-of-svg-elliptical-arc.html">this post from 2011</a> to Python and added it to the code (<a href="https://github.com/sachac/tmtp/commit/2bfc6d670b60900ff8843ea3e9d54cc26a56788f">git commit</a>). That allowed me to make a simple cylinder pattern generator. I haven&#8217;t tested it yet, but it looks reasonable.</p>
<p><img loading="lazy" class="size-thumbnail wp-image-28450 alignright" src="https://sachachua.com/blog/wp-content/uploads/2015/10/2015-10-27-20_30_11-foo.svg_-138x200.png" alt="2015-10-27 20_30_11-foo.svg" width="138" height="200" srcset="https://sachachua.com/blog/wp-content/uploads/2015/10/2015-10-27-20_30_11-foo.svg_-138x200.png 138w, https://sachachua.com/blog/wp-content/uploads/2015/10/2015-10-27-20_30_11-foo.svg_.png 404w" sizes="(max-width: 138px) 100vw, 138px">The <a href="https://github.com/sachac/tmtp/blob/master/standalone/patterns/box_tote.py">box tote</a> was interesting to work on. When I did the math, I couldn&#8217;t believe that the calculations were that simple. I was waiting for a <code>sqrt</code> or a <code>cos</code> to show up, I think. Still, the small-scale paper version I taped up looks like it makes sense, and I&#8217;ll sew a full-size version soon. J- asked for a light blue lunch bag that would fit our standard containers, and I&#8217;ve been meaning to make a casserole carrier for a while now. It would be handy to be able to make bags that are the right size. Too small and things don&#8217;t lie flat, too big and they move around too much.</p>
<p><img loading="lazy" class="size-thumbnail wp-image-28449 alignright" src="https://sachachua.com/blog/wp-content/uploads/2015/10/2015-10-27-20_31_54-foo.svg-Inkscape-205x200.png" alt="2015-10-27 20_31_54-foo.svg - Inkscape" width="205" height="200" srcset="https://sachachua.com/blog/wp-content/uploads/2015/10/2015-10-27-20_31_54-foo.svg-Inkscape-205x200.png 205w, https://sachachua.com/blog/wp-content/uploads/2015/10/2015-10-27-20_31_54-foo.svg-Inkscape.png 435w" sizes="(max-width: 205px) 100vw, 205px"></p>
<p>I spent most of my time making a flexible <a href="https://github.com/sachac/tmtp/blob/master/standalone/patterns/circle_skirt.py">circle skirt pattern</a>, pretzeling my brain around circumferences, angles, multiple pieces, and fullness multipliers. I&#8217;m happy with the way it turned out. It can generate patterns for quarter-circle skirts, half-circle skirts, full-circle skirts &#8211; even an arbitrary fraction of skirt fullness split into an arbitrary number of pieces, with optional seam allowance, waist seam allowance, and hem allowance. If you give it the fabric width, it will split the pattern into however many pieces are needed. If you specify a seam allowance and you want a full-circle skirt in a single piece (maybe for dolls), it&#8217;ll leave room for the seam allowances by adjusting the inner radius. We&#8217;re heading into snow pants season, so I probably won&#8217;t get around to testing it in fabric for a while. <i>Caveat netrix</i>, I guess.</p>
<p>I also got around to writing a tool for <a href="https://github.com/sachac/tmtp/blob/master/standalone/splitpattern">splitting up large patterns</a> so that I could print them on a regular printer. I had tried Posterazor and a few other tools for splitting up large images into smaller pages, but I wanted something that would add cutting lines and page numbers. It turns out that all you need to do is change the SVG&#8217;s height, width, and viewPort. I added a rectangle for the cutting line and some text for the page numbers. I haven&#8217;t figured out how to use pysvg to replace the contents of an existing text element, but since the tool prints out non-overlapping regions, I just keep adding more text elements. My script creates a numbered sequence of SVGs. I haven&#8217;t found a convenient way to print multiple SVGs in one go, but I can select multiple PNGs and print those, and I can use Inkscape&#8217;s command line to convert SVGs to PNGs like so:</p>
<pre class="example">inkscape -z -e output-01.png -d 300 output-01.svg
</pre>
<p>There&#8217;s supposed to be a -p command to output Postscript ready for printing, but command-line printing on Windows doesn&#8217;t seem to be as much of a thing as it is on Linux. Something to figure out another time, maybe. Anyway, now that I have a conversion pipeline, I can write a Bash script or Emacs Lisp to process things automatically.</p>
<p>I&#8217;ll probably move from all this theoretical script-writing to more hands-on sewing during the rest of the week. My fabric order has arrived, so I&#8217;ve got a bit of cutting and sewing ahead of me.</p>
<p>Hmm. With the command-line measurement and scaling overrides, it might be interesting to use this framework for papercraft and laser-cutting too. Someday!</p>

<p>You can <a href="mailto:sacha@sachachua.com?subject=Comment%20on%20https%3A%2F%2Fsachachua.com%2Fblog%2F2015%2F10%2Fpython-sewing-making-basic-shapes-and-splitting-up-larger-patterns%2F&body=Name%20you%20want%20to%20be%20credited%20by%20(if%20any)%3A%20%0AMessage%3A%20%0ACan%20I%20share%20your%20comment%20so%20other%20people%20can%20learn%20from%20it%3F%20Yes%2FNo%0A">e-mail me at sacha@sachachua.com</a>.</p>]]></description>
		</item><item>
		<title>Programmatically rescaling and manipulating the darts in sewing patterns</title>
		<link>https://sachachua.com/blog/2015/10/programmatically-rescaling-and-manipulating-the-darts-in-sewing-patterns/</link>
		<dc:creator><![CDATA[Sacha Chua]]></dc:creator>
		<pubDate>Tue, 27 Oct 2015 12:00:00 GMT</pubDate>
    <category>geek</category>
<category>sewing</category>
		<guid isPermaLink="false">https://sachachua.com/blog/?p=28442</guid>
		<description><![CDATA[<p>I&#8217;ve been playing with the tmtp project for programmatically generating SVGs based on body measurements in order to create basic blocks and sewing patterns (see <a href="https://sachachua.com/blog/2015/09/pattern-making-generating-svgs-for-sewing-with-python-and-tmtp/">my previous blog post</a>). I&#8217;m not yet at the point of being able to look at an image and see if it will sew correctly. However, printing and taping up large patterns is frustrating and a waste of paper. Scaling the patterns down so that they fit on a single page of paper makes perfect sense. With the measurements I&#8217;m working with, a scale of 0.2 (1&#8243; : 5&#8243;) makes things fit neatly on 8.5&#8243;x11&#8243; paper. It&#8217;s easy enough to cut them out and tape them up into something that resembles the form.</p>
<p>Here&#8217;s the <a href="https://github.com/sachac/tmtp/commit/b65148c1b317d3306b663608515b904f7a7288a8">commit</a> that adds the scaling factor, and the <a href="https://github.com/sachac/tmtp/commit/6ba0123731216e793bcf0156a7b45ed5c518eecf">commit</a> that adds a very useful <code>&#45;&#45;scale</code> command-line option. This lets me do something like this:</p>
<pre class="example">python mkpattern &#45;&#45;verbose \
  &#45;&#45;client=customer/Sacha/sacha-cm.json \
  &#45;&#45;pattern=patterns/dart_manipulation_example.py \
  &#45;&#45;styles=tests/test_styles.json &#45;&#45;scale=0.2 output.svg
</pre>
<p>I generated a bunch of SVGs using my measurements, printed and cut them, and taped them up. Tada! They look like they make sense. The <a href="https://github.com/sachac/tmtp/blob/master/standalone/patterns/aldrich_easy_fitting_bodice_block.py">easy-fitting bodice block</a> from <i>Metric Pattern Cutting</i> is, as expected, looser than the <a href="https://github.com/sachac/tmtp/blob/master/standalone/patterns/aldrich_close_fitting_bodice_block.py">close-fitting</a> bodice block, and both are a little bit bigger than the <a href="https://github.com/sachac/tmtp/blob/master/standalone/patterns/bodice_block.py">basic bodice block</a> from BurdaStyle.</p>
<p><img loading="lazy" class="alignnone size-thumbnail wp-image-28443" src="https://sachachua.com/blog/wp-content/uploads/2015/10/2015-10-26-16.17.31-267x200.jpg" alt="2015-10-26 16.17.31" width="267" height="200" srcset="https://sachachua.com/blog/wp-content/uploads/2015/10/2015-10-26-16.17.31-267x200.jpg 267w, https://sachachua.com/blog/wp-content/uploads/2015/10/2015-10-26-16.17.31-640x480.jpg 640w" sizes="(max-width: 267px) 100vw, 267px"><img loading="lazy" class="alignnone  wp-image-28444" src="https://sachachua.com/blog/wp-content/uploads/2015/10/2015-10-26-16.20.17-640x480.jpg" alt="2015-10-26 16.20.17" width="267" height="200" srcset="https://sachachua.com/blog/wp-content/uploads/2015/10/2015-10-26-16.20.17-640x480.jpg 640w, https://sachachua.com/blog/wp-content/uploads/2015/10/2015-10-26-16.20.17-267x200.jpg 267w" sizes="(max-width: 267px) 100vw, 267px"></p>
<p>The <a href="https://github.com/sachac/tmtp/blob/master/standalone/patterns/basic_shirt.py">basic shirt pattern</a> from Cal Patch&#8217;s <i>Design-it-Yourself Clothes</i> fits over the basic blocks, as expected. It looks a little boxy compared to the blocks, but it will probably be fine in cotton, since cotton won&#8217;t be as stiff as paper.</p>
<p><img loading="lazy" class="alignnone  wp-image-28447" src="https://sachachua.com/blog/wp-content/uploads/2015/10/2015-10-26-16.18.49-640x853.jpg" alt="2015-10-26 16.18.49" width="148" height="197" srcset="https://sachachua.com/blog/wp-content/uploads/2015/10/2015-10-26-16.18.49-640x853.jpg 640w, https://sachachua.com/blog/wp-content/uploads/2015/10/2015-10-26-16.18.49-150x200.jpg 150w, https://sachachua.com/blog/wp-content/uploads/2015/10/2015-10-26-16.18.49.jpg 1944w" sizes="(max-width: 148px) 100vw, 148px"></p>
<p>If I end up doing this a lot, I&#8217;ll probably look into modifying the patterns to draw an outline on a separate layer. Then I can convert the SVG for use with Hacklab&#8217;s laser cutter (see <a href="https://sachachua.com/blog/2015/04/laser-cutting-registration-experiments-and-cutting-long-pieces-of-fabric/">my previous experiments</a> and <a href="https://sachachua.com/blog/2015/04/laser-cutting-update-marvel-version/">fun results</a>), so I can easily test with paper or fabric.</p>
<p>I was thinking about the viability of printing a small, to-scale 3D model based on measurements. Doesn&#8217;t have to be a photorealistic 3D scan of me &#8211; apparently you can get photorealistic 3D prints for about ~$120 these days, but that&#8217;s still a bit much. If it&#8217;s not from a scan, though, there&#8217;s the challenge of generating a good model based on entered measurements, or creating/adjusting an existing model of a dress maker&#8217;s mannequin. Anyway, papercraft with basic blocks seems to be a decent starting point. =)</p>
<p>With the scaling factor in place, I did the math for dart manipulation. Darts help add shape to fabric, turning flat pieces into slightly conical structures. If you wanted to move a dart on paper, you could tape the dart closed, then cut a new line to the apex of the dart and spread the pattern until it&#8217;s flat again. (Wikipedia describes this as <a href="https://en.wikipedia.org/wiki/Dart_(sewing)">slash-and-spread</a>.)</p>
<p>There&#8217;s an SVG rotate transformation that would probably make it easier to handle the rotation of complex shapes. I haven&#8217;t figured out how to add an SVG group in tmtp yet, though. Instead, I:</p>
<ol class="org-ol">
<li>Added a pair of points where my &#8220;cut&#8221; was going to be</li>
<li>Calculated the existing dart angle</li>
<li>Rotated one of the dart points, one of the new cut points, and the points in between &#8211; to make things easier, I specified which points to rotate</li>
<li>Redrew the front bodice</li>
</ol>
<p>I added a few library functions, so now the code to rotate a dart is pretty short. It takes an array defining the dart points (start, apex, end), and another array of the points to rotate around the apex by the calculated angle.</p>
<div class="org-src-container">
<pre class="src src-python"><span class="org-keyword">def</span> <span class="org-function-name">rotateDart</span>(<span class="org-keyword">self</span>, dart_points, points_to_rotate):
    <span class="org-comment-delimiter"># </span><span class="org-comment">Determine the angle of rotation</span>
    <span class="org-variable-name">angle</span> = angleOfVectorP(dart_points[0], dart_points[1], dart_points[2])
    <span class="org-comment-delimiter"># </span><span class="org-comment">Rotate the dart closed</span>
    (dart_points[0].x, dart_points[0].y) = rotateP(dart_points[0], dart_points[1], angle)
    <span class="org-comment-delimiter"># </span><span class="org-comment">Rotate the rest of the points</span>
    <span class="org-keyword">for</span> i <span class="org-keyword">in</span> <span class="org-builtin">range</span>(<span class="org-builtin">len</span>(points_to_rotate)):
        (points_to_rotate[i].x, points_to_rotate[i].y) = rotateP(points_to_rotate[i], dart_points[1], angle)
    <span class="org-keyword">return</span>
</pre>
</div>
<p>When I printed out my <a href="https://github.com/sachac/tmtp/blob/master/standalone/patterns/dart_manipulation_example.py">test pattern</a> and cut it, the new pattern matched the result of slashing and spreading the dart on the previous bodice. Hooray for paper testing!</p>
<p><img loading="lazy" class="alignnone  wp-image-28445" src="https://sachachua.com/blog/wp-content/uploads/2015/10/2015-10-26-18.27.54-640x480.jpg" alt="2015-10-26 18.27.54" width="265" height="199" srcset="https://sachachua.com/blog/wp-content/uploads/2015/10/2015-10-26-18.27.54-640x480.jpg 640w, https://sachachua.com/blog/wp-content/uploads/2015/10/2015-10-26-18.27.54-267x200.jpg 267w" sizes="(max-width: 265px) 100vw, 265px"><img loading="lazy" class="alignnone wp-image-28446 " src="https://sachachua.com/blog/wp-content/uploads/2015/10/2015-10-26-18.28.22-e1445903094309-267x200.jpg" alt="" width="265" height="199" srcset="https://sachachua.com/blog/wp-content/uploads/2015/10/2015-10-26-18.28.22-e1445903094309-267x200.jpg 267w, https://sachachua.com/blog/wp-content/uploads/2015/10/2015-10-26-18.28.22-e1445903094309-640x480.jpg 640w" sizes="(max-width: 265px) 100vw, 265px"></p>
<p>The next step would probably be to make an SVG slicer that converts large patterns into segments that can be printed on a home printer. It would probably move/clip the image, add cutting lines and labels for convenience, and export a series of SVGs. If I&#8217;m lucky, I might be able to find a Python library that will let me easily create a multi-page PDF.</p>
<p>More thoughts on sewing and programming: it would be nifty to be able to easily program variable seam allowances, so that I could say that one seam has a 1/2&#8243; allowance and the other has a 2&#8243; hem allowance. Lines should be pretty straightforward &#8211; just offset a parallel line by the specified distance. Bezier curves might be a challenge. In <a href="https://seant23.files.wordpress.com/2010/11/anoffsetalgorithm.pdf">&#8220;An offset algorithm for polyline curves&#8221; (Liu, Yong, Zheng, and Sun, 2006)</a>, the authors describe a algorithm involving trimming the offset curves of a polyline curve. I should check out the approximation algorithms mentioned in their literature review &#8211; might be an easier thing to start with, especially if I can wrap my head around the way the existing code&#8217;s <code>curveLength</code> function interpolates curves. Or I can leave the addition of variable allowances as a human step. It&#8217;s not that hard with a seam allowance ruler. Still, it would be neat to have laser-ready SVGs… =)</p>
<p>Anyway, now that I&#8217;ve got a simple way to test things on a small scale and a bit more of a handle on the math, I&#8217;m looking forward to playing around with generating actual patterns instead of just basic blocks. Whee!</p>

<p>You can <a href="mailto:sacha@sachachua.com?subject=Comment%20on%20https%3A%2F%2Fsachachua.com%2Fblog%2F2015%2F10%2Fprogrammatically-rescaling-and-manipulating-the-darts-in-sewing-patterns%2F&body=Name%20you%20want%20to%20be%20credited%20by%20(if%20any)%3A%20%0AMessage%3A%20%0ACan%20I%20share%20your%20comment%20so%20other%20people%20can%20learn%20from%20it%3F%20Yes%2FNo%0A">e-mail me at sacha@sachachua.com</a>.</p>]]></description>
		</item><item>
		<title>Fabric from the thrift store</title>
		<link>https://sachachua.com/blog/2015/10/fabric-from-the-thrift-store/</link>
		<dc:creator><![CDATA[Sacha Chua]]></dc:creator>
		<pubDate>Tue, 20 Oct 2015 12:00:00 GMT</pubDate>
    <category>sewing</category>
		<guid isPermaLink="false">https://sachachua.com/blog/?p=28437</guid>
		<description><![CDATA[<p>I&#8217;ve been raiding the thrift store for 100% cotton sheets with patterns or textures that appeal to me. After a trip through the washing machine and dryer, they&#8217;re ready to be turned into other things. It&#8217;s easier to imagine what they&#8217;ll wear like with the softness of well-washed cotton instead of the stiffness of fabric on the bolt. There&#8217;s so much fabric that it&#8217;s easy to take risks on sewing experiments without feeling like I need to worry too much about maximizing yardage or avoiding mistakes. At the moment, I&#8217;d rather buy fabric than finished clothes, if I think I can sew what I want. Every piece is an opportunity to learn something.</p>
<p>Value Village is a bit higher-priced than the other thrift stores, but it has the advantage of being the largest one within walking distance. The price differences aren&#8217;t large enough to justify going on the subway. My limiting factor for sewing certainly isn&#8217;t a lack of fabric in my stash!</p>
<p>It took me a while to realize that I could get lots of material from the thrift store instead of from the fabric store. When I started getting back into sewing last year, I sewed the same pattern in different solid-coloured fabrics, and then moved on to some of the patterns that I liked: gingham, floral, and even a Marvel Comics print. (Mwahaha!) The more I browsed through the selection at fabric stores, though, the more I felt that I didn&#8217;t need to find a specific print or colour in order to make something I would like. If I happened across something I liked at the thrift store, I could add it to my stash. If not, it was a good walk anyway, and there&#8217;s still more to sew beyond that.</p>
<p>I suppose it&#8217;s a little like how we plan our groceries around the weekly flyers. If diced tomatoes are on sale, then it&#8217;s a good time to stock up. If not, we can cook from storage. If we&#8217;re out, there are plenty of other things we can cook.</p>
<p>I&#8217;m now reasonably confident that I can turn fabric into something simple that I can comfortably wear, and that I might prefer wearing more that something I could buy either used or new. I&#8217;m also happy with the kind of fabric that I can easily get, with the occasional splurge or special order here and there. I could spend more – there&#8217;s room in my budget, considering it&#8217;s part utility, part entertainment, and part education – but I don&#8217;t need to, and I like not needing more.</p>

<p>You can <a href="https://sachachua.com/blog/2015/10/fabric-from-the-thrift-store/#comment">view 1 comment</a> or <a href="mailto:sacha@sachachua.com?subject=Comment%20on%20https%3A%2F%2Fsachachua.com%2Fblog%2F2015%2F10%2Ffabric-from-the-thrift-store%2F&body=Name%20you%20want%20to%20be%20credited%20by%20(if%20any)%3A%20%0AMessage%3A%20%0ACan%20I%20share%20your%20comment%20so%20other%20people%20can%20learn%20from%20it%3F%20Yes%2FNo%0A">e-mail me at sacha@sachachua.com</a>.</p>]]></description>
		</item>
	</channel>
</rss>