In ACSII/GDS driver, process the complete hierarchy.

* Bug: In CRL Core, in agdsDriver, the flags of the Query where sets to
   process only the top-level Cell. Now process the whole hierarchy (the
   Cell is completly flattened by this operation). Secondary bug: the
   transformation was not applied to the bounding boxes, resulting of
   all the cells stacked in (0,0) ...
This commit is contained in:
Jean-Paul Chaput 2014-08-15 11:48:41 +02:00
parent 4cf6bef950
commit 20f8d004e2
1 changed files with 8 additions and 2 deletions

View File

@ -80,7 +80,12 @@ namespace {
, _cell(cell)
, _str (NULL)
{
Query::setQuery( _cell, _cell->getBoundingBox(), Transformation(), NULL, 0, Query::DoComponents );
Query::setQuery( _cell
, _cell->getBoundingBox()
, Transformation()
, NULL
, 0
, Query::DoComponents|Query::DoMasterCells|Query::DoTerminalCells );
}
@ -108,6 +113,8 @@ namespace {
else
return;
getTransformation().applyOn( b );
double xmin = DbU::getPhysical(b.getXMin(), DbU::Nano);
double ymin = DbU::getPhysical(b.getYMin(), DbU::Nano);
double xmax = DbU::getPhysical(b.getXMax(), DbU::Nano);
@ -118,7 +125,6 @@ namespace {
isInteger( xmax, go, getPath() );
isInteger( ymax, go, getPath() );
getTransformation().applyOn( b );
AGDS::Rectangle* rect = new AGDS::Rectangle ( getBasicLayer()->getExtractNumber()
, xmin, ymin, xmax, ymax );
_str->addElement( rect );