Change Polygon State
Command 0xc8: Change Polygon State
ubyte |
string |
ubyte |
<value_type> |
Variable |
Polygon ID |
Type of the value |
New Value |
Changes the state of a polygon. Because it is possible to change
different values of a polygon, the number of parameter to supply and
their types differ between commands. The following values can be
changed, the parameter which must be given are also shown in the table.
Overview Changeable Polygon Variables
Variable |
ValueType |
Description |
Python Method |
type (0x4f) |
string |
Sets the polygon's type to the given value |
setType |
color (0x45) |
color (ubyte,ubyte,ubyte,ubyte) |
Sets the polygon's color to the given value (r,g,b,a) - please note that a(lpha) = 0 means fully transparent |
setColor |
shape (0x4e) |
2D-polygon |
Sets the polygon's shape to the given value |
setShape |
filled (0x55) |
ubyte |
Marks that the polygon shall be filled if the value is !=0. |
setFilled |
lineWidth (0x4d) |
double |
Sets drawing width for unfilled polygon |
setLineWidth |
ADD (0x80) |
Polygon-definition, see below |
Adds the defined Polygon |
add |
REMOVE (0x81) |
int (layer), see below |
Removes the defined Polygon |
remove |
addDynamics(0x5c) |
polygonDynamics definition, see below |
Adds the specified dynamics for the Polygon |
addDynamics |
The message contents are as following:
type (0x4f)
ubyte |
string |
value type string |
New Type Name |
color (0x45)
ubyte |
ubyte |
ubyte |
ubyte |
ubyte |
value type color |
red |
green |
blue |
alpha |
shape (0x42)
ubyte |
ubyte |
double |
double |
... |
double |
double |
value type polygon |
entry number (n) |
x-coordinate#0 |
y-coordinate#0 |
... |
x-coordinate#n-1 |
y-coordinate#n-1 |
filled (0x55)
ubyte |
ubyte |
value type ubyte |
filled (!=0) |
ADD (0x80)
ubyte |
int |
ubyte |
string |
ubyte |
color |
ubyte |
ubyte |
ubyte |
int |
ubyte |
shape |
value type compound |
item number = 6 |
value type string |
type name |
value type color |
color |
value type ubyte |
filled |
value type int |
layer |
value type shape |
shape |
If the polygon could not been added because another one with the same ID
already exists within the layer, an error message is generated.
REMOVE (0x81)
ubyte |
int |
value type int |
layer |
If the named polygon can not be found in the given layer, all polygons
with the given ID are removed (from all layers). If no polygon with the
given ID could be found, an error message is generated.
addDynamics(0x5c)
ubyte |
int |
ubyte |
string |
ubyte |
color |
ubyte |
ubyte |
ubyte |
int |
ubyte |
shape |
value type compound |
item number = 5 |
value type string |
ID of a tracked object (empty string for setting tracking off) |
value type double list |
time line (anchor times for animation, give empty list for setting animation off) |
value type double list |
alpha span (anchor values for alpha animation) |
value type ubyte |
flag indicating whether animation shall be looped |
value type ubyte |
flag indicating whether polygon shall be rotated with tracked object |
For the dynamics, either a tracked object must be specified, inducing
the polygon to follow the objects movements in the simulation, or the
polygon has to be animated (currently only alpha animation is possible,
other animation targets may follow, see #5442). If looped is 0 (i.e. false)
and an animation is specified the polygon will be removed after the
animation timeline has elapsed.