## SYNOPSYS

#include "mph.h" void *bigvia(figure, viatype, x, y, dx, dy) phfig_list *figure; char viatype; long x, y, dx, dy;

## PARAMETERS

*figure*- Pointer to the physical figure in the which vias must be put.
*viatype*- Contact type to be put.
*x, y*- Coordinate of the center of the bigvia.
*dx, dy*- Maximun rectangle to be filled with vias.

## DESCRIPTION

**bigvia**draws as many vias as necessary to fill the rectangle defined by its

*dx*and dy arguments. The ``bigvia'' center is indicated with

*dx*and dy, thus making this function much like

**addphvia**. The necessary segments are drawn to avoid having notches or other drc rules violated.

This function is tipically used by routers when connecting two non minimal wires, like supplies or clocks.

The values for drawing the via correctly, ie avoid drc violations, are taken from the idps set of rules, and are not changeable at run time.

## ERRORS

- "*** mbk error *** bigvia impossible : negative values dx, dy in figure figure at (x, y)"

*dx*or

*dy*are negative, the function complains and exits.

## EXAMPLE

#include "mph.h" #define BigVia(x, y, dx, dy) \ bigvia(WORK_PHFIG, CONT_VIA, x, y, dx, dy)