Complex products
Cutting Optimization Pro allows you to define complex products. Such product is defined by using a formula which depends by some variables (Length, Width, Height, etc of the product).
Each product is characterized by:
- name,
- Pieces to be optimized (2D or 1D),
- some variables based on which the sizes of the pieces to be optimized are established,
- extra components (screws, latches, high, etc).
For defining complex products please press the menu Product | Show complex products.

A new windows will appear on the screen:

First of all we have to assign a name to that product. After that we can add components to it.
Another important element are the variables which enter in the definition of the product. These are defined in the matrix Variables.
Here we can define variables like: Length, Width, Height, Wood Thickness, etc. All these name of variables must begin with one letter and must continue with any other letter or digit. No blank spaces are accepted in the name of variables.
Variables may have or not default values. If there is no default value for a variable it can be defined later when a product is added to the DEMAND. For instance, the values for the variables which define the external sizes of the products may be undefined at this moment. They will receive valid values only when the product is added to the DEMAND. This thing is very useful when the external sizes of the product are not apriori known.
The formulas which define the pieces which enter in a product (Length sau Width) may contain the following elements:
operators: +, -, *, /
parenthesis: (, )
constants: any integer and real numbers.
variables: which have been entered in the matrix Variables.
values from other fields: [x][y], where x represents the row (has values between 1 and the number of rows, and y represents the column (and can take only value 1 (Length) and value 2 (Width)). x and y must be integer values.
Error messages
When defining expressions different error messages can arise. Some of the cases where the errors can appear are:
- mathematical expression which defines the Length and the Width of a product are incorrect. This expression must be valid from the mathematical point of view.
Some examples of incorrectly mathematical expressions are:
Expression Reason
x+ - after + a variable, constant or open parenthesis must follow,
a)-5 - after a variable or constant we cannot have a open parenthesis,
(a+b)) - the number of closed parenthesis is greater than the number of the open ones.
a+[Lat][3] - only integer numbers can appear between squared parenthesis. The second number can be only 1 or 2,
a+[0][2] - First number must be between 1 and the number of lines of the product definition.
..........
Width+Length/2 - this expression is correct from the mathematical point of view, but if the variable Width has not been defined, then the expression is invalid.
Lat/x -10 - this expression is correct from the mathematical point of view, but an error message will be generated if variable x takes value 0
If cycles appease when the expressions are computed, then an error message will be generated. A cycle can appear if there are expressions which depend on other expressions, which also depend (directly or indirectly) by the initial expressions.
Example:
Expression on row 1, column 1 is = [1][2] + Width
Expression on row 1, column 2 is = [3][1] - Length + 10
Expression on row 3, column 1 is = [1][1] / 2
Expression on (1,1) depends on the value of the expression on (1,2) which depends on the value on (3,1) which depends on the value on (1,1). It is obvious that the value of these expressions cannot be computed.
Adding products to DEMAND
One may add products to the DEMAND by pressing the menu Products | Add Complex Products to Demand. One may specify how many copies of that product are required.

The values for the undefined variables must be set now.
The type of the material involved in that product may also be changed. It is a good idea to define products with some generic types and then, when they are added to the current DEMAND, one may change their type to some type of material which is currently in REPOSITORY.
At this moment the length and the width of each pieces from a product are computed.
At the end of optimization, the extra components are given in the Extra Statistics window.
Links