Hi TCLers,
I'm trying to write a program which manages 3d-printer settings ind a
database, there are 1000s of combinations as one profile has ca. 150
values defined.
The settings are used by the manufacturers slicing software which is
unfortunately not open source.
Looking at the stored data it is a typical ascii representation which is
a good idea to pass these files to different platforms.
The format is the typical "ini" file with "parameter=value" like
brimExtruder=2
brimEnable=true
heightTempsR="3,170;8,200;"
There are obviously strings ("PLA std 210-135"), integers (also as lists
"-1,-1") and the booleans "true" and "false".
But one type is coded in format:
infillCrossAngle=@Variant(\0\0\0\x87\x42\xb4\0\0)
The "@Variant" is constant, there are always 3 zero bytes at the
beginning.
After that always follows the byte "\x87"
and the last 4 bytes are the corr. value I think.
I have identified a few values:
byte pattern => supposed value
-----------------------------------------
\0\0\0\x87>\x8a=q => 0.27mm
\0\0\0\x87\x42\xa0\0\ => 70%
\0\0\0\x87\x42\xda\0\0 => 109%
\0\0\0\x87\x41 \0\0 => 10mm/s
\0\0\0\x87\x43H\0\0 => 200°
\0\0\0\x87\x42H\0\0 => 50°
\0\0\0\x87=\xcc\xcc\xcd => 0.1mm
\0\0\0\x87\x42\xc8\0\0 => 100
\0\0\0\x87\x42 \0\0 => 40
\0\0\0\x87\x42H\0\0 => 50mm^2
\0\0\0\x87@@\0\0 => 3.0mm
\0\0\0\x87@ \0\0 => 3.5mm
I did add the dimensions of the values as it may be that is some machine
specific constant included but I think it is not (see the 50 above)
My question is if someone can tell me how to convert the "Variant"
value to a corresponding mathematical numeric value?
TIA,
Gerhard
--
Gerhard Reithofer - Techn. EDV Reithofer -
http://www.tech-edv.co.at