Measurement Foundations



(Please note: I haven’t done any sewing for more than fifteen years, and while I’ve done a lot of technical graphics work, I’ve never drafted a pattern in my life, so this thread is based on what I’ve observed trying to figure out what the $#*$)$ is going on as I’m trying to learn. If I’m wrong about something, PLEASE offer corrections. I am well aware that I could be ridiculously off-base and not even know it. I often am. :man_facepalming: )

The issues that drove me to consider the system I’m proposing:

  1. All kinds of different pattern-making and measurement systems, which might or might not have compatibility in what seems to be completely random areas.
  2. Multiple languages of information suppliers. One kind lady recently posted a skirt pattern where all of the measurements were in Italian. As I don’t speak Italian and had to depend on Google translate, some of the measurements had names that ended up being hilarious, like “Horse length”, while most had ambiguous meanings like ‘Wide shoulders’, ‘Circ. bottom’, or ‘Deep darts in front’.
  3. Even English patterns can have ambiguous meanings when the system isn’t given. What, for example, does ‘Shoulder height’ really mean? In one pattern, it was the height of the shoulder tip from the floor, while in another, it was over the body from the base of the side of the neck down to the waist. (Yes, context can help, but not necessarily. For example, what if the example meant the vertical height from the base of the side of the neck down to the waist? That would be a smaller number.) AAAAARGH!

I’m sure that there are many more issues that I haven’t come across yet, but that was enough to drive me to really put my brain to work on how Valentina’s measurement system can be improved and made as close to perfection as is practical.

What I envision is a measurement system where

  1. Points are specified on the body and fully defined. (i.e. left side waist: a point on the left side of the body located at the narrowing of the trunk of the body above the hips.) This is to provide immunity from language/system differences.
  2. Paths are specified and defined based on those points. The path can include multiple points and even other {paths}, with ‘to/over/through/???’ as delimiters.
    1. Length: distance between two points traveling along the body. (i.e. ‘Waist Arc Front’ might be ‘len_left_side_waist_over_front_waist_to_right_side_waist’.)
    2. Dimension: distance between two points directly. (i.e. ‘Waist Width’ might be ‘dim_left_side_waist_to_right_side_waist’.)
    3. Girth/Circ: length where the end point is the same as the start point. (i.e. ‘Waist Circ’ might be ‘circ_{waist_arc_front}_to_{waist_arc_back}’, using two defined paths.)
  3. As using fully defined paths can be very cumbersome, ‘aliases’ can be created as shortcuts. (i.e. ‘WaistCirc’ or ‘Tour_De_Taille’.)
  4. All terms are localized, so that, for example, someone English who saw the alias ‘Altezza Fianchi’ in someone’s Italian measurements would still read the description as ‘dim_floor_to_hip_front’ and instantly understand what the Italian term meant, as each term of the description (i.e. ‘dim’, ‘floor’, ‘to’, ‘hip’, & ‘front’) would be stored internally as a value, which is used as an index into the current user’s dictionary.
  5. TAPE would allow creation of custom measurements, but only using predefined points. In a future version, I can see a 3D model being used to define the location of new points, but, until then, anything that doesn’t reference the predefined points can only be input as a ‘value’. This is to avoid breaking the system.

I’m pretty sure that I’m missing a fair amount, but I thought that that would be a good starting point for a discussion.

You write it, I'll edit it

have you looked at all of the pictures and definitions of the measurements in TAPE? I believe that @slpencer looked at many documented patternmaking systems and attempted to create (in the measurements database) the complete universe of points as you described in item “1”. I believe that the concept of a template for each pattern system is intended to translate the “aliases” you specified in item 3 into the appropriate fully defined point. @slspencer, am I understanding and stating correctly what was discussed during the conversation in July? Is there something that I can do to make the concept more clear?

@KeithFromCanada, I attempted to document this concept as it applies to the McCunn patternmaking system in a wiki page McCunn - Seamly2D

There is also an ebook tutorial on TAPE, which @Grace and @slspencer have been working on.


See the Measurement page on the wiki, it was updated in response to your comments. A lot of this is already implemented.

Interesting suggestion for Tape to allow creating new measurements using only predefined points. Not sure how we can enforce this, but it’s a good idea.


Thank you for your consideration. The amount of excellent work y’all have done is downright humbling.

One idea to implement creating custom measurements using points might be to pull the ‘line’ tool from Valentina, let the user check off which point view(s) are needed, then let the user ‘connect the dots’, so to speak for each measurement. (The points would be ‘live’, as in Valentina.) For example, ‘Waist Circ’ would need the front and back torso views to connect the four points. That would allow the user to visually understand what they are measuring.


Here is a mockup of what I mean:


@KeithFromCanada did a better job of putting into words my concept of a template than I apparently did when we had the group discussion on templates. I envision a template for the McCunn patternmaking method as a .vit file that contains all of the blank measurements with the names referenced in McCunn’s literature. The measurements would be defined in terms of the valentina measurement set. When you and I spoke, I was unclear whether there was a change pending in the coding of tape that might affect this. If there is not, then I can complete a template by the definition that I understand and get on with creating the sample blocks. What say you @slpencer, shall I create the tempate which would have many measurements with names starting with “@” and that would match the terms used in McCunn’s books


WHERE? I am interested


HI @kmf, I was holding off on posting the results of the multisize table & pattern system template meeting because Roman didn’t agree that anything should be improved in those areas.

So now I can post that information but it won’t be implemented for a while. So yes, make the sample blocks for McCunn, and create McCunn measurements in the Increments Variable Table so that the formulas use McCunn terminology.

Thanks for doing this!


Sorry, y’all; the SVG wouldn’t render for some reason, so I posted a PNG. I just quickly pulled in some excellent artwork and built a demo around it. As you can see, the path is clear and easy to read, and I put arrows on either end to show a connection between points 4 & 1, to complete the loop.

I sincerely believe that we shouldn’t lock V into any particular pattern making style, though I can see having ‘filters’ to limit the available points and paths to those used in a particular system could be very useful.

…working on number 16, now…


(Woodhead Publishing Series in Textiles 148) Deepti Gupta

Anthropometry, apparel sizing and design-Woodhead Publishing (2014)

(copy in

The training for an anthropometric survey for clothing purposes is based on ISO 8559/1989, which defi nes the terms used for each different body dimension. Under this ISO standard, there are 49 body dimensions to be measured for a clothing system. These body dimensions are divided into three groups: vertical length, width and girth.

Page 17

List of body dimensions according to ISO 8559/1989

Length (vertical) Height

  1. *Head girth
  2. *Neck girth
  3. *Neck base girth
  4. *Chest girth
  5. *Bust girth
  6. *Upper arm girth
  7. *Armscye girth
  8. *Elbow girth
  9. *Wrist girth
  10. *Hand girth
  11. Waist girth
  12. Hip girth
  13. Thigh girth
  14. Mid thigh girth
  15. Knee girth
  16. Lower knee girth
  17. Calf girth
  18. Minimum leg girth
  19. Ankle girth

Width (vertical)

  1. *Under arm length
  2. *Scye depth
  3. *Neck shoulder point to breast point
  4. *Cervical to breast point
  5. *Neck shoulder to waist
  6. *Cervical to waist (front)
  7. *Cervical to waist (back)
  8. *Cervical height (sitting)
  9. *Trunk length
  10. *Body rise
  11. *Cervical to knee hollow
  12. *Cervical height
  13. Waist height
  14. Outside leg length
  15. Waist to hips
  16. Hip height
  17. Crotch
  18. Trunk circumference
  19. Thigh length
  20. Inside leg length/crotch
  21. Knee height
  22. Ankle height

Girth (horizontal) Weight

  1. *Shoulder length Weight
  2. *Shoulder width
  3. *Back width
  4. *Upper arm length
  5. *Arm length
  6. *7th cervical to wrist length
  7. *Hand length
  8. Foot length
  9. Ankle height
  • Upper body dimensions. All others, lower body dimensions


I think that given the inconvenience of being scanned on the way through Airports - there should be some kind of payback by means of statistical aggregation of the data - to be put to a good use.

Wouldn’t that make a great FOI request ! - Asking for your own personal measurements


@KeithFromCanada, have you seen this page on the wiki? Measurements - Seamly2D

and I am moved by your comic to quote a former co-worker who said the great thing about standards is that there are so many of them. I also want to share that I had an ah-ha moment when I was teaching a pascal programming class in the 1980s… I realized that there was more than one “right” way to solve a programming problem. In fact infinite right answers. Some of the right answers do not have much to do with the way I might have approached the problem. It took a while to recover from that realization but it makes life a bit easier.


also, FWIW, the measurement diagram on the WIKI will also double as an eye test. I hope you have a good screen magnification tool


Yeah, the measurements that are gathered in anthropomorphic studies aren’t usually the ones that are necessary to nail down a good fit. Most 3D body scanning services these days will gather about 300 body points, much more than typical for government-funded studies. These 300 measurements allow for sizing of shoes and hats and gloves. Also for close fitting underwear, swimwear, dancewear, etc. In Valentina we have 255 measurements.


And there’s 100’s of “right” languages to program in. :slight_smile:


When it comes to collecting measurements… is there a point_of_diminishing_return? :wink:


Just had a 2 am brainstorm: Instead of using words as connectors for points, use symbols:

  • -’: Dimension/direct path.
  • ~’: Path over body curves.
  • =’: Path that is parallel to another path.
  • >’: Path that is perpendicular to another path.

For example, TAPE’s G09. hip_circ would be coded as hip_front~hip_front=floor, or ‘measure a circumference that is parallel with the floor from a point on the front of the hip.’

For a more ‘interesting’ example, H05. neck_side_to_waist_f would be coded as neck_side~{waist_f}>{waist_f}, or ‘measure from the side of the base of the neck straight down over the front of the body to the waist line’.

The idea is to make a system that is easily readable by humans or apps with minor training while minimizing the number of terms that need to be localized.

Does any of that make sense? It’s so late, I’m not even sure. :sleepy:


Well, I think that math symbols are a good shorthand, but ultimately the patternmaker must acquire some broader understanding of measurements beyond the handful of measurements they normally work with. (They acquire this understanding through working with Valentina, noticing that there are features which they do not need themselves, and imagining how these features COULD be used by others. Also by reading about others’ work on this forum!)

Introducing symbols doesn’t really assist with gaining understanding, it rather reinforces the knowledge once a person has acquired it. It also imposes a system that is a bit awkward and unfamiliar. This would provide some helpfulness to people who are comfortable working with symbols, but most people don’t have this background.

There probably are no Valentina users which use all 300 measurements. But there are cobblers, corsetmakers, bramakers, historical costumers, and 3D printing fashion designers who ARE using this software and who ARE using what some might consider to be unusual measurements. There is a reason why all the new 3D body scanning systems record around 300 body measurements. We want compatability with these complex systems, and we want to support the entire range of clothing possible.



Yes, we’ve thought alot about how we can request our body scan data from TSA.
Unfortunately, it turns out that the scans performed at airports are “detuned” so that precise body detail isn’t recorded. :sob:

There probably is a way to get this data via FOIA, but the data isn’t usable. We need the details to get accurate measurements.


True, but notice that I said ‘coded as’. Using the symbols would be just one way to textually encode the data for people to read. Internally, I see each path saved as a string like ‘XXXyXXXyXXXyXXXyXXX’, where ‘XXX’ is a three-digit index number (000-499: points, 500-999: paths) and ‘y’ is the path definition(?) index number. 500 points/paths should be plenty, but, if not, the file header would contain the length of ‘X’ & ‘y’, so future versions can automatically make adjustments.

The user would decide for themselves whether they would see, for example, ‘0473503’ as ‘neck_side_to_waist_f’ or ‘neck_side~{waist_f}>{waist_f}’. Because the definitions are abstracted, they can be rendered as whatever the user wants to see, in whatever language s/he wants to read them in.