DOKK / manpages / debian 10 / alliance / GENLIB_DEF_AB.3.en
GENLIB_DEF_AB.3(October 1, 1997) GENLIB_DEF_AB.3(October 1, 1997)

GENLIB_DEF_AB - define a new abutment box to the current layout cell

#include <genlib.h>
void GENLIB_DEF_AB(dx1, dy1, dx2, dy2);
long dx1, dy1, dx2, dy2;

See the file buster/alliance/alc_origin.1.en.gz.

Values to be added to the lower left corner of the previous abutment box
Values to be added to the upper right corner of the previous abutment box

DEF_AB give a new abutment box to the current physical cell. The coordinates of the abutment box are the coordinates of the envelop of the abutment boxes of each instance plus the delta values given as argument. The (dx1, dy1) values are added to the (x1, y1) coordinates of the bottom left corner of the "standard abutment box" (the envelop), and the (dx2, dy2) are added to the top right ones. You have to call this function before saving, otherwise the figure will not have an abutment box. Since it's regarding the abutment box of its model that an instance is placed, any futher use of this figure will be incorrect if DEF_AB isn't called, or properly defined.

"GENLIB_DEF_AB impossible : missing GENLIB_DEF_PHFIG"

No figure has been yet specified by a call to DEF_PHFIG. So it isn't possible to give it a size. you must call DEF_PHFIG before any other layout action.

#include <genlib.h>
main()
{
	/∗ Create a figure to work on  ∗/
	GENLIB_DEF_PHFIG("cell");
	/∗ Place an instance ∗/
	GENLIB_PLACE("model","i1", NOSYM,0L,0L);
	GENLIB_PLACE("model","i2", NOSYM,120L,40L);
	GENLIB_DEF_PHINS("i1");
	GENLIB_PLACE_TOP("model2", "i3", NOSYM);
	/∗ define the new abutment box as the standard envelop ∗/
	GENLIB_DEF_AB(0, 0, 0, 0);
	/∗ Save all that on disk ∗/
	GENLIB_SAVE_PHFIG();
}

genlib(1), GENLIB_SAVE_PHFIG(3).

See the file buster/alliance/alc_bug_report.1.en.gz.

ASIM/LIP6 PROCEDURAL GENERATION LANGUAGE