<< Click to Display Table of Contents >> Navigation: 3. Script Language > Image/Pixel-Color Operations > ANA. - Imageworks > Load/Save-Import/Export IR's > Image/Pixel-Color Operations |
MiniRobotLanguage (MRL)
ANA.#FromVar
Restore Image-Register (IR) Content from SPR-Variable
Intention
This command will restore the IR Content from a SPR Variable.
It is the counterpart to ANA.ToVar. Using "#FromVar" you can later transfer it back into any IR.
Alternative you can also use the new Datamaker.exe-Utility to store Images in Data-Lines directly in the Script.
Then call the Data and use the Variable to restore the IR.
The Data that ANA.#FromVar expects is in a special Format that you get using ANA.ToVar.
Putting a IR into a Variable using "ToVar" will produce a Variable with this format insider the Variable:
- 8 Byte (4 Byte X- and 4 Byte Y-Size Information)
- (X-size * y-size)*4 Byte per Pixel-graphical Data in BGR-Order.
Therefore in many cases when the Data is from external Files, you may need to convert the Image-Data first using
GRA.vToBMP - Command.
' Load some Data that was imported from Datamaker
GSB.Inline_3838
' Convert external Format to Internal BMP-Format
GRA.vbm|$$DTA|$$DTA|.bmp
' Send it to the Image-Register
ANA.#FromVar|2|$$DTA
ANA.show|2!
MBX.Data Loaded.
ENR.
1. Use ToVar with IR 0 and store Content on TOS
This will use IR 0 and store the Content on TOS.
STW.ct|FORM_DESKTOPS_MANAGER_FRMMAIN_CLASS|Desktops-Manager (c) 2020 Theo Gottwald
' We Snapshot the Desktop into IR 0
ANA.Snap|0
' This will use IR 0 and TOS because no parameter were given.
ANA.ToVar
' Here we get the TOS into the Variable
POP.$$CON
' We put the Content into IR 1
ANA.#FromVar|1|$$CON
' We display the IR 1
ANA.show|1!
ENR.
2. Use ToVar with Parameters
This will include all Screens on a Dual-Screen System. They will be saved as a single ".bmp" (BItmap-) File. You can choose any widely used picture format, for example ".png" or "Jpg".
STW.ct|FORM_DESKTOPS_MANAGER_FRMMAIN_CLASS|Desktops-Manager (c) 2020 Theo Gottwald
' We Snapshot the Desktop into IR 0
ANA.Snap|0
' This will use IR 0 and TOS because no parameter were given.
ANA.ToVar|0|$$CON
' We put the Content into IR 1
ANA.#FromVar|1|$$CON
' We display the IR 1
ANA.show|1!
ENR.
3. Use Datamaker and VDA. as Source for the IR
This will load an Images "Inline" from Datas that have been imported into the Script.
Use the Datamaker-Tool to generate the Data-Part.
Sample-Script using VDA. and VDE.
GSB.Laa
ANA.#FromVar|1|$$DTA
ANA.Show|1#!
ENR.
'===========================================================
:Laa
'-----------------------------------------------------------
' BITMAP from Clipboard(.bmp).
' $$DTA = Data
' $$FIN = Filename of Sourcefile
' Length: 1392 Bytes in 22 Lines.
VDA.$$DTA|$$FIN=
?MAAGuBQAASlG0yTbYYlYMQvkOznPrYa3D1MGg62CLOJf5wNvQQ99VP4L6gQQ5AQXC
OpZoDz0mKBeeLz0riH9lGqZQA79lN4b4AtrGQBuz43T5ifxZuUGlkhKiUgJlmuYw
k3eBRZ9a0WwN+wjqxthPIlWS4rJSTa7stW/t3kQBBcK6Vgi/hQq+XAXCutbI35Vy
cnr2e4dGgPuje8jH5vNDpNH9JmQJeUncSSENg3+Fx97EhJVfEiLVUgKi6nkAOwA7
Q6tQi8CGFKHNY+9du0AbM6NUiUHgy+AzrJivUop+P6VXFqAW7M3beMK6Vgg/Rapu
dHEj5VTggYgu0pyzMxTHsdsVxDLgZZmrHywVUnJyvaZYhz4U7MHlb7IdttBLoBZs
DXvIFVaAekJ5xx+vZ5VydaSQNX0onmz9e0hVNoD7d3Y2RgQKWaHdmbz4CQArkK5g
+wgnFmufWo78ANv4v2o5oOvoz9XxAKuGe4DygnB5IQX3DmfZabFFJ9Hszdv43VVm
gFOfF99Jkd2W7D2ryF9VkuKy0g3O3E2jjw0D/LXUnIcBFGQxZfqCag4kGRm0PSsI
P8VqjuRJZwmBzcvjMop+P+VntliHAcTZ0f2mpGkpkXifWg48BZt2E9JshcfetNEY
b7LaxgNLoFM84EsgExxwA4RhtYqW4LPs8I/ortxFYspOnG2zB8lhLROSscWS3odl
J4Z4//o2WxeebI3+2EcepJSt09RBYAuA4/SHmVkoq1MvjZv209TBoOvgSxinkQw9
g8R1Zca9td60QSUPcvJ9Brjf+gHE2dF95kQZ8Q0+ePfmyJKWYDladdJBeP96djtn
JqhXvp91T5rmmNOaAdtG+LdGiP8lOhYorw3OXA2Df4VHHqQUbbNEmYAdm0Bzr7HY
134/5ef2uFdZECOMfWAKJygTY3fda7BbqG/t3sRBJVJy8joW61+6XgTkxWcurJ0v
EnAxD3HNHiifWg68oKtQCwCgosnR/am0VCQRRZfeDw3zjGU3yWgPevYCRyZW8SeE
40IJyHk5qeBvTSOX3bOKGfH9Czvn5shHphMzLBWffgK6GfSvi92+HGja2gTL4/QH
GYnBmMngSijd5ZyzM5R5MAXVubRZKYFFYspOnO3zZ2m01wn5iXzZaTEFh4EEOYFF
4koerO064EsI7ums2X/ooAYwOM5/slWxtwtI7QJtGqbQs2y4PyoWoBZsjbvo+l4E
oVVajvy9a2ufWg484Mvgs2y4P6pWAOZEmbFt7sDb0MOf9Q/6NtvXfnz1KubIx+bz
w+SxbW6Ae6Drq39KhvgCWoZgC7vn9jiX+UAb8LMHyWEtk/fB5W+yHbbQy2DCPBVG
OwE=
VDE.
RET.
Syntax
ANA.#FromVar|P1|P2
Parameter Explanation
P1 - Image-Register number, can not be omitted.
P2 - Variable with Bitmap-Data.
The Command will leave a 0/1 on the TOS. As always, a 0 means Error, while a 1 means "all fine".
Example
'***********************************
' ANA.#FromVar/ToVar-Sample
'***********************************
ANA.New|0|640|400
ANA.vgradient|0|&HFF1010|&H10FFFF
ANA.show|0
' This will use IR 0 and TOS because no parameter were given.
ANA.ToVar|0|$$CON
'LEN.$$CON|$$LEN
' We put the COntent into IR 1
ANA.#FromVar|1|$$CON
' We display the IR 1
ANA.invert|1
ANA.show|1!
ENR.
'***********************************
' ANA.#FromVar-Sample
' using the VDA./VDE.-Feature
'***********************************
GSB.Laa
ANA.#FromVar|1|$$DTA
ANA.Show|1#!
ENR.
'===========================================================
:Laa
'-----------------------------------------------------------
' BITMAP from Clipboard(.bmp).
' $$DTA = Data
' $$FIN = Filename of Sourcefile
' Length: 1392 Bytes in 22 Lines.
VDA.$$DTA|$$FIN=
?MAAGuBQAASlG0yTbYYlYMQvkOznPrYa3D1MGg62CLOJf5wNvQQ99VP4L6gQQ5AQXC
OpZoDz0mKBeeLz0riH9lGqZQA79lN4b4AtrGQBuz43T5ifxZuUGlkhKiUgJlmuYw
k3eBRZ9a0WwN+wjqxthPIlWS4rJSTa7stW/t3kQBBcK6Vgi/hQq+XAXCutbI35Vy
cnr2e4dGgPuje8jH5vNDpNH9JmQJeUncSSENg3+Fx97EhJVfEiLVUgKi6nkAOwA7
Q6tQi8CGFKHNY+9du0AbM6NUiUHgy+AzrJivUop+P6VXFqAW7M3beMK6Vgg/Rapu
dHEj5VTggYgu0pyzMxTHsdsVxDLgZZmrHywVUnJyvaZYhz4U7MHlb7IdttBLoBZs
DXvIFVaAekJ5xx+vZ5VydaSQNX0onmz9e0hVNoD7d3Y2RgQKWaHdmbz4CQArkK5g
+wgnFmufWo78ANv4v2o5oOvoz9XxAKuGe4DygnB5IQX3DmfZabFFJ9Hszdv43VVm
gFOfF99Jkd2W7D2ryF9VkuKy0g3O3E2jjw0D/LXUnIcBFGQxZfqCag4kGRm0PSsI
P8VqjuRJZwmBzcvjMop+P+VntliHAcTZ0f2mpGkpkXifWg48BZt2E9JshcfetNEY
b7LaxgNLoFM84EsgExxwA4RhtYqW4LPs8I/ortxFYspOnG2zB8lhLROSscWS3odl
J4Z4//o2WxeebI3+2EcepJSt09RBYAuA4/SHmVkoq1MvjZv209TBoOvgSxinkQw9
g8R1Zca9td60QSUPcvJ9Brjf+gHE2dF95kQZ8Q0+ePfmyJKWYDladdJBeP96djtn
JqhXvp91T5rmmNOaAdtG+LdGiP8lOhYorw3OXA2Df4VHHqQUbbNEmYAdm0Bzr7HY
134/5ef2uFdZECOMfWAKJygTY3fda7BbqG/t3sRBJVJy8joW61+6XgTkxWcurJ0v
EnAxD3HNHiifWg68oKtQCwCgosnR/am0VCQRRZfeDw3zjGU3yWgPevYCRyZW8SeE
40IJyHk5qeBvTSOX3bOKGfH9Czvn5shHphMzLBWffgK6GfSvi92+HGja2gTL4/QH
GYnBmMngSijd5ZyzM5R5MAXVubRZKYFFYspOnO3zZ2m01wn5iXzZaTEFh4EEOYFF
4koerO064EsI7ums2X/ooAYwOM5/slWxtwtI7QJtGqbQs2y4PyoWoBZsjbvo+l4E
oVVajvy9a2ufWg484Mvgs2y4P6pWAOZEmbFt7sDb0MOf9Q/6NtvXfnz1KubIx+bz
w+SxbW6Ae6Drq39KhvgCWoZgC7vn9jiX+UAb8LMHyWEtk/fB5W+yHbbQy2DCPBVG
OwE=
VDE.
RET.
Remarks
This Command starts with a "#" due to internal Speed reasons ("#FromVar"). The reason why we did that is, that general variable resolution can not be used on Binary picture-Content, and the # signals this to the robot-engine.
Limitations:
-
See also:
• Inline-Data and Inline-Pictures