DOKK / manpages / debian 10 / alliance / xyflat.3.en
XYFLAT(3) MBK PHYSICAL FUNCTIONS XYFLAT(3)

xyflat - compute hierarchical coordinates

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

#include "mph.h"
void xyflat(xout, yout, x, y, xins, yins, x1, y1, x2, y2, trsf)
long ∗xout, ∗yout;
long x, y;
long xins, yins;
long x1, y1, x2, y2;
char trsf;

Values filled by the function call, return values, that represent coordinates of the point in the figure
Coordinates of a point in the instance
Coordinates of the lower left corner of the instance
Coordinates of the abutment box of the model of the instance
Geometrical operation applied to the instance

xyflat computes coordinates relative to a model of instance in order to give them in figure coordinates, taking care of the transformation performed on the instance.
This function is very useful when flattening, or getting coordinates of an object belonging to an istance at figure level.
Care must be taken that the x1, y1, x2, y2 parameters are not the current figure abutment box coordinates, but the instance model abutment box coordinates.

#include "mph.h"
long GET_CON_X(insname, conname, index)
char ∗insname, ∗conname;
long index;
{
phfig_list ∗ptfig; /∗ pointer on model of instance called insname ∗/
phins_list ∗ptins; /∗ pointer on instance called insname ∗/
phcon_list ∗ptcon; /∗ pointer on the conname called con inside ptins ∗/
long x_con, y_con; /∗ return values, y_con here for beauty ∗/
	ptins = getphins(WORK_PHFIG, insname);
	ptfig = getphfig(ptins->FIGNAME, 'P');
	ptcon = getphcon(ptfig, conname, index);
	xyflat(&x_con, &y_con, ptcon->XCON, ptcon->YCON,
		ptins->XINS, ptins->YIINS,
		ptfig->XAB1, ptfig->YAB1, ptfig->XAB2, ptfig->YAB2,
		ptins->TRANSF);
	return x_con;
}

mbk(1), phfig(3), phins(3).

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

October 1, 1997 ASIM/LIP6