Open main menu
This page contains changes which are not marked for translation.

Other languages:
English • ‎español


Planning patternmaking with ValentinaEdit

The purpose of this section is not to learn patternmaking, but to help first users of Valentina to avoid beginners' mistakes.

When computerising patterns, the aim is to obtain correct and accurate results as well as a parametric behaviour.

It is important to keep in mind that the patternmaking method itself does not change when using Valentina instead of drawing with a pen, but it requires some planned steps.

For example, it is useless to draft a bodice block that would not be planned for evolving sizes and not adjusted for future transformations.

  • Prerequisites

It is highly recommended to computerize a pattern firstly drawn by hand (and graded if the aim is to obtain a multisize pattern), as well as making a measurements and variables independent table before starting, including every known result to obtain, such as the armhole and neckline lengths.

In this table, organise the variables : measurements, increments, preview calculations, and results to obtain ; this method avoids to have to change afterwards afterwards the categorisation.

A good method is also to list the points labels on the manual draft and to avoid to choose the default labels (A1, A2, ...) ; even if labels can be changed afterwards, the modification may be tedious since it implies to change each calculation where the label point has been used.

  • Lines of construction

As by hand, the vertical and horizontal lines of construction have to be drafted first. There is no particularity there, but do not forget to place the lines according to prerequisite variables.

  • Points of construction

This is a crucial step to obtain a transformable pattern.

The position of some points varies when simply changing the increments values in most patternmaking methods : bust, waist and hips calculations evolve by simply changing the ease values, the armhole height can be modified by modifying an increment value, ...

But the shaping of parametric curves may be a quite long-lasting operation, it is thus wise to plan the drawing such that when moving points, the curve moves also.

This is particularly true when drawing the neckline : when drafting the basic bodice block, you routinely put the 1/2 basic neckline width point, then you draw the neckline curve. The problem is when transforming the basic block, you have to increase the neckline most often, and the beginning of the neckline curve has to be moved along the shoulder line. At this step, if an additional point has not been placed to ancicipate the move of the neckline curve, this curve has to be drafted again.



Shaping curvesEdit

How to shape a parametric Bezier curve - Basic principlesEdit

This example explains how to shape a parametric Bezier curve to draft a neckline. This is only one method amongst many others, but it has the advantage to be both (quite) simple and accurate for non experts in mathematical issues, and to anticipate the transformation of the basic blocks.

This method is based on cubic Bezier curves according to this pattern :


It uses 4 points, A being the curve start point, D the curve end point, points B and C are used as control handles to shape the curve which passes through a point L4=R1. This point L4=R1 is the result of successive divisions by half of segments AB, BC, CD, then L2H, HR3, and at last L3R2.

Applying this method, it is possible to draft the front neckline as follows :


The curve has to be shaped between points s2 and enc1, the aim is to define the location of points A6 and A17 which are control handles, and to obtain that this location allows a parametric behaviour of the curve.

First we know that the curve angle at point enc1 must be at 90 deg, so point A6 must be a perpendicular point to the front center line. At the beginning, the distance between enc1 and A6 is defined at random with an absolute value.

The angle curve at point s2 varies according to patternmaking methods, at the beginning the best is to define it at 270 deg. The distance between s2 and A17 is defined at random with an absolute value.

The midpoints A18, A19, ..., A25, are created.

It is now possible to adjust the location of points A6 and A17 to obtain the result you wish, by changing the distances enc1A6 and s2A17, and possibly the angle at point A17. This can be done for example if you know by which 3rd point the curve has to pass through, or you know the curve length, ...

Once the optimal result is obtained, it has to be translated in parametric terms, since the distances and angles used to place points A6 and A17 have been defined with absolute values.

The distances can be defined using a simple rule of 3 :

enc1A6=(s1s2)*Absolute_Value_enc1A6_Found_By_Adjusting_Curve/Absolute_Value_s1s2 ;


The angle of the line s2A17 can be defined by reference to the angle of line s2d1 which is the shoulder line (since in certain patternmaking methods, the angle of the shoulder line varies from size to size).

Once the front neckline curve is drafted and adopts a parametric behaviour, do the same for the back neckline curve where enc2 and s4 are start and end points of the curve, and points A12 and A13 control handles points.

Just be careful about the direction of the curve at point s4 to obtain a smooth adjustment between the front and the back necklines. To do so, the angle of the line s4A12 has to be defined at (180-Angle_Line_s2A17).


When the basic pattern is afterwards transformed, it is very simple to adjust if necessary the neckline curves by just changing the location of the points A6, A17, A12 and A13.

How to shape a parametric neckline using curved path toolEdit

As shown above, in a mathematical point of view, a curve is a segment whose path is distorted when it is drawn towards points located outside the segment.

Adjusting the handles of the curved path tool is one way of pointing towards an imaginary point to change the curve direction.

So the curve shape can be parameterized by adopting simple parametric formulas to control length and angle of the handles, so that the result is adapted to each different pattern size.

The user has to analyse case-by-case which measurements affect the curve shape.

Considering the neckline, its length and shape change according to :

  • the distance between the shoulder and the middlefront line (neck depth)
  • the neck half width.

In order that the curve shape has a parametric behaviour when measurements change, an efficient way is to define length formulas based on percentage of the neckline width and depth ; this percentage varies according to the patternmaking method.

On the middlefront line, the angle is always defined at 180 ° unless particular style wanted.

The angle at the shoulder point may be at 270 °, or, when the neck width is quite tight, at another value the user has to define according to its experience.


How to shape parametric armholes using curved path toolEdit

It works similarly to the neckline shaping, but 4 handles must be parameterised since the curve direction changes at the chest point.

The armhole length and shape is affected by :

  • the distance and angle between the shoulder point and the chest point ;
  • the distance and angle betwwen the chest point and the armscye point.

When drafting two lines between these points before drafting the armhole curve, the user can include formulas calculating the length and angle of the handles according to these lines.

The angle at the shoulder point is always perpendicular to the shoulder line (unless particular style wanted), and the armscye point is always perpendicular to the side line, so that the front and back parts match together.


Shaping hips curve using 'Curve tool which uses point as control handle'Edit

The waist-to-basin curve shape is affected by the position of the hips point.

In most cases, the point perpendicular to the basin point, at the hips height, happens to be a reference control handle to draft the curve of a sloperor a tight blouse.


Conditional calculationsEdit

Basic syntaxEdit

It is possible to create conditional calculations using C++ style syntax for 'if then else' operator, that is to say ?:

Basically, in patterndrafting, we will most often use this operator to specify to Valentina to apply one value or another when some parameters vary.

Using this specification is nevertheless quite different from simply using the measurements table, since the chosen increment or preview calculation do not necessarily vary according to the general standard of the pattern, but according for example to the difference between the waist and the bust circumferences, which may imply to change the waist darts quantity and/or size.

In this example, A 'Dart_Size' increment is created, specifying that if the difference between the waist and bust circumferences is greater than 15, the dart size will be equal to 1.75, and 1.5 in the other case.

It can be written as follows :


That is to say IF Bust_Circumf - Waist_Circumf is greater than 15, THEN IF TRUE (operator ?) Dart_Size = 1.75, ELSE IF FALSE (operator :) Dart_Size = 1.5

When uploading a new measurements table, Valentina will automatically apply the conditional value according to the waist and bust circumferences.

In the present example, Valentina applies a 1.75 cm value, since the bust and waist circumferences are each 83 and 64 cms, and the difference is 17 cms.



Evolving conditionsEdit

It is as well possible to write an evolving conditional expression, by groups of sizes for example.

On the following screenshot, you can see that the shape of the front armhole curve, evolves according to the position of point A19, itself evolving according to the bust circumference called @TP measurement :


It is thus indicated to Valentina that position of point A19 from point A18, is meant to be 1,00 cm when the bust circumference is less than 100 cms ; 1.25 cms when the bust circumference is less than 110 cms ; and 1.35 cms when the bust circumference is equal or greater than 110 cms.



Rotating a dartEdit

Use the rotate tool for the slash and spread method.

First choose or create the point where the dart has to be rotated, and draw the line between this point and the center rotation point.

Here, the aim is to rotate the shoulder point into the sideline, point d1e is created and the center rotation point is the bustpoint BP1 :


Click-on the Rotate tool, choose the points and the curves which must be rotated, holding ctrl, enter.

Here, choose at least the shoulder point, the chest point, the armscye point, the bust point and point d1e :


Choose the center rotation point, here BP1, enter.

The dialog box opens, fix the rotation formula according to the original dart angle :


The points and curves are placed, draw the lines between points :


Here, when a partial rotation is wanted :


Rotating 2 darts to create 1 dartEdit

Use the method describded above, and work in 2 steps, like you would do it manually.

Here, in order to close the shoulder and the waist darts to create a single dart at the waist point, first close the waist dart, then the shoulder dart, shape a curve at the waist level chosing the waist dart midpoint as control point of the curve :





Particular case : rotating a dart in a curve - armhole and necklineEdit

The method to use is the same as above ; create a point on the curve by segmenting it, rotate points and the curve.

As the whole curve is rotated, be careful when creating detail, to select only the part of the curve included in the pattern.

Here, the shoulder dart is rotated into the neckline :



Alternative methodEdit

Editing in InkskapeEdit

Valentina does not provide grading tools nor multisize editing tools for the moment.

You can netherveless edit a graded pattern using free opensource Inskcape software.

Inkscape is a vectorial images software, allowing perfect manipulation of Valentina patterns to create graded versions of patterns, following these steps :

  • Create a folder aimed to contain temporary files to achieve gradation.

  • Open Inkscape and create a template file saved in the dedicated folder.

In preferences properties, define the page size as A1 or another appropriate size.

Create a first layer for the graded pattern, then one layer per size to import.

Keep this file blank.


  • To grade a pattern, open the template file and save it as the final file containing the graded pattern.

  • In Valentina, export the pattern in each size as a .svg file, skipping the layout stage.



Do not keep margin seams, and keep labels and the grainline only in one size.

  • In Inskape, import in each layer the corresponding .svg file.

  • In each layer,

→ select the imported image and first set the contour and color parameters (different in each layer) ;


→ the imported image being considered as a single object in Inkscape, cannot be processed as a whole for further gradation, so degroup it (may take some time, let Inkscape work), and group again each piece of the pattern ;





→ select all pieces and duplicate, then move them to the layer dedicated to the final pattern ;


→ once all pieces in each size have been transfered, open the final layer ;

→ activate the magnetism tool, including magnetism on paths and handles ;

→ anchor each similar piece of pattern to the same point ;


→ place the final pattern on the page ;



→ print the file directly if the printer allows it, or export before printing in a A4 multipages editor (not provided by Inkscape).

How-to for specific parts of patternsEdit