mirror of https://github.com/KLayout/klayout.git
WIP
This commit is contained in:
parent
786d231acd
commit
1c15d851ee
|
|
@ -738,12 +738,6 @@ RedrawThreadWorker::draw_boxes (bool drawing_context, db::cell_index_type ci, co
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
db::Box
|
|
||||||
RedrawThreadWorker::empty_cell_replacement_box ()
|
|
||||||
{
|
|
||||||
return db::Box (db::Point (), db::Point ());
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
void
|
||||||
RedrawThreadWorker::draw_boxes (bool drawing_context, db::cell_index_type ci, const db::CplxTrans &trans, const db::Box &redraw_box, int level)
|
RedrawThreadWorker::draw_boxes (bool drawing_context, db::cell_index_type ci, const db::CplxTrans &trans, const db::Box &redraw_box, int level)
|
||||||
{
|
{
|
||||||
|
|
@ -751,12 +745,8 @@ RedrawThreadWorker::draw_boxes (bool drawing_context, db::cell_index_type ci, co
|
||||||
const db::Cell &cell = mp_layout->cell (ci);
|
const db::Cell &cell = mp_layout->cell (ci);
|
||||||
|
|
||||||
// For small bboxes, the cell outline can be reduced ..
|
// For small bboxes, the cell outline can be reduced ..
|
||||||
db::Box bbox = cell.bbox ();
|
db::Box bbox = cell.bbox_with_empty ();
|
||||||
bool empty_cell = false;
|
bool empty_cell = cell.bbox ().empty ();
|
||||||
if (bbox.empty ()) {
|
|
||||||
bbox = empty_cell_replacement_box ();
|
|
||||||
empty_cell = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (m_drop_small_cells && drop_cell (cell, trans)) {
|
if (m_drop_small_cells && drop_cell (cell, trans)) {
|
||||||
|
|
||||||
|
|
@ -811,12 +801,8 @@ RedrawThreadWorker::draw_boxes (bool drawing_context, db::cell_index_type ci, co
|
||||||
const db::CellInstArray &cell_inst = inst->cell_inst ();
|
const db::CellInstArray &cell_inst = inst->cell_inst ();
|
||||||
|
|
||||||
db::cell_index_type new_ci = cell_inst.object ().cell_index ();
|
db::cell_index_type new_ci = cell_inst.object ().cell_index ();
|
||||||
db::Box new_cell_box = mp_layout->cell (new_ci).bbox ();
|
db::Box new_cell_box = mp_layout->cell (new_ci).bbox_with_empty ();
|
||||||
bool empty_inst_cell = false;
|
bool empty_inst_cell = mp_layout->cell (new_ci).bbox ().empty ();
|
||||||
if (new_cell_box.empty ()) {
|
|
||||||
new_cell_box = empty_cell_replacement_box ();
|
|
||||||
empty_inst_cell = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (last_ci != new_ci) {
|
if (last_ci != new_ci) {
|
||||||
// Hint: don't use any_cell_box on partially visible cells because that will degrade performance
|
// Hint: don't use any_cell_box on partially visible cells because that will degrade performance
|
||||||
|
|
|
||||||
|
|
@ -200,7 +200,6 @@ private:
|
||||||
bool any_text_shapes (db::cell_index_type cell_index, unsigned int levels);
|
bool any_text_shapes (db::cell_index_type cell_index, unsigned int levels);
|
||||||
bool any_cell_box (db::cell_index_type cell_index, unsigned int levels);
|
bool any_cell_box (db::cell_index_type cell_index, unsigned int levels);
|
||||||
bool need_draw_box (const db::Layout *layout, const db::Cell &cell, int level);
|
bool need_draw_box (const db::Layout *layout, const db::Cell &cell, int level);
|
||||||
db::Box empty_cell_replacement_box ();
|
|
||||||
|
|
||||||
RedrawThread *mp_redraw_thread;
|
RedrawThread *mp_redraw_thread;
|
||||||
std::vector <db::Box> m_redraw_region;
|
std::vector <db::Box> m_redraw_region;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue