Curves with same length




I’m busy digitizing my t-shirt patterns. So far I’ve tried different CAD programs. That is actually possible, although Valentina looks much easier. And the CAD programs miss one crucial function, i cannot predetermine the lenght of a curve. So here is my question: At a t-shirt the curves of the body arm hole, and the curve of the sleeve are shaped differently, but they need to have the exactly same lenght. How can this be done in Valentina? Even more: the curve of the sleeve is formed as a “S”, whereby the lower part is actually the same as the lower part of the curve of the arm hole. Can this lower curve be imported from the body to the sleeve?

Thank you,



The easies way is to draw the destination curve a bit longer than needed and create a segment of desired length in it.


So you want to know how to make sleeves to fit your tshirt shell? First, are you experienced, intermediate, or beginner with patternmaking? If I know where you’re coming from, I can give you the whole lesson appropriate for your task.


Well, I am experienced. Although I would call it a savantism, or an isolated talent. I started a small Fair Trade company. Therefore I imported Fair Trade fabric from India and learned how to sew t-shirts. Standard for men, and raglan for women. The shop is open, and the first shirts I made myself. Now I am preparing the first order in India, thats why I have to digitize the patterns.


I am not experienced, I just found my way around - on my pattern I make a separate pattern piece called Length Control. Which is basically the set of lines which represent the difference of lengths. for example to fit sleeve with armscye the line will be the total length of the armscye minus the total length of the sleeve cap. I adjust the curves to get the control line length close to 0. I accept it is a weird way (and probably will not work in multy-size format) but works for me as it is visual. PS: If there is a way to fix the length of a curve - I would be glad to hear about it, but so far I have not found it…


I think that the point here, is that a bezier curve tool can tell you how long the spline length is after you have put it in place, wheras with a varyform ruler you are able to choose the length then position the curve.

Perhaps this is where a transparent tracing mode would help - along with hip curve/french curve background templates in imperial/metric forms.


Well it’s really quite hard to make the program automatically draw the sleeve cap curve to have the same length as the armhole, due the fact that many factors affect its length.

It takes around 9 point to define a bezier curve that can be shifted into different sleeve shapes, each of them can take on different control point lengths and angles… all having a varying effect on the final length of the curve. You would have to come up with a complex calculation method in order to fully automate the process.

For reference, here’s my sleeve block that I use for tops: Sleeve.val (6.9 KB)

My view is that the sleeve cap length doesn’t necessarily need to be exactly the same as the armhole you’ve created, a difference of 0.5 cm is tolerable, one could reduce the sleeve cap ease by setting two sides of the triangle as Front Armhole Length - 0.7cm and Back Armhole Length - 0.7cm, this usually gives you a curve length that’s roughly the same as the armhole’s ( if you have a high sleeve cap height then you may have to minus 1 cm or more ).



Can you show how such a sleeve sits on you?


I don’t know what you mean exactly ( translation error? ), but I’m guessing you mean how I use the sleeve together with a bodice. Currently Valentina doesn’t support importing a .val file as a pattern piece, so I sometimes copy the armhole length info into the sleeve pattern. You can draw the sleeve yourself in an existing .val file that contains your bodice, but it takes a bit of time, worth it if you use blocks.

Simply edit the increments #fah (front armhole ), #bah(back armhole), #sch(sleeve cap height), and #sl(sleeve length ) in the variable table to suit you needs.


I’m talking about another

How to create a template, I know


how about anti jump in valentina do u have any instructions


Hi @y.k, Here is my EasyTeeShirt.val & susan.vit measurements.
The sleevecap is extended a bit to match the length of the armscye curve.

EasyTeeShirt.val (33.8 KB) susan.vit (6.3 KB)


Your file version is lower than 0.4.8 so I can’t view it, I’ll have to downgrade my software -_-. But I can see what you’ve done from the screenshot.

Great idea, it turns out easier than I thought. Though perhaps it would be more balanced if you make an extension on the right side as well, dividing the extension length by half.

This would yield a sleeve curve that’s close enough to the armscye curve when the sleeve cap height is low, it would become inaccurate when it gets higher, for a T-shirt it’s sufficient, since the cap height is usually low.


Oops, I opened it in the latest test build. Hmmm.

Um, this point is mirrored on the right side using the Flip tool from the Operations group. So there’s no need for an ‘extension’, as this is the point which is mirrored. :slight_smile:


The height of the sleevecap is adjustable. The way the sleeve is created, the entire sleevecap adjusts whenever a new measurement file is applied.

Also, if you can change the formula for the height of the sleevecap to make it taller or shorter and the sleevecap curve remains accurate.


The curves generated in by the tools currently in Valentina are circular/elliptical arcs or bezier curves. They are referenced in formulae as “splines”.

Interestingly enough the term “spline” is based on thin flexible slats of wood used to create streamlined curves in traditional boatbuilding. These slats were of fixed length.

The CAD system Solidworks advertises a feature of ‘fixed length splices’ - so the maths and programming for this has been solved, though whether it can be easily reproduced is another matter.

I think a tool that can ‘flex’ a curve of fixed length through specified balanced points would be very useful.


Hey @bamba,
Please add this as an issue to the bitbucket issues list for fitting a fixed length spline between two points, where the user can specify the angles for the control handles.

Please add the following description, or add your own. I wrote this up to help determine how it should work. Make changes as you see fit, maybe I see it differently than you had envisioned it.

The user selects the begin and end points of the curve, enters the desired curve length, and enters the angles for the begin and end control handles.
The curve will be displayed where control handle lengths are equal.
The user can adjust the length of either control handle and the other handle inversely responds until the desired result is reached, and the user then clicks OK.
The control handle lengths are stored as formulas based their ratios to the length of the line between the curve’s endpoints. (eg 0.6241*Line_A_B and 0.3759*LIne_A_B, where 0.6241 + 0.3759=1.0)

How to draw a basic t-shirt?

@alexw32 Here is the correct tee shirt pattern. I posted the other file from my linux laptop, so it’s old. :frowning:
Here’s the new pattern, renamed as MyEasyTeeShirt.val

MyEasyTeeShirt.val (32.6 KB)


Hi! Thanks for all the answers. I’ve asked the question before I started to work with Valentina, because if it is not possible to draw those curves it makes no sense to start working with it at all. Now there seem to be different ways to do it, but I don’t understand them in detail. I first have to become more familiar with Valentina, then I can ask more meaningful questions. @slspencer I still can’t open your shirt file, could you please upload it again? If I understand correctly you shifted p18 so the lenght of the curve/spline p18-p15 matches the arm hole. This also means to widen the circumference, that is actually what I wanted to avoid. It seems that what you have asked @bamba to add to the " bitbucket issues list for fitting a fixed length spline between two points, where the user can specify the angles for the control handles" is exactly what I am looking for. Does it exist yet, could you send a link? Thanx and cheers, Y.K.


@y.k Please post your screenshot of the error message when you try to open the tshirt pattern.