RGuideline
class RGuideline()
A guideline object. This object is almost always
created with BaseGlyph.appendGuideline
.
An orphan guideline can be created like this
>>> guideline = RGuideline()
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.
angle
The angle of the guideline.
It must be an angle
.
Please check how :func:normalizers.normalizeRotationAngle
handles the angle. There is a special case, when angle is None
.
If so, when x and y are not 0, the angle will be 0. If x is 0 but y
is not, the angle will be 0. If y is 0 and x is not, the
angle will be 90. If both x and y are 0, the angle will be 0.
>>> guideline.angle
45.0
>>> guideline.angle = 90
color
”
The guideline’s color. This will be a
color
or None
.
>>> guideline.color
None
>>> guideline.color = (1, 0, 0, 0.5)
index
The index of the guideline within the ordered list of the parent glyph’s guidelines. This attribute is read only.
>>> guideline.index
0
name
The name of the guideline. This will be a
string
or None
.
>>> guideline.name
'my guideline'
>>> guideline.name = None
x
The x coordinate of the guideline.
It must be an integer/float
.
>>> guideline.x
100
>>> guideline.x = 101
y
The y coordinate of the guideline.
It must be an integer/float
.
>>> guideline.y
100
>>> guideline.y = 101
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(otherGuideline)
>>> compatible
True
>>> compatible
[Warning] Guideline: "xheight" + "cap_height"
[Warning] Guideline: "xheight" has name xheight | "cap_height" has
name cap_height
This will return a bool
indicating if the guideline is
compatible for interpolation with other and a
string
of compatibility notes.
round()
Round the guideline’s coordinate.
>>> guideline.round()
This applies to the following:
- x
- y
It does not apply to
- angle
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)
.