# Module libreda_pnr::place::mixed_size_placer

source · [−]## Expand description

Trait definitions for mixed-size placement algorithms. Mixed-size placers find positions for macro block and standard-cells.

## Modules

The `prelude`

helps to import most commonly used modules.

## Structs

A point is defined by a x and y coordinate in the euclidean plane.

A `SimpleRPolygon`

is a rectilinear polygon. It does not contain holes but can be self-intersecting.
The vertices are stored in an implicit format (one coordinate of two neighbour vertices is always the same
for rectilinear polygons). This reduces memory usage but has the drawback that edges must
alternate between horizontal and vertical. Vertices between two edges of the same orientation will
be dropped.

## Enums

Error type used for global placement.

## Traits

Interface definition for mixed-size placement engines (for macro blocks and standard cells).

This trait defines the type-casting of the coordinate types for geometrical objects.

Compute the winding number of a geometrical object around a point. The winding number is used to check if a point is contained in a shape.