### 3.2.96 self-alignment-interface

Position this object on itself and/or on its parent. To this end, the following functions are provided:

`Self_alignment_interface::[xy]_aligned_on_self`

  Align self on reference point, using `self-alignment-X` and `self-alignment-Y`.

`Self_alignment_interface::aligned_on_[xy]_parent`
`Self_alignment_interface::centered_on_[xy]_parent`

  Shift the object so its own reference point is centered on the extent of the parent

#### User settable properties:

> `collision-bias` (number)

>   Number determining how much to favor the left (negative) or right (positive). Larger absolute values in either direction will push a collision in this direction.

> `collision-padding` (number)

>   Amount of padding to apply after a collision is detected via the self-alignment-interface.

> `self-alignment-X` (number)

>   Specify alignment of an object. The value `-1` means left aligned, `0` centered, and `1` right-aligned in X direction. Other numerical values may also be specified.

> `self-alignment-Y` (number)

>   Like `self-alignment-X` but for the Y axis.

#### Internal properties:

> `potential-X-colliding-grobs` (array of grobs)

>   Grobs that can potentially collide with a self-aligned grob on the X-axis.

> `X-colliding-grobs` (array of grobs)

>   Grobs that can collide with a self-aligned grob on the X-axis.

> `Y-colliding-grobs` (array of grobs)

>   Grobs that can collide with a self-aligned grob on the Y-axis.

This grob interface is used in the following graphical object(s): AccidentalSuggestion, BarNumber, ClefModifier, DoublePercentRepeatCounter, DynamicText, Fingering, GridLine, Hairpin, InstrumentName, InstrumentSwitch, LyricText, MeasureCounter, MetronomeMark, MultiMeasureRestNumber, MultiMeasureRestText, PercentRepeatCounter, RehearsalMark, SostenutoPedal, StemTremolo, StringNumber, StrokeFinger, SustainPedal, TextScript and UnaCordaPedal.

#### Internals Reference v2.18.2 (稳定分支).