Provided by: alliance_5.0-20120515-6_amd64 bug

NAME

       xyflat - compute hierarchical coordinates

SYNOPSYS

       #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;

PARAMETERS

       xout, yout          Values  filled  by  the  function  call, return values, that represent
                           coordinates of the point in the figure

       x, y                Coordinates of a point in the instance

       xins, yins          Coordinates of the lower left corner of the instance

       x1, y1, x2, y2      Coordinates of the abutment box of the model of the instance

       trsf                Geometrical operation applied to the instance

DESCRIPTION

       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.

EXAMPLE

       #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;
       }

SEE ALSO

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