MCPcopy Create free account
hub / github.com/KLayout/klayout / draw_layer

Method draw_layer

src/laybasic/laybasic/layRedrawThreadWorker.cc:2071–2086  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2069};
2070
2071void
2072RedrawThreadWorker::draw_layer (int from_level, int to_level, db::cell_index_type ci, const db::CplxTrans &trans, const std::vector<db::Box> &vp, int level,
2073 lay::CanvasPlane *fill, lay::CanvasPlane *frame, lay::CanvasPlane *vertex, lay::CanvasPlane *text, const UpdateSnapshotCallback *update_snapshot)
2074{
2075 // do not draw, if there is nothing to draw
2076 if (mp_layout->cells () <= ci || vp.empty ()) {
2077 return;
2078 }
2079 if (cell_var_cached (ci, trans)) {
2080 return;
2081 }
2082
2083 for (std::vector<db::Box>::const_iterator b = vp.begin (); b != vp.end (); ++b) {
2084 draw_layer (from_level, to_level, ci, trans, *b, level, fill, frame, vertex, text, update_snapshot);
2085 }
2086}
2087
2088void
2089RedrawThreadWorker::draw_layer (int from_level, int to_level, db::cell_index_type ci, const db::CplxTrans &trans, const db::Box &vp, int level,

Callers

nothing calls this directly

Calls 15

CellCacheInfoClass · 0.85
copy_bitmapFunction · 0.85
touchesMethod · 0.80
begin_parent_instsMethod · 0.80
yMethod · 0.80
PointClass · 0.50
emptyMethod · 0.45
beginMethod · 0.45
endMethod · 0.45
cellMethod · 0.45
bboxMethod · 0.45
sizeMethod · 0.45

Tested by

no test coverage detected