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:
parent
4cf6bef950
commit
20f8d004e2
|
@ -80,7 +80,12 @@ namespace {
|
||||||
, _cell(cell)
|
, _cell(cell)
|
||||||
, _str (NULL)
|
, _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
|
else
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
getTransformation().applyOn( b );
|
||||||
|
|
||||||
double xmin = DbU::getPhysical(b.getXMin(), DbU::Nano);
|
double xmin = DbU::getPhysical(b.getXMin(), DbU::Nano);
|
||||||
double ymin = DbU::getPhysical(b.getYMin(), DbU::Nano);
|
double ymin = DbU::getPhysical(b.getYMin(), DbU::Nano);
|
||||||
double xmax = DbU::getPhysical(b.getXMax(), DbU::Nano);
|
double xmax = DbU::getPhysical(b.getXMax(), DbU::Nano);
|
||||||
|
@ -118,7 +125,6 @@ namespace {
|
||||||
isInteger( xmax, go, getPath() );
|
isInteger( xmax, go, getPath() );
|
||||||
isInteger( ymax, go, getPath() );
|
isInteger( ymax, go, getPath() );
|
||||||
|
|
||||||
getTransformation().applyOn( b );
|
|
||||||
AGDS::Rectangle* rect = new AGDS::Rectangle ( getBasicLayer()->getExtractNumber()
|
AGDS::Rectangle* rect = new AGDS::Rectangle ( getBasicLayer()->getExtractNumber()
|
||||||
, xmin, ymin, xmax, ymax );
|
, xmin, ymin, xmax, ymax );
|
||||||
_str->addElement( rect );
|
_str->addElement( rect );
|
||||||
|
|
Loading…
Reference in New Issue