RImage
class RImage()
This adds a position
attribute as a dyanmicProperty,
for use as a mixin with objects that have x
and y
attributes.
changed()
Tell the environment that something has changed in the object. The behavior of this method will vary from environment to environment.
obj.changed()
addObserver(observer, methodName, notification)
Add an observer object. that will receive notification for the given methodName.
destroyRepresentation(name, **kwargs)
Destroy the stored representation for name and optionally kwargs.
getRepresentation(name, **kwargs)
Get a representation by name.
Optionally arguments could be provided if the representation factory requires arguments.
undo(undoTitle='')
Capture the current state of the object and create a undo item in a with
statement.
Optionally an undoTitle
can be provided.
color
The image’s color. This will be a
color
or None
.
image.color
None
image.color = (1, 0, 0, 0.5)
offset
The image’s offset. This is a shortcut to the offset
values in transformation
. This must be an
iterable containing two integer/float
values
defining the x and y values to offset the image by.
image.offset
(0, 0)
image.offset = (100, -50)
scale
The image’s scale. This is a shortcut to the scale
values in transformation
. This must be an
iterable containing two integer/float
values
defining the x and y values to scale the image by.
image.scale
(1, 1)
image.scale = (2, 2)
transformation
The image’s transformation
.
This defines the image’s position, scale,
and rotation.
image.transformation
(1, 0, 0, 1, 0, 0)
image.transformation = (2, 0, 0, 2, 100, -50)
moveBy(value)
Move the object.
obj.moveBy((10, 0))
value must be an iterable containing two
integer/float
values defining the x and y
values to move the object by.
rotateBy(value, origin=None)
Rotate the object.
obj.rotateBy(45)
obj.rotateBy(45, origin=(500, 500))
value must be a integer/float
values
defining the angle to rotate the object by. origin
defines the point at with the rotation should originate.
It must be a coordinate
or None
.
The default is (0, 0)
.
scaleBy(value, origin=None)
Scale the object.
obj.scaleBy(2.0)
obj.scaleBy((0.5, 2.0), origin=(500, 500))
value must be an iterable containing two
integer/float
values defining the x and y
values to scale the object by. origin defines the
point at with the scale should originate. It must be
a coordinate
or None
. The default is
(0, 0)
.
skewBy(value, origin=None)
Skew the object.
obj.skewBy(11)
obj.skewBy((25, 10), origin=(500, 500))
value must be rone of the following:
- single
integer/float
indicating the value to skew the x direction by. - iterable cointaining type
integer/float
defining the values to skew the x and y directions by.
origin defines the point at with the skew should
originate. It must be a coordinate
or
None
. The default is (0, 0)
.
transformBy(matrix, origin=None)
Transform the object.
obj.transformBy((0.5, 0, 0, 2.0, 10, 0))
obj.transformBy((0.5, 0, 0, 2.0, 10, 0), origin=(500, 500))
matrix must be a transformation
.
origin defines the point at with the transformation
should originate. It must be a coordinate
or None
. The default is (0, 0)
.