Object management #O

Command group to manage, modify and group objects.


Object manipulation

Delete object

(Object Delete Id)

#ODI

Obj-ID, ..., Obj-IDn

Object delete protection

(Object Delete Protection)

#ODP

DeleteProtection, Obj-ID, ..., Obj-IDn

Change visibility of object

(Object Visible Id)

#OVI

Visibility, Obj-ID, ..., Obj-IDn

Change position absolut

(Object Position Absolut)

#OPA

x, y, Obj-ID, ..., Obj-IDn

Change position relative

(Object Position Relative)

#OPR

x, y, Obj-ID, ..., Obj-IDn

Change size absolut

(Object Scale Absolut)

#OSA

Width, Height, Obj-ID, ..., Obj-IDn

Change size relative

(Object Scale Relative)

#OSR

Width, Height, Obj-ID, ..., Obj-IDn

Rotate object absolut

(Object Rotation Absolut)

#ORA

Angle, Obj-ID, ..., Obj-IDn

Rotate object relative

(Object Rotation Relative)

#ORR

Angle, Obj-ID, ..., Obj-IDn

Shear object absolut

(Object sHear Absolut)

#OHA

ShearX, ShearY, Obj-ID, ..., Obj-IDn

Shear object relative

(Object sHear Relative)

#OHR

ShearX, ShearY, Obj-ID, ..., Obj-IDn

Change opacity absolut

(Object Opacity Absolut)

#OOA

Transparency, Obj-ID, ..., Obj-IDn

Change opacity relative

(Object Opacity Relative)

#OOR

Transparency, Obj-ID, ..., Obj-IDn

Change object color

(Object Change Color)

#OCC

R,G,B, Obj-ID, ..., Obj-IDn

Change object style

(Object Change Style)

#OCS

Style-No, Obj-ID, ..., Obj-IDn

Define frame/background

(Object Frame Place)

#OFP

DrawStyleNo, addX, addY, Obj-ID, ..., Obj-IDn

Set anchor

(Object Anchor Active)

#OAA

Anchor, Obj-ID, ..., Obj-IDn

Set free anchor absolut

(Object Anchor Screen)

#OAS

x, y, Obj-ID, ..., Obj-IDn

Set free anchor relative

(Object Anchor Object)

#OAO

x, y, Obj-ID, ..., Obj-IDn

Change draw order (layer) absolut

(Object Layer Absolut)

#OLA

Draw order, Obj-ID, ..., Obj-IDn

Change draw order (layer) relative

(Object Layer Realtive)

#OLR

Draw order, Obj-ID, ..., Obj-IDn

Set user value (integer)

(Object User Integer)

#OUI

Obj-ID, Value, ..., Value n (Obj-ID n)

Set user value (float)

(Object User Float)

#OUF

Obj-ID, Value, ..., Value n (Obj-ID n)

Group

Add object to group

(Object Group Add)

#OGA

Obj-ID Group, Obj-ID, ..., Obj-IDn

Background

Move object to the background layer

(Object to BackGround)

#OBG

RGB, Obj-ID, ..., Obj-IDn

Load image into background layer

(Object Background Picture)

#OBP

<Name>, x(0), y(0), Anchor(7),<Gradient>, Time, Direction, 'Endmacro'

Object manipulation


Delete object

#ODI

Obj-ID, ..., Obj-IDn

The command deletes single or multiple objects. If the Obj-ID = 0 is transferred, all objects, with Obj-ID = -1 all objects and the background are deleted (from V1.2).


Object delete protection

#ODP

DeleteProtection, Obj-ID, ..., Obj-IDn

Objects with DeleteProtection = 1 cannot be deleted by the #ODI command and remain. They are also not moved to the background level (from V1.2).


Change visibility of object

#OVI

Visibility, Obj-ID, ..., Obj-IDn

The command sets the Visibility of objects. If the Obj-ID = 0 is passed, the command is applied to all objects:

Visibility

0

Invisible

1

Visible

2

Blink (from V 1.7)


See also objV(id) (from V1.4)


Change position absolut/relative


#OPA

x, y, Obj-ID, ..., Obj-IDn

#OPR

The command moves objects (absolute or relative) to the new position. If the Obj-ID = 0 is passed, all objects are moved.


See also objX(id), objY(id)


Change size absolut/relative


#OSA

Width, Height, Obj-ID, ..., Obj-IDn

#OSR

Change the Width or Height of an object as a percentage of the object size. Obj-ID = 0 Size change for all objects.


See also objW(id), objH(id), objSW(id), objSH(id)


Rotate object absolut/relative


#ORA

Angle, Obj-ID, ..., Obj-IDn

#ORR

The object (Obj-ID) is rotated by the Angle. Obj-ID = 0 rotation of all objects.


See also objR(id)


Shear object absolut/relative


#OHA

ShearX, ShearY, Obj-ID, ..., Obj-IDn

#OHR

Change the slope / shear of an object. ShearX and ShearY are given in degrees. Obj-ID = 0 shear for all objects.


See also objSX(id), objSY(id)


Change opacity absolut/relative


#OOA

Transparency, Obj-ID, ..., Obj-IDn

#OOR

Set visibility (Transparency) from 0 (completely transparent) to 100 (completely visible). Apply Obj-ID = 0 to all objects.


See also objO(id)


Change object color

#OCC

R,G,B, Obj-ID, ..., Obj-IDn

Change the color channels Red, Green and Blue. The color channel of the target color is determined relative to the parameters passed. The parameters (R, G, B) are transferred as percentage values in the range from -100 to 100.

Example:

Assume that the output color should be changed from RGB (50.0.0) to RGB (200.0.0).

The target color has only changed in the red component. The difference in the red component is 150. The value has to be converted into a percentage value:



150

100 = 117,65


255



#OCC 118,0,0,...


Color changes are always related to the initial-color (even with mutliple use). Obj-ID =0 to all objects.


Chance object style

#OCS

Style-No, Obj-ID, ..., Obj-IDn

A new style is assigned to an object (Obj-ID = 0 all). The style depends on the object. A string e.g.is automatically assigned a TextStyle. The command can only be used on simple graphic objects (e.g. not on buttons, SpinBox, ...).


See also objC(id)


Define frame/background

#OFP

DrawStyleNo, addX, addY, Obj-ID, ..., Obj-IDn

A background is assigned to an object (Obj-ID = 0 all). The colors are determined via the DrawStyle. The two parameters addX and addY change the size (in pixels) of the background on the left / right and upper / lower edge compared to the object.

...

#OFP 1,20,20,1

...


Set anchor

#OAA

Anchor, Obj-ID, ..., Obj-IDn

A new Anchor is assigned to an object (Obj-ID = 0 all). The active anchor is e.g. used to rotate the object.


See also objA(id)


Set free anchor absolut/relative


#OAS

x, y, Obj-ID, ..., Obj-IDn

#OAO

Set the anchor 0 of an object (Obj-ID). The command also marks anchor 0 as active.


Change layer order absolut/relative


#OLA

Layer, Obj-ID, ..., Obj-IDn

#OLR

This command changes the drawing order of one or more objects. The object (Obj-ID) with the highest Draw order is drawn as a last resort.

The very first object will be put to "layer 1". Next objects will be drawn on a higher "layer" above. Those may cover up prior drawn objects.





A group will be moved collectively. Its also possible to move objects inside of a group.


Set user value (integer) (from V1.1)

#OUI

Obj-ID, Value, ..., Value n (Obj-ID n)

An integer Value can be assigned to each object. The value can also be a calculation.


See also objUI(id)


Set user value (float) (from V1.1)

#OUF

Obj-ID, Value, ..., Value n (Obj-ID n)

A float Value can be assigned to each object. The value can also be a calculation.


See also objUF(id)

Group

Add object to group

#OGA

Obj-ID Group, Obj-ID, ..., Obj-IDn

Create a group (Obj-ID Group) or add objects to an existing group.

Background (from V1.2)

Move object to the background layer

#OBG

RGB, Obj-ID, ..., Obj-IDn

Existing objects are moved to the background. The background color is specified by the parameter RGB. After the PowerOn reset, the background color is black (RGB = 0). If RGB = -1 is transferred, the previously set color remains unchanged.


Load image into background layer

#OBP

<Name>, x(0), y(0), Anchor(7),<Gradient>, Time, Direction, 'Endmacro'

The command places an image directly from the SD card on the background. Transformations (like scaling) are impossible. If transformations are necessary, an image object must be created (#PPP) and the transformations applied before the object is moved to the background with the #OBG command. The parameter <Gradient> specifies a grayscale image that is used for the transition. The cross-fading is determined by the gray values and the Time in 1/100 s. The transition effect can be shown forward or backward (Direction). After the crossfading the macro 'Endmacro' is called.

Direction

0

Forward

1

Backward

...

#OBP <P:picture/GrandCanyon.epg>,0,0,7,<P:picture/Gradient.epg>,200,2

...

...

#OBP "GrandCanyon";0,0,7,"Gradient";200,2

...