RComponent
class RComponent()
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.
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.
identifier
The unique identifier for the object.
This value will be an identifier
or a None
.
This attribute is read only.
>>> object.identifier
'ILHGJlygfds'
To request an identifier if it does not exist use
object.getIdentifier()
isCompatible(other)
Evaluate interpolation compatibility with other.
>>> compatible, report = self.isCompatible(otherComponent)
>>> compatible
True
>>> compatible
[Warning] Component: "A" + "B"
[Warning] Component: "A" has name A | "B" has name B
This will return a bool
indicating if the component is
compatible for interpolation with other and a
string
of compatibility notes.
pointInside(point)
Determine if point is in the black or white of the component.
point must be an (x, y) tuple.
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)
.