Image/Pixel-Color Operations

<< 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

ANA.#FromVar - Restore IR-Content from Variable

Previous Top Next


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:

 

    ANA.ToVar

  GRA.vToBMP

    Variables with Inline Data

    Inline-Data and Inline-Pictures