Various fixes to pin drawing code
- Better shape to the 60617 pin markers - Made the markers' size proportional to the pin text - Added the missing implementation in the pin plot routines
This commit is contained in:
parent
009d28d48c
commit
a1087801af
|
@ -182,6 +182,23 @@ const wxChar* MsgPinElectricType[] =
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/// Utility for getting the size of the 'internal' pin decorators (as a radius)
|
||||||
|
// i.e. the clock symbols (falling clock is actually external but is of
|
||||||
|
// the same kind)
|
||||||
|
|
||||||
|
static int InternalPinDecoSize( const LIB_PIN &aPin )
|
||||||
|
{
|
||||||
|
return aPin.GetNameTextSize() / 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Utility for getting the size of the 'external' pin decorators (as a radius)
|
||||||
|
// i.e. the negation circle, the polarity 'slopes' and the nonlogic
|
||||||
|
// marker
|
||||||
|
static int ExternalPinDecoSize( const LIB_PIN &aPin )
|
||||||
|
{
|
||||||
|
return aPin.GetNumberTextSize() / 2;
|
||||||
|
}
|
||||||
|
|
||||||
LIB_PIN::LIB_PIN( LIB_COMPONENT* aParent ) :
|
LIB_PIN::LIB_PIN( LIB_COMPONENT* aParent ) :
|
||||||
LIB_ITEM( LIB_PIN_T, aParent )
|
LIB_ITEM( LIB_PIN_T, aParent )
|
||||||
{
|
{
|
||||||
|
@ -907,32 +924,52 @@ void LIB_PIN::DrawPinSymbol( EDA_DRAW_PANEL* aPanel,
|
||||||
|
|
||||||
if( m_shape & INVERT )
|
if( m_shape & INVERT )
|
||||||
{
|
{
|
||||||
GRCircle( clipbox, aDC, MapX1 * INVERT_PIN_RADIUS + x1,
|
const int radius = ExternalPinDecoSize( *this );
|
||||||
MapY1 * INVERT_PIN_RADIUS + y1,
|
GRCircle( clipbox, aDC, MapX1 * radius + x1,
|
||||||
INVERT_PIN_RADIUS, width, color );
|
MapY1 * radius + y1,
|
||||||
|
radius, width, color );
|
||||||
|
|
||||||
GRMoveTo( MapX1 * INVERT_PIN_RADIUS * 2 + x1,
|
GRMoveTo( MapX1 * radius * 2 + x1,
|
||||||
MapY1 * INVERT_PIN_RADIUS * 2 + y1 );
|
MapY1 * radius * 2 + y1 );
|
||||||
GRLineTo( clipbox, aDC, posX, posY, width, color );
|
GRLineTo( clipbox, aDC, posX, posY, width, color );
|
||||||
}
|
}
|
||||||
else if( m_shape & CLOCK_FALL ) /* an alternative for Inverted Clock */
|
else if( m_shape & CLOCK_FALL ) /* an alternative for Inverted Clock */
|
||||||
{
|
{
|
||||||
GRMoveTo( x1 + MapY1 * CLOCK_PIN_DIM,
|
const int clock_size = InternalPinDecoSize( *this );
|
||||||
y1 - MapX1 * CLOCK_PIN_DIM );
|
if( MapY1 == 0 ) /* MapX1 = +- 1 */
|
||||||
GRLineTo( clipbox,
|
{
|
||||||
aDC,
|
GRMoveTo( x1, y1 + clock_size );
|
||||||
x1 + MapX1 * CLOCK_PIN_DIM,
|
GRLineTo( clipbox,
|
||||||
y1 + MapY1 * CLOCK_PIN_DIM,
|
aDC,
|
||||||
width,
|
x1 + MapX1 * clock_size * 2,
|
||||||
color );
|
y1,
|
||||||
GRLineTo( clipbox,
|
width,
|
||||||
aDC,
|
color );
|
||||||
x1 - MapY1 * CLOCK_PIN_DIM,
|
GRLineTo( clipbox,
|
||||||
y1 + MapX1 * CLOCK_PIN_DIM,
|
aDC,
|
||||||
width,
|
x1,
|
||||||
color );
|
y1 - clock_size,
|
||||||
GRMoveTo( MapX1 * CLOCK_PIN_DIM + x1,
|
width,
|
||||||
MapY1 * CLOCK_PIN_DIM + y1 );
|
color );
|
||||||
|
}
|
||||||
|
else /* MapX1 = 0 */
|
||||||
|
{
|
||||||
|
GRMoveTo( x1 + clock_size, y1 );
|
||||||
|
GRLineTo( clipbox,
|
||||||
|
aDC,
|
||||||
|
x1,
|
||||||
|
y1 + MapY1 * clock_size * 2,
|
||||||
|
width,
|
||||||
|
color );
|
||||||
|
GRLineTo( clipbox,
|
||||||
|
aDC,
|
||||||
|
x1 - clock_size,
|
||||||
|
y1,
|
||||||
|
width,
|
||||||
|
color );
|
||||||
|
}
|
||||||
|
GRMoveTo( MapX1 * clock_size * 2 + x1,
|
||||||
|
MapY1 * clock_size * 2 + y1 );
|
||||||
GRLineTo( clipbox, aDC, posX, posY, width, color );
|
GRLineTo( clipbox, aDC, posX, posY, width, color );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -943,34 +980,35 @@ void LIB_PIN::DrawPinSymbol( EDA_DRAW_PANEL* aPanel,
|
||||||
|
|
||||||
if( m_shape & CLOCK )
|
if( m_shape & CLOCK )
|
||||||
{
|
{
|
||||||
|
const int clock_size = InternalPinDecoSize( *this );
|
||||||
if( MapY1 == 0 ) /* MapX1 = +- 1 */
|
if( MapY1 == 0 ) /* MapX1 = +- 1 */
|
||||||
{
|
{
|
||||||
GRMoveTo( x1, y1 + CLOCK_PIN_DIM );
|
GRMoveTo( x1, y1 + clock_size );
|
||||||
GRLineTo( clipbox,
|
GRLineTo( clipbox,
|
||||||
aDC,
|
aDC,
|
||||||
x1 - MapX1 * CLOCK_PIN_DIM,
|
x1 - MapX1 * clock_size * 2,
|
||||||
y1,
|
y1,
|
||||||
width,
|
width,
|
||||||
color );
|
color );
|
||||||
GRLineTo( clipbox,
|
GRLineTo( clipbox,
|
||||||
aDC,
|
aDC,
|
||||||
x1,
|
x1,
|
||||||
y1 - CLOCK_PIN_DIM,
|
y1 - clock_size,
|
||||||
width,
|
width,
|
||||||
color );
|
color );
|
||||||
}
|
}
|
||||||
else /* MapX1 = 0 */
|
else /* MapX1 = 0 */
|
||||||
{
|
{
|
||||||
GRMoveTo( x1 + CLOCK_PIN_DIM, y1 );
|
GRMoveTo( x1 + clock_size, y1 );
|
||||||
GRLineTo( clipbox,
|
GRLineTo( clipbox,
|
||||||
aDC,
|
aDC,
|
||||||
x1,
|
x1,
|
||||||
y1 - MapY1 * CLOCK_PIN_DIM,
|
y1 - MapY1 * clock_size * 2,
|
||||||
width,
|
width,
|
||||||
color );
|
color );
|
||||||
GRLineTo( clipbox,
|
GRLineTo( clipbox,
|
||||||
aDC,
|
aDC,
|
||||||
x1 - CLOCK_PIN_DIM,
|
x1 - clock_size,
|
||||||
y1,
|
y1,
|
||||||
width,
|
width,
|
||||||
color );
|
color );
|
||||||
|
@ -979,22 +1017,23 @@ void LIB_PIN::DrawPinSymbol( EDA_DRAW_PANEL* aPanel,
|
||||||
|
|
||||||
if( m_shape & LOWLEVEL_IN ) /* IEEE symbol "Active Low Input" */
|
if( m_shape & LOWLEVEL_IN ) /* IEEE symbol "Active Low Input" */
|
||||||
{
|
{
|
||||||
|
const int symbol_size = ExternalPinDecoSize( *this );
|
||||||
if( MapY1 == 0 ) /* MapX1 = +- 1 */
|
if( MapY1 == 0 ) /* MapX1 = +- 1 */
|
||||||
{
|
{
|
||||||
GRMoveTo( x1 + MapX1 * IEEE_SYMBOL_PIN_DIM * 2, y1 );
|
GRMoveTo( x1 + MapX1 * symbol_size * 2, y1 );
|
||||||
GRLineTo( clipbox,
|
GRLineTo( clipbox,
|
||||||
aDC,
|
aDC,
|
||||||
x1 + MapX1 * IEEE_SYMBOL_PIN_DIM * 2,
|
x1 + MapX1 * symbol_size * 2,
|
||||||
y1 - IEEE_SYMBOL_PIN_DIM,
|
y1 - symbol_size * 2,
|
||||||
width,
|
width,
|
||||||
color );
|
color );
|
||||||
GRLineTo( clipbox, aDC, x1, y1, width, color );
|
GRLineTo( clipbox, aDC, x1, y1, width, color );
|
||||||
}
|
}
|
||||||
else /* MapX1 = 0 */
|
else /* MapX1 = 0 */
|
||||||
{
|
{
|
||||||
GRMoveTo( x1, y1 + MapY1 * IEEE_SYMBOL_PIN_DIM * 2 );
|
GRMoveTo( x1, y1 + MapY1 * symbol_size * 2 );
|
||||||
GRLineTo( clipbox, aDC, x1 - IEEE_SYMBOL_PIN_DIM,
|
GRLineTo( clipbox, aDC, x1 - symbol_size * 2,
|
||||||
y1 + MapY1 * IEEE_SYMBOL_PIN_DIM * 2, width, color );
|
y1 + MapY1 * symbol_size * 2, width, color );
|
||||||
GRLineTo( clipbox, aDC, x1, y1, width, color );
|
GRLineTo( clipbox, aDC, x1, y1, width, color );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1002,43 +1041,45 @@ void LIB_PIN::DrawPinSymbol( EDA_DRAW_PANEL* aPanel,
|
||||||
|
|
||||||
if( m_shape & LOWLEVEL_OUT ) /* IEEE symbol "Active Low Output" */
|
if( m_shape & LOWLEVEL_OUT ) /* IEEE symbol "Active Low Output" */
|
||||||
{
|
{
|
||||||
|
const int symbol_size = ExternalPinDecoSize( *this );
|
||||||
if( MapY1 == 0 ) /* MapX1 = +- 1 */
|
if( MapY1 == 0 ) /* MapX1 = +- 1 */
|
||||||
{
|
{
|
||||||
GRMoveTo( x1, y1 - IEEE_SYMBOL_PIN_DIM );
|
GRMoveTo( x1, y1 - symbol_size * 2 );
|
||||||
GRLineTo( clipbox,
|
GRLineTo( clipbox,
|
||||||
aDC,
|
aDC,
|
||||||
x1 + MapX1 * IEEE_SYMBOL_PIN_DIM * 2,
|
x1 + MapX1 * symbol_size * 2,
|
||||||
y1,
|
y1,
|
||||||
width,
|
width,
|
||||||
color );
|
color );
|
||||||
}
|
}
|
||||||
else /* MapX1 = 0 */
|
else /* MapX1 = 0 */
|
||||||
{
|
{
|
||||||
GRMoveTo( x1 - IEEE_SYMBOL_PIN_DIM, y1 );
|
GRMoveTo( x1 - symbol_size * 2, y1 );
|
||||||
GRLineTo( clipbox,
|
GRLineTo( clipbox,
|
||||||
aDC,
|
aDC,
|
||||||
x1,
|
x1,
|
||||||
y1 + MapY1 * IEEE_SYMBOL_PIN_DIM * 2,
|
y1 + MapY1 * symbol_size * 2,
|
||||||
width,
|
width,
|
||||||
color );
|
color );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if( m_shape & NONLOGIC ) /* NonLogic pin symbol */
|
else if( m_shape & NONLOGIC ) /* NonLogic pin symbol */
|
||||||
{
|
{
|
||||||
GRMoveTo( x1 - (MapX1 + MapY1) * NONLOGIC_PIN_DIM,
|
const int symbol_size = ExternalPinDecoSize( *this );
|
||||||
y1 - (MapY1 - MapX1) * NONLOGIC_PIN_DIM );
|
GRMoveTo( x1 - (MapX1 + MapY1) * symbol_size,
|
||||||
|
y1 - (MapY1 - MapX1) * symbol_size );
|
||||||
GRLineTo( clipbox,
|
GRLineTo( clipbox,
|
||||||
aDC,
|
aDC,
|
||||||
x1 + (MapX1 + MapY1) * NONLOGIC_PIN_DIM,
|
x1 + (MapX1 + MapY1) * symbol_size,
|
||||||
y1 + (MapY1 - MapX1) * NONLOGIC_PIN_DIM,
|
y1 + (MapY1 - MapX1) * symbol_size,
|
||||||
width,
|
width,
|
||||||
color );
|
color );
|
||||||
GRMoveTo( x1 - (MapX1 - MapY1) * NONLOGIC_PIN_DIM,
|
GRMoveTo( x1 - (MapX1 - MapY1) * symbol_size,
|
||||||
y1 - (MapY1 + MapX1) * NONLOGIC_PIN_DIM );
|
y1 - (MapY1 + MapX1) * symbol_size );
|
||||||
GRLineTo( clipbox,
|
GRLineTo( clipbox,
|
||||||
aDC,
|
aDC,
|
||||||
x1 + (MapX1 - MapY1) * NONLOGIC_PIN_DIM,
|
x1 + (MapX1 - MapY1) * symbol_size,
|
||||||
y1 + (MapY1 + MapX1) * NONLOGIC_PIN_DIM,
|
y1 + (MapY1 + MapX1) * symbol_size,
|
||||||
width,
|
width,
|
||||||
color );
|
color );
|
||||||
}
|
}
|
||||||
|
@ -1310,14 +1351,35 @@ void LIB_PIN::PlotSymbol( PLOTTER* aPlotter, const wxPoint& aPosition, int aOrie
|
||||||
|
|
||||||
if( m_shape & INVERT )
|
if( m_shape & INVERT )
|
||||||
{
|
{
|
||||||
aPlotter->Circle( wxPoint( MapX1 * INVERT_PIN_RADIUS + x1,
|
const int radius = ExternalPinDecoSize( *this );
|
||||||
MapY1 * INVERT_PIN_RADIUS + y1 ),
|
aPlotter->Circle( wxPoint( MapX1 * radius + x1,
|
||||||
INVERT_PIN_RADIUS * 2, // diameter
|
MapY1 * radius + y1 ),
|
||||||
|
radius * 2, // diameter
|
||||||
NO_FILL, // fill option
|
NO_FILL, // fill option
|
||||||
GetPenSize() ); // width
|
GetPenSize() ); // width
|
||||||
|
|
||||||
aPlotter->MoveTo( wxPoint( MapX1 * INVERT_PIN_RADIUS * 2 + x1,
|
aPlotter->MoveTo( wxPoint( MapX1 * radius * 2 + x1,
|
||||||
MapY1 * INVERT_PIN_RADIUS * 2 + y1 ) );
|
MapY1 * radius * 2 + y1 ) );
|
||||||
|
aPlotter->FinishTo( aPosition );
|
||||||
|
}
|
||||||
|
else if( m_shape & CLOCK_FALL )
|
||||||
|
{
|
||||||
|
const int clock_size = InternalPinDecoSize( *this );
|
||||||
|
if( MapY1 == 0 ) /* MapX1 = +- 1 */
|
||||||
|
{
|
||||||
|
aPlotter->MoveTo( wxPoint( x1, y1 + clock_size ) );
|
||||||
|
aPlotter->LineTo( wxPoint( x1 + MapX1 * clock_size * 2, y1 ) );
|
||||||
|
aPlotter->FinishTo( wxPoint( x1, y1 - clock_size ) );
|
||||||
|
}
|
||||||
|
else /* MapX1 = 0 */
|
||||||
|
{
|
||||||
|
aPlotter->MoveTo( wxPoint( x1 + clock_size, y1 ) );
|
||||||
|
aPlotter->LineTo( wxPoint( x1, y1 + MapY1 * clock_size * 2 ) );
|
||||||
|
aPlotter->FinishTo( wxPoint( x1 - clock_size, y1 ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
aPlotter->MoveTo( wxPoint( MapX1 * clock_size * 2 + x1,
|
||||||
|
MapY1 * clock_size * 2 + y1 ) );
|
||||||
aPlotter->FinishTo( aPosition );
|
aPlotter->FinishTo( aPosition );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -1328,34 +1390,36 @@ void LIB_PIN::PlotSymbol( PLOTTER* aPlotter, const wxPoint& aPosition, int aOrie
|
||||||
|
|
||||||
if( m_shape & CLOCK )
|
if( m_shape & CLOCK )
|
||||||
{
|
{
|
||||||
|
const int clock_size = InternalPinDecoSize( *this );
|
||||||
if( MapY1 == 0 ) /* MapX1 = +- 1 */
|
if( MapY1 == 0 ) /* MapX1 = +- 1 */
|
||||||
{
|
{
|
||||||
aPlotter->MoveTo( wxPoint( x1, y1 + CLOCK_PIN_DIM ) );
|
aPlotter->MoveTo( wxPoint( x1, y1 + clock_size ) );
|
||||||
aPlotter->LineTo( wxPoint( x1 - MapX1 * CLOCK_PIN_DIM, y1 ) );
|
aPlotter->LineTo( wxPoint( x1 - MapX1 * clock_size * 2, y1 ) );
|
||||||
aPlotter->FinishTo( wxPoint( x1, y1 - CLOCK_PIN_DIM ) );
|
aPlotter->FinishTo( wxPoint( x1, y1 - clock_size ) );
|
||||||
}
|
}
|
||||||
else /* MapX1 = 0 */
|
else /* MapX1 = 0 */
|
||||||
{
|
{
|
||||||
aPlotter->MoveTo( wxPoint( x1 + CLOCK_PIN_DIM, y1 ) );
|
aPlotter->MoveTo( wxPoint( x1 + clock_size, y1 ) );
|
||||||
aPlotter->LineTo( wxPoint( x1, y1 - MapY1 * CLOCK_PIN_DIM ) );
|
aPlotter->LineTo( wxPoint( x1, y1 - MapY1 * clock_size * 2 ) );
|
||||||
aPlotter->FinishTo( wxPoint( x1 - CLOCK_PIN_DIM, y1 ) );
|
aPlotter->FinishTo( wxPoint( x1 - clock_size, y1 ) );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if( m_shape & LOWLEVEL_IN ) /* IEEE symbol "Active Low Input" */
|
if( m_shape & LOWLEVEL_IN ) /* IEEE symbol "Active Low Input" */
|
||||||
{
|
{
|
||||||
|
const int symbol_size = ExternalPinDecoSize( *this );
|
||||||
if( MapY1 == 0 ) /* MapX1 = +- 1 */
|
if( MapY1 == 0 ) /* MapX1 = +- 1 */
|
||||||
{
|
{
|
||||||
aPlotter->MoveTo( wxPoint( x1 + MapX1 * IEEE_SYMBOL_PIN_DIM * 2, y1 ) );
|
aPlotter->MoveTo( wxPoint( x1 + MapX1 * symbol_size * 2, y1 ) );
|
||||||
aPlotter->LineTo( wxPoint( x1 + MapX1 * IEEE_SYMBOL_PIN_DIM * 2,
|
aPlotter->LineTo( wxPoint( x1 + MapX1 * symbol_size * 2,
|
||||||
y1 - IEEE_SYMBOL_PIN_DIM ) );
|
y1 - symbol_size * 2 ) );
|
||||||
aPlotter->FinishTo( wxPoint( x1, y1 ) );
|
aPlotter->FinishTo( wxPoint( x1, y1 ) );
|
||||||
}
|
}
|
||||||
else /* MapX1 = 0 */
|
else /* MapX1 = 0 */
|
||||||
{
|
{
|
||||||
aPlotter->MoveTo( wxPoint( x1, y1 + MapY1 * IEEE_SYMBOL_PIN_DIM * 2 ) );
|
aPlotter->MoveTo( wxPoint( x1, y1 + MapY1 * symbol_size * 2 ) );
|
||||||
aPlotter->LineTo( wxPoint( x1 - IEEE_SYMBOL_PIN_DIM,
|
aPlotter->LineTo( wxPoint( x1 - symbol_size * 2,
|
||||||
y1 + MapY1 * IEEE_SYMBOL_PIN_DIM * 2 ) );
|
y1 + MapY1 * symbol_size * 2 ) );
|
||||||
aPlotter->FinishTo( wxPoint( x1, y1 ) );
|
aPlotter->FinishTo( wxPoint( x1, y1 ) );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1363,17 +1427,39 @@ void LIB_PIN::PlotSymbol( PLOTTER* aPlotter, const wxPoint& aPosition, int aOrie
|
||||||
|
|
||||||
if( m_shape & LOWLEVEL_OUT ) /* IEEE symbol "Active Low Output" */
|
if( m_shape & LOWLEVEL_OUT ) /* IEEE symbol "Active Low Output" */
|
||||||
{
|
{
|
||||||
|
const int symbol_size = ExternalPinDecoSize( *this );
|
||||||
if( MapY1 == 0 ) /* MapX1 = +- 1 */
|
if( MapY1 == 0 ) /* MapX1 = +- 1 */
|
||||||
{
|
{
|
||||||
aPlotter->MoveTo( wxPoint( x1, y1 - IEEE_SYMBOL_PIN_DIM ) );
|
aPlotter->MoveTo( wxPoint( x1, y1 - symbol_size * 2 ) );
|
||||||
aPlotter->FinishTo( wxPoint( x1 + MapX1 * IEEE_SYMBOL_PIN_DIM * 2, y1 ) );
|
aPlotter->FinishTo( wxPoint( x1 + MapX1 * symbol_size * 2, y1 ) );
|
||||||
}
|
}
|
||||||
else /* MapX1 = 0 */
|
else /* MapX1 = 0 */
|
||||||
{
|
{
|
||||||
aPlotter->MoveTo( wxPoint( x1 - IEEE_SYMBOL_PIN_DIM, y1 ) );
|
aPlotter->MoveTo( wxPoint( x1 - symbol_size * 2, y1 ) );
|
||||||
aPlotter->FinishTo( wxPoint( x1, y1 + MapY1 * IEEE_SYMBOL_PIN_DIM * 2 ) );
|
aPlotter->FinishTo( wxPoint( x1, y1 + MapY1 * symbol_size * 2 ) );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else if( m_shape & NONLOGIC ) /* NonLogic pin symbol */
|
||||||
|
{
|
||||||
|
const int symbol_size = ExternalPinDecoSize( *this );
|
||||||
|
aPlotter->MoveTo( wxPoint( x1 - (MapX1 + MapY1) * symbol_size,
|
||||||
|
y1 - (MapY1 - MapX1) * symbol_size ) );
|
||||||
|
aPlotter->FinishTo( wxPoint( x1 + (MapX1 + MapY1) * symbol_size,
|
||||||
|
y1 + (MapY1 - MapX1) * symbol_size ) );
|
||||||
|
aPlotter->MoveTo( wxPoint( x1 - (MapX1 - MapY1) * symbol_size,
|
||||||
|
y1 - (MapY1 + MapX1) * symbol_size ) );
|
||||||
|
aPlotter->FinishTo( wxPoint( x1 + (MapX1 - MapY1) * symbol_size,
|
||||||
|
y1 + (MapY1 + MapX1) * symbol_size ) );
|
||||||
|
}
|
||||||
|
if( m_type == PIN_NC ) // Draw a N.C. symbol
|
||||||
|
{
|
||||||
|
const int ex1 = aPosition.x;
|
||||||
|
const int ey1 = aPosition.y;
|
||||||
|
aPlotter->MoveTo( wxPoint( ex1 - NCSYMB_PIN_DIM, ey1 - NCSYMB_PIN_DIM ) );
|
||||||
|
aPlotter->FinishTo( wxPoint( ex1 + NCSYMB_PIN_DIM, ey1 + NCSYMB_PIN_DIM ) );
|
||||||
|
aPlotter->MoveTo( wxPoint( ex1 + NCSYMB_PIN_DIM, ey1 - NCSYMB_PIN_DIM ) );
|
||||||
|
aPlotter->FinishTo( wxPoint( ex1 - NCSYMB_PIN_DIM, ey1 + NCSYMB_PIN_DIM ) );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1897,7 +1983,7 @@ const EDA_RECT LIB_PIN::GetBoundingBox() const
|
||||||
int numberTextHeight = showNum ? KiROUND( m_numTextSize * 1.1 ) : 0;
|
int numberTextHeight = showNum ? KiROUND( m_numTextSize * 1.1 ) : 0;
|
||||||
|
|
||||||
if( m_shape & INVERT )
|
if( m_shape & INVERT )
|
||||||
minsizeV = std::max( TARGET_PIN_RADIUS, INVERT_PIN_RADIUS );
|
minsizeV = std::max( TARGET_PIN_RADIUS, ExternalPinDecoSize( *this ) );
|
||||||
|
|
||||||
// calculate top left corner position
|
// calculate top left corner position
|
||||||
// for the default pin orientation (PIN_RIGHT)
|
// for the default pin orientation (PIN_RIGHT)
|
||||||
|
|
|
@ -34,12 +34,6 @@
|
||||||
|
|
||||||
#define TARGET_PIN_RADIUS 12 // Circle diameter drawn at the active end of pins
|
#define TARGET_PIN_RADIUS 12 // Circle diameter drawn at the active end of pins
|
||||||
|
|
||||||
// pins: special symbols sizes
|
|
||||||
#define INVERT_PIN_RADIUS 30 // Radius of inverted pin circle.
|
|
||||||
#define CLOCK_PIN_DIM 40 // Dim of clock pin symbol.
|
|
||||||
#define IEEE_SYMBOL_PIN_DIM 40 // Dim of special pin symbol.
|
|
||||||
#define NONLOGIC_PIN_DIM 30 // Dim of nonlogic pin symbol (X).
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The component library pin object electrical types used in ERC tests.
|
* The component library pin object electrical types used in ERC tests.
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Reference in New Issue