BeamSpecifier

class rhythmmakertools.BeamSpecifier(beam_each_division=True, beam_divisions_together=None, beam_rests=None, hide_nibs=None, stemlet_length=None, use_feather_beams=None)

Beam specifier.

>>> import abjad
>>> from abjad.tools import rhythmmakertools

Beams each division by default:

>>> staff = abjad.Staff(name='RhythmicStaff')
>>> staff.extend("c'8 c' c'16 c' c' c' c'8 c' c' c'")
>>> abjad.setting(staff).auto_beaming = False
>>> selections = [staff[:4], staff[4:]]
>>> specifier = rhythmmakertools.BeamSpecifier()
>>> specifier(selections)
>>> show(staff) 

Lineage

digraph InheritanceGraph { graph [background=transparent, bgcolor=transparent, color=lightslategrey, fontname=Arial, outputorder=edgesfirst, overlap=prism, penwidth=2, rankdir=LR, root="__builtin__.object", splines=spline, style="dotted, rounded", truecolor=true]; node [colorscheme=pastel19, fontname=Arial, fontsize=12, penwidth=2, style="filled, rounded"]; edge [color=lightsteelblue2, penwidth=2]; subgraph cluster_abctools { graph [label=abctools]; "abjad.tools.abctools.AbjadObject.AbjadObject" [color=1, group=0, label=AbjadObject, shape=box]; "abjad.tools.abctools.AbjadObject.AbstractBase" [color=1, group=0, label=AbstractBase, shape=box]; "abjad.tools.abctools.AbjadValueObject.AbjadValueObject" [color=1, group=0, label=AbjadValueObject, shape=box]; "abjad.tools.abctools.AbjadObject.AbjadObject" -> "abjad.tools.abctools.AbjadValueObject.AbjadValueObject"; "abjad.tools.abctools.AbjadObject.AbstractBase" -> "abjad.tools.abctools.AbjadObject.AbjadObject"; } subgraph cluster_rhythmmakertools { graph [label=rhythmmakertools]; "abjad.tools.rhythmmakertools.BeamSpecifier.BeamSpecifier" [color=black, fontcolor=white, group=2, label=<<B>BeamSpecifier</B>>, shape=box, style="filled, rounded"]; } subgraph cluster_builtins { graph [label=builtins]; "builtins.object" [color=2, group=1, label=object, shape=box]; } "abjad.tools.abctools.AbjadValueObject.AbjadValueObject" -> "abjad.tools.rhythmmakertools.BeamSpecifier.BeamSpecifier"; "builtins.object" -> "abjad.tools.abctools.AbjadObject.AbstractBase"; }

Bases

Attribute summary

beam_divisions_together Is true when divisions should beam together.
beam_each_division Is true when specifier beams each division.
beam_rests Is true when beams should include rests.
hide_nibs Is true when specifier hides nibs.
stemlet_length Gets stemlet length.
use_feather_beams Is true when multiple beams should feather.
__call__(selections) Calls beam specifier on selections.
__copy__(*arguments) Copies Abjad value object.
__eq__(argument) Is true when all initialization values of Abjad value object equal the initialization values of argument.
__format__([format_specification]) Formats beam specifier.
__hash__() Hashes Abjad value object.
__ne__(argument) Is true when Abjad object does not equal argument.
__repr__() Gets interpreter representation of beam specifier.

Read-only properties

BeamSpecifier.beam_divisions_together

Is true when divisions should beam together. Otherwise false.

Does not beam divisions together:

>>> staff = abjad.Staff(name='RhythmicStaff')
>>> staff.extend("c'8 c' c'16 c' c' c' c'8 c' c' c'")
>>> abjad.setting(staff).auto_beaming = False
>>> selections = [staff[:4], staff[4:]]
>>> specifier = rhythmmakertools.BeamSpecifier()
>>> specifier(selections)
>>> show(staff) 

Beams divisions together (but excludes rests):

>>> staff = abjad.Staff(name='RhythmicStaff')
>>> staff.extend("c'8 c' c'16 c' c' c' c'8 r c' c'")
>>> abjad.setting(staff).auto_beaming = False
>>> selections = [staff[:4], staff[4:]]
>>> specifier = rhythmmakertools.BeamSpecifier(
...     beam_divisions_together=True,
...     beam_rests=False,
...     )
>>> specifier(selections)
>>> show(staff) 

Beams divisions together (and includes rests):

>>> staff = abjad.Staff(name='RhythmicStaff')
>>> staff.extend("c'8 c' c'16 c' c' c' c'8 r c' c'")
>>> abjad.setting(staff).auto_beaming = False
>>> selections = [staff[:4], staff[4:]]
>>> specifier = rhythmmakertools.BeamSpecifier(
...     beam_divisions_together=True,
...     beam_rests=True,
...     )
>>> specifier(selections)
>>> show(staff) 

Defaults to none:

>>> specifier = rhythmmakertools.BeamSpecifier()
>>> specifier.beam_divisions_together is None
True

Set to true, false or none.

Returns true, false or none.

BeamSpecifier.beam_each_division

Is true when specifier beams each division. Otherwise false.

Beams nothing:

>>> staff = abjad.Staff(name='RhythmicStaff')
>>> staff.extend("c'8 c' c'16 c' c' c' c'8 c' c' c'")
>>> abjad.setting(staff).auto_beaming = False
>>> selections = [staff[:4], staff[4:]]
>>> specifier = rhythmmakertools.BeamSpecifier(
...     beam_each_division=False,
...     )
>>> specifier(selections)
>>> show(staff) 

Beams each division (but excludes rests):

>>> staff = abjad.Staff(name='RhythmicStaff')
>>> staff.extend("c'8 c' c'16 c' c' c' c'8 r c' c'")
>>> abjad.setting(staff).auto_beaming = False
>>> selections = [staff[:4], staff[4:]]
>>> specifier = rhythmmakertools.BeamSpecifier(
...     beam_each_division=True,
...     beam_rests=False,
...     )
>>> specifier(selections)
>>> show(staff) 

Beams each division (and includes rests):

>>> staff = abjad.Staff(name='RhythmicStaff')
>>> staff.extend("c'8 c' c'16 c' c' c' c'8 r c' c'")
>>> abjad.setting(staff).auto_beaming = False
>>> selections = [staff[:4], staff[4:]]
>>> specifier = rhythmmakertools.BeamSpecifier(
...     beam_each_division=True,
...     beam_rests=True,
...     )
>>> specifier(selections)
>>> show(staff) 

Defaults to true:

>>> specifier = rhythmmakertools.BeamSpecifier()
>>> specifier.beam_each_division
True

Set to true or false.

Returns true or false.

BeamSpecifier.beam_rests

Is true when beams should include rests. Otherwise false.

Does not beam rests:

>>> staff = abjad.Staff(name='RhythmicStaff')
>>> staff.extend("c'8 c' c'16 c' c' c' c'8 r c' c'")
>>> abjad.setting(staff).auto_beaming = False
>>> selections = [staff[:4], staff[4:]]
>>> specifier = rhythmmakertools.BeamSpecifier()
>>> specifier(selections)
>>> show(staff) 

Beams rests:

>>> staff = abjad.Staff(name='RhythmicStaff')
>>> staff.extend("c'8 c' c'16 c' c' c' c'8 r c' c'")
>>> abjad.setting(staff).auto_beaming = False
>>> selections = [staff[:4], staff[4:]]
>>> specifier = rhythmmakertools.BeamSpecifier(
...     beam_rests=True,
...     )
>>> specifier(selections)
>>> show(staff) 

Beams skips:

>>> staff = abjad.Staff(name='RhythmicStaff')
>>> staff.extend("c'8 c' c'16 c' c' c' c'8 s c' c'")
>>> abjad.setting(staff).auto_beaming = False
>>> selections = [staff[:4], staff[4:]]
>>> specifier = rhythmmakertools.BeamSpecifier(
...     beam_rests=True,
...     )
>>> specifier(selections)
>>> show(staff) 

Defaults to none:

>>> specifier = rhythmmakertools.BeamSpecifier()
>>> specifier.beam_rests is None
True

Set to true, false or none.

Returns true, false or none.

BeamSpecifier.hide_nibs

Is true when specifier hides nibs.

Does not hide nibs:

>>> staff = abjad.Staff(name='RhythmicStaff')
>>> staff.extend("c'8 r c'16 c' c' c' c'8 r c' c'")
>>> abjad.setting(staff).auto_beaming = False
>>> selections = [staff[:4], staff[4:]]
>>> specifier = rhythmmakertools.BeamSpecifier(
...     beam_divisions_together=True,
...     beam_rests=False,
...     )
>>> specifier(selections)
>>> show(staff) 

Hides nibs:

>>> staff = abjad.Staff(name='RhythmicStaff')
>>> staff.extend("c'8 r c'16 c' c' c' c'8 r c' c'")
>>> abjad.setting(staff).auto_beaming = False
>>> selections = [staff[:4], staff[4:]]
>>> specifier = rhythmmakertools.BeamSpecifier(
...     beam_divisions_together=True,
...     beam_rests=False,
...     hide_nibs=True,
...     )
>>> specifier(selections)
>>> show(staff) 

Set to true, false or none.

Defaults to none.

Returns true, false or none.

BeamSpecifier.stemlet_length

Gets stemlet length.

Beams rests without stemlets:

>>> staff = abjad.Staff(name='RhythmicStaff')
>>> staff.extend("c'8 c' c'16 c' c' c' c'8 r c' c'")
>>> abjad.setting(staff).auto_beaming = False
>>> selections = [staff[:4], staff[4:]]
>>> specifier = rhythmmakertools.BeamSpecifier(
...     beam_rests=True,
...     )
>>> specifier(selections)
>>> show(staff) 

Beams rests with stemlets:

>>> staff = abjad.Staff(name='RhythmicStaff')
>>> staff.extend("c'8 c' c'16 c' c' c' c'8 r c' c'")
>>> abjad.setting(staff).auto_beaming = False
>>> selections = [staff[:4], staff[4:]]
>>> specifier = rhythmmakertools.BeamSpecifier(
...     beam_rests=True,
...     stemlet_length=2,
...     )
>>> specifier(selections)
>>> show(staff) 

Stemlets appear only when beam_rests is set to true.

Defaults to none:

>>> specifier = rhythmmakertools.BeamSpecifier()
>>> specifier.stemlet_length is None
True

Set to integer, float or none.

Returns integer, float or none.

BeamSpecifier.use_feather_beams

Is true when multiple beams should feather. Otherwise false.

>>> specifier = rhythmmakertools.BeamSpecifier()
>>> specifier.use_feather_beams is None
True

Defaults to none.

Set to true, false or none.

Returns true, false or none.

Special methods

BeamSpecifier.__call__(selections)

Calls beam specifier on selections.

Returns none.

(AbjadValueObject).__copy__(*arguments)

Copies Abjad value object.

Returns new Abjad value object.

(AbjadValueObject).__eq__(argument)

Is true when all initialization values of Abjad value object equal the initialization values of argument.

Returns true or false.

BeamSpecifier.__format__(format_specification='')

Formats beam specifier.

>>> specifier = rhythmmakertools.BeamSpecifier()
>>> f(specifier)
rhythmmakertools.BeamSpecifier(
    beam_each_division=True,
    )

Returns string.

(AbjadValueObject).__hash__()

Hashes Abjad value object.

Returns integer.

(AbjadObject).__ne__(argument)

Is true when Abjad object does not equal argument. Otherwise false.

Returns true or false.

BeamSpecifier.__repr__()

Gets interpreter representation of beam specifier.

>>> rhythmmakertools.BeamSpecifier()
BeamSpecifier(beam_each_division=True)

Returns string.