| 539 | } |
| 540 | |
| 541 | void |
| 542 | InstanceMarker::render (const Viewport &vp, ViewObjectCanvas &canvas) |
| 543 | { |
| 544 | const db::Layout *ly = layout (); |
| 545 | if (! ly) { |
| 546 | return; |
| 547 | } |
| 548 | |
| 549 | lay::CanvasPlane *fill, *contour, *vertex, *text; |
| 550 | get_bitmaps (vp, canvas, fill, contour, vertex, text); |
| 551 | if (contour == 0 && vertex == 0 && fill == 0 && text == 0) { |
| 552 | return; |
| 553 | } |
| 554 | |
| 555 | lay::Renderer &r = canvas.renderer (); |
| 556 | bool label_transform = view ()->cell_box_text_transform (); |
| 557 | int min_size = view ()->min_inst_label_size (); |
| 558 | |
| 559 | db::box_convert<db::CellInst> bc (*ly); |
| 560 | |
| 561 | if (! trans_vector ()) { |
| 562 | render_cell_inst (*ly, m_inst.cell_inst (), vp.trans () * trans (), r, view ()->cell_box_text_font (), fill, contour, vertex, text, label_transform, min_size, m_draw_outline, m_max_shapes); |
| 563 | } else { |
| 564 | for (std::vector<db::DCplxTrans>::const_iterator tr = trans_vector ()->begin (); tr != trans_vector ()->end (); ++tr) { |
| 565 | render_cell_inst (*ly, m_inst.cell_inst (), vp.trans () * *tr * trans (), r, view ()->cell_box_text_font (), fill, contour, vertex, text, label_transform, min_size, m_draw_outline, m_max_shapes); |
| 566 | } |
| 567 | } |
| 568 | } |
| 569 | |
| 570 | void |
| 571 | InstanceMarker::set_draw_outline (bool d) |
nothing calls this directly
no test coverage detected