KiCad PCB EDA Suite
Loading...
Searching...
No Matches
PCB_PAINTER Class Reference

Contains methods for drawing PCB-specific items. More...

#include <pcb_painter.h>

Inheritance diagram for PCB_PAINTER:
KIGFX::PAINTER KIGFX::PCB_PRINT_PAINTER ZONE_PAINTER

Public Member Functions

 PCB_PAINTER (GAL *aGal, FRAME_T aFrameType)
 
virtual PCB_RENDER_SETTINGSGetSettings () override
 
virtual bool Draw (const VIEW_ITEM *aItem, int aLayer) override
 

Protected Member Functions

PCB_VIEWERS_SETTINGS_BASEviewer_settings ()
 
void draw (const PCB_TRACK *aTrack, int aLayer)
 
void draw (const PCB_ARC *aArc, int aLayer)
 
void draw (const PCB_VIA *aVia, int aLayer)
 
void draw (const PAD *aPad, int aLayer)
 
void draw (const PCB_SHAPE *aSegment, int aLayer)
 
void draw (const PCB_REFERENCE_IMAGE *aBitmap, int aLayer)
 
void draw (const PCB_FIELD *aField, int aLayer)
 
void draw (const PCB_TEXT *aText, int aLayer)
 
void draw (const PCB_TEXTBOX *aText, int aLayer)
 
void draw (const PCB_TABLE *aTable, int aLayer)
 
void draw (const FOOTPRINT *aFootprint, int aLayer)
 
void draw (const PCB_GROUP *aGroup, int aLayer)
 
void draw (const ZONE *aZone, int aLayer)
 
void draw (const PCB_DIMENSION_BASE *aDimension, int aLayer)
 
void draw (const PCB_POINT *aPoint, int aLayer)
 
void draw (const PCB_TARGET *aTarget)
 
void draw (const PCB_MARKER *aMarker, int aLayer)
 
void draw (const PCB_BOARD_OUTLINE *aBoardOutline, int aLayer)
 
int getLineThickness (int aActualThickness) const
 Get the thickness to draw for a line (e.g.
 
virtual PAD_DRILL_SHAPE getDrillShape (const PAD *aPad) const
 Return drill shape of a pad.
 
virtual SHAPE_SEGMENT getPadHoleShape (const PAD *aPad) const
 Return hole shape for a pad (internal units).
 
virtual int getViaDrillSize (const PCB_VIA *aVia) const
 Return drill diameter for a via (internal units).
 
void strokeText (const wxString &aText, const VECTOR2I &aPosition, const TEXT_ATTRIBUTES &aAttrs, const KIFONT::METRICS &aFontMetrics)
 
void renderNetNameForSegment (const SHAPE_SEGMENT &aSeg, const COLOR4D &aColor, const wxString &aNetName) const
 

Protected Attributes

PCB_RENDER_SETTINGS m_pcbSettings
 
FRAME_T m_frameType
 
int m_maxError
 
int m_holePlatingThickness
 
int m_lockedShadowMargin
 

Detailed Description

Contains methods for drawing PCB-specific items.

Definition at line 182 of file pcb_painter.h.

Constructor & Destructor Documentation

◆ PCB_PAINTER()

PCB_PAINTER::PCB_PAINTER ( GAL * aGal,
FRAME_T aFrameType )

Definition at line 583 of file pcb_painter.cpp.

Member Function Documentation

◆ Draw()

bool PCB_PAINTER::Draw ( const VIEW_ITEM * aItem,
int aLayer )
overridevirtual

Implements KIGFX::PAINTER.

Definition at line 624 of file pcb_painter.cpp.

◆ draw() [1/18]

void PCB_PAINTER::draw ( const FOOTPRINT * aFootprint,
int aLayer )
protected

Definition at line 2648 of file pcb_painter.cpp.

◆ draw() [2/18]

void PCB_PAINTER::draw ( const PAD * aPad,
int aLayer )
protected

Definition at line 1270 of file pcb_painter.cpp.

◆ draw() [3/18]

void PCB_PAINTER::draw ( const PCB_ARC * aArc,
int aLayer )
protected

Definition at line 929 of file pcb_painter.cpp.

◆ draw() [4/18]

void PCB_PAINTER::draw ( const PCB_BOARD_OUTLINE * aBoardOutline,
int aLayer )
protected

Definition at line 3144 of file pcb_painter.cpp.

◆ draw() [5/18]

void PCB_PAINTER::draw ( const PCB_DIMENSION_BASE * aDimension,
int aLayer )
protected

Definition at line 2898 of file pcb_painter.cpp.

◆ draw() [6/18]

void PCB_PAINTER::draw ( const PCB_FIELD * aField,
int aLayer )
protected

Definition at line 2337 of file pcb_painter.cpp.

◆ draw() [7/18]

void PCB_PAINTER::draw ( const PCB_GROUP * aGroup,
int aLayer )
protected

Definition at line 2716 of file pcb_painter.cpp.

◆ draw() [8/18]

void PCB_PAINTER::draw ( const PCB_MARKER * aMarker,
int aLayer )
protected

Definition at line 3051 of file pcb_painter.cpp.

◆ draw() [9/18]

void PCB_PAINTER::draw ( const PCB_POINT * aPoint,
int aLayer )
protected

Definition at line 3004 of file pcb_painter.cpp.

◆ draw() [10/18]

void PCB_PAINTER::draw ( const PCB_REFERENCE_IMAGE * aBitmap,
int aLayer )
protected

Definition at line 2290 of file pcb_painter.cpp.

◆ draw() [11/18]

void PCB_PAINTER::draw ( const PCB_SHAPE * aSegment,
int aLayer )
protected

Definition at line 1866 of file pcb_painter.cpp.

◆ draw() [12/18]

void PCB_PAINTER::draw ( const PCB_TABLE * aTable,
int aLayer )
protected

Definition at line 2585 of file pcb_painter.cpp.

◆ draw() [13/18]

void PCB_PAINTER::draw ( const PCB_TARGET * aTarget)
protected

Definition at line 2968 of file pcb_painter.cpp.

◆ draw() [14/18]

void PCB_PAINTER::draw ( const PCB_TEXT * aText,
int aLayer )
protected

Definition at line 2344 of file pcb_painter.cpp.

◆ draw() [15/18]

void PCB_PAINTER::draw ( const PCB_TEXTBOX * aText,
int aLayer )
protected

Definition at line 2449 of file pcb_painter.cpp.

◆ draw() [16/18]

void PCB_PAINTER::draw ( const PCB_TRACK * aTrack,
int aLayer )
protected

Definition at line 797 of file pcb_painter.cpp.

◆ draw() [17/18]

void PCB_PAINTER::draw ( const PCB_VIA * aVia,
int aLayer )
protected

Definition at line 1021 of file pcb_painter.cpp.

◆ draw() [18/18]

void PCB_PAINTER::draw ( const ZONE * aZone,
int aLayer )
protected

Definition at line 2784 of file pcb_painter.cpp.

◆ getDrillShape()

PAD_DRILL_SHAPE PCB_PAINTER::getDrillShape ( const PAD * aPad) const
protectedvirtual

Return drill shape of a pad.

Definition at line 605 of file pcb_painter.cpp.

◆ getLineThickness()

int PCB_PAINTER::getLineThickness ( int aActualThickness) const
protected

Get the thickness to draw for a line (e.g.

0 thickness lines get a minimum value).

Parameters
aActualThicknessline own thickness
Returns
the thickness to draw

Definition at line 593 of file pcb_painter.cpp.

◆ getPadHoleShape()

SHAPE_SEGMENT PCB_PAINTER::getPadHoleShape ( const PAD * aPad) const
protectedvirtual

Return hole shape for a pad (internal units).

Definition at line 611 of file pcb_painter.cpp.

◆ GetSettings()

virtual PCB_RENDER_SETTINGS * KIGFX::PCB_PAINTER::GetSettings ( )
inlineoverridevirtual

Implements KIGFX::PAINTER.

Definition at line 188 of file pcb_painter.h.

◆ getViaDrillSize()

int PCB_PAINTER::getViaDrillSize ( const PCB_VIA * aVia) const
protectedvirtual

Return drill diameter for a via (internal units).

Definition at line 618 of file pcb_painter.cpp.

◆ renderNetNameForSegment()

void PCB_PAINTER::renderNetNameForSegment ( const SHAPE_SEGMENT & aSeg,
const COLOR4D & aColor,
const wxString & aNetName ) const
protected

Definition at line 856 of file pcb_painter.cpp.

◆ strokeText()

void PCB_PAINTER::strokeText ( const wxString & aText,
const VECTOR2I & aPosition,
const TEXT_ATTRIBUTES & aAttrs,
const KIFONT::METRICS & aFontMetrics )
protected

Definition at line 2259 of file pcb_painter.cpp.

◆ viewer_settings()

PCB_VIEWERS_SETTINGS_BASE * PCB_PAINTER::viewer_settings ( )
protected

Definition at line 88 of file pcb_painter.cpp.

Member Data Documentation

◆ m_frameType

FRAME_T KIGFX::PCB_PAINTER::m_frameType
protected

Definition at line 249 of file pcb_painter.h.

◆ m_holePlatingThickness

int KIGFX::PCB_PAINTER::m_holePlatingThickness
protected

Definition at line 252 of file pcb_painter.h.

◆ m_lockedShadowMargin

int KIGFX::PCB_PAINTER::m_lockedShadowMargin
protected

Definition at line 253 of file pcb_painter.h.

◆ m_maxError

int KIGFX::PCB_PAINTER::m_maxError
protected

Definition at line 251 of file pcb_painter.h.

◆ m_pcbSettings

PCB_RENDER_SETTINGS KIGFX::PCB_PAINTER::m_pcbSettings
protected

Definition at line 248 of file pcb_painter.h.


The documentation for this class was generated from the following files: