@Durval thank you, but I have already weight these two solutions and they didn't fit my needs.
I explain:
The problem is that I have a panel with predefined total fixed widths, composed of 2 outer layers and and a frame, and the user have the ability to choose a unified skin thickness from
0mm to
0.5*panel_thickness, with the condition that it must be rounded mm with
NO FRACTIONS
So as long the panel thickness forms an even number there will be no problem, ex:
panel 100mm --- forms ---> skin thickness range [0, 50mm]
But if the panel thickness is an odd number:
panel 125 --- forms ---> skin thickness range [0, 62.5mm] !<--- that is what I´m trying to prevent
Let's study your solutions:
CEIL (x)
Returns the smallest integral value that is not smaller than x (always integer). (copy pasted from GDL manual)
panel 125 --- forms ---> skin thickness range [0, ceil(125*0.5)] will get you a range [0, 63]
but 63*2 = 126 mm panel (error - not acceptable)
ROUND_INT (x)
Returns the rounded integer part of x.
in other words, and using the previous example 62.5 mm will be rounded to 63 mm (error - not acceptable)
On the other hand @Barry's solution may have been wrong, but it pointed out where I needed to go, so I modified his solution in a way that it will fulfill my needs, and not prone to errors it the units used in the template is changed by writing this psuedo_code in GDL
values "skin_thickness" , range (0, (0.5*panel_thickness) - (panel_thickness * 0.5 MOD 0.001) )
So thank you all, if it wasn't for you I wouldn't have been able to get this solution
A good friend of mine have once told me that I´m so brute that I´m capable of creating a GDL script capable of creating GDLs.