# ``igraph`.`drawing`.`shapes`.`ShapeDrawerDirectory``

class documentation

`class ShapeDrawerDirectory: (source)`

View In Hierarchy

Static class that resolves shape names to their corresponding shape drawer classes.

Classes that are derived from `ShapeDrawer` in this module are automatically registered by `ShapeDrawerDirectory` when the module is loaded for the first time.

Class Method | `register` | Registers the given shape drawer class under the given names.
Class Method | `register_namespace` | Registers all `ShapeDrawer` classes in the given namespace
Class Method | `resolve` | Given a shape name, returns the corresponding shape drawer class
Class Method | `resolve_default` | Given a shape name, returns the corresponding shape drawer class or the given default shape drawer if the shape name is unknown.
Class Variable | `known_shapes` | Undocumented

@classmethod
def register(cls, drawer_class): (source)

Registers the given shape drawer class under the given names.

Parameters
drawer_class | the shape drawer class to be registered

@classmethod
def register_namespace(cls, namespace): (source)

Registers all `ShapeDrawer` classes in the given namespace

Parameters
namespace | a Python dict mapping names to Python objects.

@classmethod
def resolve(cls, shape): (source)

Given a shape name, returns the corresponding shape drawer class

Parameters
shape | the name of the shape

Returns
the corresponding shape drawer class

Raises
`ValueError` | if the shape is unknown

@classmethod
def resolve_default(cls, shape, default=NullDrawer): (source)

Given a shape name, returns the corresponding shape drawer class or the given default shape drawer if the shape name is unknown.

Parameters
shape | the name of the shape
default | the default shape drawer to return when the shape is unknown

Returns
the shape drawer class corresponding to the given name or the default shape drawer class if the name is unknown

known_shapes: `dict` = (source)

Undocumented