RComponent

class RComponent()

This adds a position attribute as a dyanmicProperty, for use as a mixin with objects that have x and y attributes.

scaleTransformation(factor, center=(0, 0))

Deprecated: use Component.scaleBy(..)

changed()

Tell the environment that something has changed in the object. The behavior of this method will vary from environment to environment. :

obj.changed()

updateSelection(sender)

Update the selection.

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.

performUndo()

Create a undo item and add it the the undo manager.

prepareUndo(undoTitle='')

Save the current state of the object.

removeObserver(observer, notification)

Remove an observer object for a notification.

Inherits from subclass: fontParts.fontshell.component.RComponent

baseGlyph

The glyph the component references.

copyAttributes

font

The component’s parent font.

glyph

The component’s parent glyph.

index

The index of the component within the ordered list of the parent glyph’s components.

offset

The component’s offset.

scale

The component’s scale.

transformation

The component’s transformation matrix.

position

The point position.

selected

The object’s selection state.

>>> obj.selected
False
>>> obj.selected = True

box

Deprecated Component.box

naked()

decompose()

Decompose the component.

draw(pen)

Draw the component with the given Pen.

drawPoints(pen)

Draw the contour with the given PointPen.

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.

round()

Round offset coordinates.

copyData(source)

Subclasses may override this method. If so, they should call the super.

moveBy(value)

Move the object.

>>> obj.transformBy((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.transformBy(45)
>>> obj.transformBy(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.transformBy(2.0)
>>> obj.transformBy((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).

getIdentifier()

Create a new, unique identifier for and assign it to the object. If the object already has an identifier, the existing one should be returned.

generateIdentifier()

getParent()

move(*args, **kwargs)

rotate(*args, **kwargs)

skew(*args, **kwargs)

transform(*args, **kwargs)

translate(*args, **kwargs)

setChanged()

update()

setParent(parent)

Last edited on 09/09/2018