Product Documentation
Virtuoso Layout Suite SKILL Reference
Product Version IC23.1, November 2023

gpeCreateAlignment

gpeCreateAlignment(
[ ?direction t_direction ]
[ ?type t_type ]
[ ?reflayer g_reflayer ]
[ ?spacing f_spacing ]
[ ?verbose { t | nil } ]
)
=> l_alignment / nil

Description

Creates an alignment DPL, which can be passed as an alignment argument for gpeCreateGridEntry to set the member alignment and spacing of a grid entry. Specifying a direction, although not necessary for types other than center, is highly recommended.

Arguments

?direction t_direction

Specifies the alignment. Valid values are:

  • horizontal: A horizontal alignment to be passed as the hAlign parameter.
  • vertical: A vertical alignment to be passed as the vAlign parameter.

The direction parameter is always recommended but is only required if the ?type parameter is set to center or custom.

?type t_type

Specifies the type of alignment. Valid values are:

  • left: (default for horizontal alignment) Aligns the left sides of instances when the direction is horizontal.
  • right: Aligns the right sides of instances when the direction is horizontal.
  • center: Aligns the centers of the instances.
  • top: (default for vertical alignment) Aligns the top sides of instances when the direction is vertical.
  • bottom: Aligns the bottom sides of instances when the direction is vertical.
  • custom_left: Creates a spacing from the left side of the instance when the direction is horizontal.
  • custom_right: Creates a spacing from the right side of the instance when the direction is horizontal.
  • custom: Equivalent to custom_bottom when the direction is vertical and custom_left when the direction is horizontal.
  • custom_top: Creates a spacing from the top of this instance when the direction is vertical.
  • custom_bottom: Creates a spacing from the bottom of this instance when the direction is vertical.

?reflayer g_reflayer

Specifies the reference layer to which the gridEntry must be aligned. You can specify a layer-purpose pair, only a layer name or number, or the layer and purpose numbers. If unspecified, the instance bounding box determined by the Modgen is used.

Example: list(187 255), list("poly" "drawing")

Both mature and advanced nodes support layers when applied to a custom spacing-type alignment. In addition, the advanced node release supports use of the ?layer parameter in combination with the ?type parameters left, right, top, bottom, and center.

?spacing f_spacing

Specifies the minimum distance required between the alignment object and the reference instance. This argument can be used only if ?type is set to one of the custom* options.

?verbose { t | nil }

Controls the display of warning messages.

Value Returned

l_alignment

Represents the Modgen sandbox alignment DPL that was created.

nil

The command was unsuccessful.

Examples

Creates an alignment object in the vertical direction of type center:

vAlign = gpeCreateAlignment(?direction "vertical" ?type "center")
=> (nil type "center" direction "vertical")

Creates an alignment object in the horizontal direction of type right:

hAlign = gpeCreateAlignment(?direction "horizontal" ?type "right")
=> (nil type "right" direction "horizontal")

Return to top
 ⠀
X