7
mirror of https://gitlab.com/kicad/code/kicad.git synced 2025-04-19 18:31:40 +00:00

Pull some name changes back from 7.0 to ease merging.

This commit is contained in:
Jeff Young 2021-07-21 19:31:25 +01:00
parent 396213fa30
commit 0fb864d596
48 changed files with 526 additions and 531 deletions

View File

@ -631,7 +631,7 @@ void BOARD_ADAPTER::addShapeWithClearance( const PCB_SHAPE* aShape,
switch( aShape->GetShape() )
{
case PCB_SHAPE_TYPE::CIRCLE:
case SHAPE_T::CIRCLE:
{
const SFVEC2F center3DU( aShape->GetCenter().x * m_biuTo3Dunits,
-aShape->GetCenter().y * m_biuTo3Dunits );
@ -649,7 +649,7 @@ void BOARD_ADAPTER::addShapeWithClearance( const PCB_SHAPE* aShape,
}
break;
case PCB_SHAPE_TYPE::RECT:
case SHAPE_T::RECT:
if( aShape->IsFilled() )
{
SHAPE_POLY_SET polyList;
@ -681,7 +681,7 @@ void BOARD_ADAPTER::addShapeWithClearance( const PCB_SHAPE* aShape,
}
break;
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
{
unsigned int segCount = GetCircleSegmentCount( aShape->GetBoundingBox().GetSizeMax() );
@ -690,7 +690,7 @@ void BOARD_ADAPTER::addShapeWithClearance( const PCB_SHAPE* aShape,
}
break;
case PCB_SHAPE_TYPE::SEGMENT:
case SHAPE_T::SEGMENT:
{
const SFVEC2F start3DU( aShape->GetStart().x * m_biuTo3Dunits,
-aShape->GetStart().y * m_biuTo3Dunits );
@ -711,8 +711,8 @@ void BOARD_ADAPTER::addShapeWithClearance( const PCB_SHAPE* aShape,
}
break;
case PCB_SHAPE_TYPE::CURVE:
case PCB_SHAPE_TYPE::POLYGON:
case SHAPE_T::BEZIER:
case SHAPE_T::POLY:
{
SHAPE_POLY_SET polyList;
@ -730,7 +730,7 @@ void BOARD_ADAPTER::addShapeWithClearance( const PCB_SHAPE* aShape,
default:
wxFAIL_MSG( "BOARD_ADAPTER::addShapeWithClearance no implementation for "
+ PCB_SHAPE_TYPE_T_asString( aShape->GetShape() ) );
+ SHAPE_T_asString( aShape->GetShape()) );
break;
}
}

View File

@ -43,28 +43,28 @@ class PCB_GROUP;
/**
* The set of shapes for PCB graphics and tracks and footprint graphics in the .m_Shape member
*/
enum class PCB_SHAPE_TYPE : int
enum class SHAPE_T : int
{
SEGMENT = 0, ///< usual segment : line with rounded ends
RECT, ///< segment with non rounded ends
ARC, ///< Arcs (with rounded ends)
CIRCLE, ///< ring
POLYGON, ///< polygon (not yet used for tracks, but could be in microwave apps)
CURVE, ///< Bezier Curve
POLY, ///< polygon (not yet used for tracks, but could be in microwave apps)
BEZIER, ///< Bezier Curve
LAST ///< last value for this list
};
static inline wxString PCB_SHAPE_TYPE_T_asString( PCB_SHAPE_TYPE a )
static inline wxString SHAPE_T_asString( SHAPE_T a )
{
switch( a )
{
case PCB_SHAPE_TYPE::SEGMENT: return "S_SEGMENT";
case PCB_SHAPE_TYPE::RECT: return "S_RECT";
case PCB_SHAPE_TYPE::ARC: return "S_ARC";
case PCB_SHAPE_TYPE::CIRCLE: return "S_CIRCLE";
case PCB_SHAPE_TYPE::POLYGON: return "S_POLYGON";
case PCB_SHAPE_TYPE::CURVE: return "S_CURVE";
case PCB_SHAPE_TYPE::LAST: return "S_LAST"; // Synthetic value, but if we come across it we're
case SHAPE_T::SEGMENT: return "S_SEGMENT";
case SHAPE_T::RECT: return "S_RECT";
case SHAPE_T::ARC: return "S_ARC";
case SHAPE_T::CIRCLE: return "S_CIRCLE";
case SHAPE_T::POLY: return "S_POLYGON";
case SHAPE_T::BEZIER: return "S_CURVE";
case SHAPE_T::LAST: return "S_LAST"; // Synthetic value, but if we come across it we're
// going to want to know.
}
@ -265,7 +265,7 @@ public:
/**
* Convert the enum #PCB_SHAPE_TYPE_T integer value to a wxString.
*/
static wxString ShowShape( PCB_SHAPE_TYPE aShape );
static wxString ShowShape( SHAPE_T aShape );
/**
* Move this object.

View File

@ -777,15 +777,15 @@ void AR_MATRIX::TraceSegmentPcb( PCB_SHAPE* pt_segm, int color, int marge,
switch( pt_segm->GetShape() )
{
case PCB_SHAPE_TYPE::CIRCLE:
case SHAPE_T::CIRCLE:
traceCircle( ux0, uy0, ux1, uy1, half_width, layer, color, op_logic );
break;
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
traceArc( ux0, uy0, ux1, uy1, pt_segm->GetAngle(), half_width, layer, color, op_logic );
break;
case PCB_SHAPE_TYPE::SEGMENT:
case SHAPE_T::SEGMENT:
drawSegmentQcq( ux0, uy0, ux1, uy1, half_width, layer, color, op_logic );
break;

View File

@ -32,17 +32,17 @@
#include <wx/msgdlg.h>
wxString BOARD_ITEM::ShowShape( PCB_SHAPE_TYPE aShape )
wxString BOARD_ITEM::ShowShape( SHAPE_T aShape )
{
switch( aShape )
{
case PCB_SHAPE_TYPE::SEGMENT: return _( "Line" );
case PCB_SHAPE_TYPE::RECT: return _( "Rect" );
case PCB_SHAPE_TYPE::ARC: return _( "Arc" );
case PCB_SHAPE_TYPE::CIRCLE: return _( "Circle" );
case PCB_SHAPE_TYPE::CURVE: return _( "Bezier Curve" );
case PCB_SHAPE_TYPE::POLYGON: return _( "Polygon" );
default: return wxT( "??" );
case SHAPE_T::SEGMENT: return _( "Line" );
case SHAPE_T::RECT: return _( "Rect" );
case SHAPE_T::ARC: return _( "Arc" );
case SHAPE_T::CIRCLE: return _( "Circle" );
case SHAPE_T::BEZIER: return _( "Bezier Curve" );
case SHAPE_T::POLY: return _( "Polygon" );
default: return wxT( "??" );
}
}

View File

@ -423,7 +423,7 @@ void PCB_SHAPE::TransformShapeWithClearanceToPolygon( SHAPE_POLY_SET& aCornerBuf
switch( m_shape )
{
case PCB_SHAPE_TYPE::CIRCLE:
case SHAPE_T::CIRCLE:
if( IsFilled() )
{
TransformCircleToPolygon( aCornerBuffer, GetCenter(), GetRadius() + width / 2, aError,
@ -437,7 +437,7 @@ void PCB_SHAPE::TransformShapeWithClearanceToPolygon( SHAPE_POLY_SET& aCornerBuf
break;
case PCB_SHAPE_TYPE::RECT:
case SHAPE_T::RECT:
{
std::vector<wxPoint> pts = GetRectCorners();
@ -461,16 +461,16 @@ void PCB_SHAPE::TransformShapeWithClearanceToPolygon( SHAPE_POLY_SET& aCornerBuf
break;
}
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
TransformArcToPolygon( aCornerBuffer, GetArcStart(), GetArcMid(), GetArcEnd(), width,
aError, aErrorLoc );
break;
case PCB_SHAPE_TYPE::SEGMENT:
case SHAPE_T::SEGMENT:
TransformOvalToPolygon( aCornerBuffer, m_start, m_end, width, aError, aErrorLoc );
break;
case PCB_SHAPE_TYPE::POLYGON:
case SHAPE_T::POLY:
{
if( !IsPolyShapeValid() )
break;
@ -517,7 +517,7 @@ void PCB_SHAPE::TransformShapeWithClearanceToPolygon( SHAPE_POLY_SET& aCornerBuf
break;
}
case PCB_SHAPE_TYPE::CURVE: // Bezier curve
case SHAPE_T::BEZIER: // Bezier curve
{
std::vector<wxPoint> ctrlPoints = { m_start, m_bezierC1, m_bezierC2, m_end };
BEZIER_POLY converter( ctrlPoints );
@ -535,7 +535,7 @@ void PCB_SHAPE::TransformShapeWithClearanceToPolygon( SHAPE_POLY_SET& aCornerBuf
default:
wxFAIL_MSG( "PCB_SHAPE::TransformShapeWithClearanceToPolygon no implementation for "
+ PCB_SHAPE_TYPE_T_asString( m_shape ) );
+ SHAPE_T_asString( m_shape ) );
break;
}
}

View File

@ -97,7 +97,7 @@ static PCB_SHAPE* findNext( PCB_SHAPE* aShape, const wxPoint& aPoint,
switch( graphic->GetShape() )
{
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
if( aPoint == graphic->GetArcStart() || aPoint == graphic->GetArcEnd() )
return graphic;
@ -123,7 +123,7 @@ static PCB_SHAPE* findNext( PCB_SHAPE* aShape, const wxPoint& aPoint,
switch( graphic->GetShape() )
{
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
d_sq = ( pt - graphic->GetArcStart() ).SquaredEuclideanNorm();
if( d_sq < closest_dist_sq )
@ -202,8 +202,8 @@ bool ConvertOutlineToPolygon( std::vector<PCB_SHAPE*>& aSegList, SHAPE_POLY_SET&
switch( graphic->GetShape() )
{
case PCB_SHAPE_TYPE::RECT:
case PCB_SHAPE_TYPE::SEGMENT:
case SHAPE_T::RECT:
case SHAPE_T::SEGMENT:
{
if( graphic->GetStart().x < xmin.x )
{
@ -219,7 +219,7 @@ bool ConvertOutlineToPolygon( std::vector<PCB_SHAPE*>& aSegList, SHAPE_POLY_SET&
}
break;
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
{
wxPoint pstart = graphic->GetArcStart();
wxPoint center = graphic->GetCenter();
@ -245,7 +245,7 @@ bool ConvertOutlineToPolygon( std::vector<PCB_SHAPE*>& aSegList, SHAPE_POLY_SET&
}
break;
case PCB_SHAPE_TYPE::CIRCLE:
case SHAPE_T::CIRCLE:
{
wxPoint pt = graphic->GetCenter();
@ -261,7 +261,7 @@ bool ConvertOutlineToPolygon( std::vector<PCB_SHAPE*>& aSegList, SHAPE_POLY_SET&
}
break;
case PCB_SHAPE_TYPE::CURVE:
case SHAPE_T::BEZIER:
{
graphic->RebuildBezierToSegmentsPointsList( graphic->GetWidth() );
@ -276,7 +276,7 @@ bool ConvertOutlineToPolygon( std::vector<PCB_SHAPE*>& aSegList, SHAPE_POLY_SET&
}
break;
case PCB_SHAPE_TYPE::POLYGON:
case SHAPE_T::POLY:
{
const SHAPE_POLY_SET poly = graphic->GetPolyShape();
double orientation = 0.0;
@ -331,13 +331,13 @@ bool ConvertOutlineToPolygon( std::vector<PCB_SHAPE*>& aSegList, SHAPE_POLY_SET&
startCandidates.erase( graphic );
// Output the outline perimeter as polygon.
if( graphic->GetShape() == PCB_SHAPE_TYPE::CIRCLE )
if( graphic->GetShape() == SHAPE_T::CIRCLE )
{
TransformCircleToPolygon( aPolygons, graphic->GetCenter(), graphic->GetRadius(),
ARC_LOW_DEF, ERROR_INSIDE );
polygonComplete = true;
}
else if( graphic->GetShape() == PCB_SHAPE_TYPE::RECT )
else if( graphic->GetShape() == SHAPE_T::RECT )
{
std::vector<wxPoint> pts = graphic->GetRectCorners();
@ -353,7 +353,7 @@ bool ConvertOutlineToPolygon( std::vector<PCB_SHAPE*>& aSegList, SHAPE_POLY_SET&
polygonComplete = true;
}
else if( graphic->GetShape() == PCB_SHAPE_TYPE::POLYGON )
else if( graphic->GetShape() == SHAPE_T::POLY )
{
double orientation = 0.0;
VECTOR2I offset = VECTOR2I( 0, 0 );
@ -389,8 +389,8 @@ bool ConvertOutlineToPolygon( std::vector<PCB_SHAPE*>& aSegList, SHAPE_POLY_SET&
// Polygon start point. Arbitrarily chosen end of the
// segment and build the poly from here.
wxPoint startPt = graphic->GetShape() == PCB_SHAPE_TYPE::ARC ? graphic->GetArcEnd()
: graphic->GetEnd();
wxPoint startPt = graphic->GetShape() == SHAPE_T::ARC ? graphic->GetArcEnd()
: graphic->GetEnd();
prevPt = startPt;
aPolygons.NewOutline();
@ -403,8 +403,8 @@ bool ConvertOutlineToPolygon( std::vector<PCB_SHAPE*>& aSegList, SHAPE_POLY_SET&
{
switch( graphic->GetShape() )
{
case PCB_SHAPE_TYPE::RECT:
case PCB_SHAPE_TYPE::CIRCLE:
case SHAPE_T::RECT:
case SHAPE_T::CIRCLE:
{
// As a non-first item, closed shapes can't be anything but self-intersecting
@ -420,7 +420,7 @@ bool ConvertOutlineToPolygon( std::vector<PCB_SHAPE*>& aSegList, SHAPE_POLY_SET&
}
break;
case PCB_SHAPE_TYPE::SEGMENT:
case SHAPE_T::SEGMENT:
{
wxPoint nextPt;
@ -438,7 +438,7 @@ bool ConvertOutlineToPolygon( std::vector<PCB_SHAPE*>& aSegList, SHAPE_POLY_SET&
}
break;
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
{
// We do not support arcs in polygons, so approximate an arc with a series of
// short lines and put those line segments into the !same! PATH.
@ -477,7 +477,7 @@ bool ConvertOutlineToPolygon( std::vector<PCB_SHAPE*>& aSegList, SHAPE_POLY_SET&
}
break;
case PCB_SHAPE_TYPE::CURVE:
case SHAPE_T::BEZIER:
{
// We do not support Bezier curves in polygons, so approximate with a series
// of short lines and put those line segments into the !same! PATH.
@ -593,7 +593,7 @@ bool ConvertOutlineToPolygon( std::vector<PCB_SHAPE*>& aSegList, SHAPE_POLY_SET&
// Both circles and polygons on the edge cuts layer are closed items that
// do not connect to other elements, so we process them independently
if( graphic->GetShape() == PCB_SHAPE_TYPE::POLYGON )
if( graphic->GetShape() == SHAPE_T::POLY )
{
double orientation = 0.0;
VECTOR2I offset = VECTOR2I( 0, 0 );
@ -620,7 +620,7 @@ bool ConvertOutlineToPolygon( std::vector<PCB_SHAPE*>& aSegList, SHAPE_POLY_SET&
prevPt = (wxPoint) pt;
}
}
else if( graphic->GetShape() == PCB_SHAPE_TYPE::CIRCLE )
else if( graphic->GetShape() == SHAPE_T::CIRCLE )
{
// make a circle by segments;
wxPoint center = graphic->GetCenter();
@ -647,7 +647,7 @@ bool ConvertOutlineToPolygon( std::vector<PCB_SHAPE*>& aSegList, SHAPE_POLY_SET&
prevPt = nextPt;
}
}
else if( graphic->GetShape() == PCB_SHAPE_TYPE::RECT )
else if( graphic->GetShape() == SHAPE_T::RECT )
{
std::vector<wxPoint> pts = graphic->GetRectCorners();
@ -677,7 +677,7 @@ bool ConvertOutlineToPolygon( std::vector<PCB_SHAPE*>& aSegList, SHAPE_POLY_SET&
{
switch( graphic->GetShape() )
{
case PCB_SHAPE_TYPE::SEGMENT:
case SHAPE_T::SEGMENT:
{
wxPoint nextPt;
@ -696,7 +696,7 @@ bool ConvertOutlineToPolygon( std::vector<PCB_SHAPE*>& aSegList, SHAPE_POLY_SET&
}
break;
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
// We do not support arcs in polygons, so approximate an arc with a series of
// short lines and put those line segments into the !same! PATH.
{
@ -735,7 +735,7 @@ bool ConvertOutlineToPolygon( std::vector<PCB_SHAPE*>& aSegList, SHAPE_POLY_SET&
}
break;
case PCB_SHAPE_TYPE::CURVE:
case SHAPE_T::BEZIER:
// We do not support Bezier curves in polygons, so approximate with a series
// of short lines and put those line segments into the !same! PATH.
{

View File

@ -157,11 +157,11 @@ bool DIALOG_GRAPHIC_ITEM_PROPERTIES::TransferDataToWindow()
return false;
// Only an arc has a angle parameter. So do not show this parameter for other shapes
if( m_item->GetShape() != PCB_SHAPE_TYPE::ARC )
if( m_item->GetShape() != SHAPE_T::ARC )
m_angle.Show( false );
// Only a Bezeier curve has control points. So do not show these parameters for other shapes
if( m_item->GetShape() != PCB_SHAPE_TYPE::CURVE )
if( m_item->GetShape() != SHAPE_T::BEZIER )
{
m_bezierCtrlPt1Label->Show( false );
m_bezierCtrl1X.Show( false );
@ -174,7 +174,7 @@ bool DIALOG_GRAPHIC_ITEM_PROPERTIES::TransferDataToWindow()
// Change texts according to the segment shape:
switch( m_item->GetShape() )
{
case PCB_SHAPE_TYPE::CIRCLE:
case SHAPE_T::CIRCLE:
SetTitle( _( "Circle Properties" ) );
m_startPointLabel->SetLabel( _( "Center" ) );
@ -187,25 +187,25 @@ bool DIALOG_GRAPHIC_ITEM_PROPERTIES::TransferDataToWindow()
m_filledCtrl->Show( true );
break;
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
SetTitle( _( "Arc Properties" ) );
m_AngleValue = m_item->GetAngle() / 10.0;
m_filledCtrl->Show( false );
break;
case PCB_SHAPE_TYPE::POLYGON:
case SHAPE_T::POLY:
SetTitle( _( "Polygon Properties" ) );
m_sizerLeft->Show( false );
m_filledCtrl->Show( true );
break;
case PCB_SHAPE_TYPE::RECT:
case SHAPE_T::RECT:
SetTitle( _( "Rectangle Properties" ) );
m_filledCtrl->Show( true );
break;
case PCB_SHAPE_TYPE::SEGMENT:
case SHAPE_T::SEGMENT:
SetTitle( _( "Line Segment Properties" ) );
if( m_item->GetStart().x == m_item->GetEnd().x )
@ -220,7 +220,7 @@ bool DIALOG_GRAPHIC_ITEM_PROPERTIES::TransferDataToWindow()
break;
}
if( m_item->GetShape() == PCB_SHAPE_TYPE::ARC )
if( m_item->GetShape() == SHAPE_T::ARC )
{
m_startX.SetValue( m_item->GetArcStart().x );
m_startY.SetValue( m_item->GetArcStart().y );
@ -236,11 +236,11 @@ bool DIALOG_GRAPHIC_ITEM_PROPERTIES::TransferDataToWindow()
m_startY.SetValue( m_item->GetStart().y );
}
if( m_item->GetShape() == PCB_SHAPE_TYPE::CIRCLE )
if( m_item->GetShape() == SHAPE_T::CIRCLE )
{
m_endX.SetValue( m_item->GetRadius() );
}
else if( m_item->GetShape() == PCB_SHAPE_TYPE::ARC )
else if( m_item->GetShape() == SHAPE_T::ARC )
{
m_endX.SetValue( m_item->GetArcEnd().x );
m_endY.SetValue( m_item->GetArcEnd().y );
@ -292,7 +292,7 @@ bool DIALOG_GRAPHIC_ITEM_PROPERTIES::TransferDataFromWindow()
BOARD_COMMIT commit( m_parent );
commit.Modify( m_item );
if( m_item->GetShape() == PCB_SHAPE_TYPE::ARC )
if( m_item->GetShape() == SHAPE_T::ARC )
{
m_item->SetArcStart( wxPoint( m_startX.GetValue(), m_startY.GetValue() ) );
}
@ -307,11 +307,11 @@ bool DIALOG_GRAPHIC_ITEM_PROPERTIES::TransferDataFromWindow()
m_item->SetStartY( m_startY.GetValue() );
}
if( m_item->GetShape() == PCB_SHAPE_TYPE::CIRCLE )
if( m_item->GetShape() == SHAPE_T::CIRCLE )
{
m_item->SetEnd( m_item->GetStart() + wxPoint( m_endX.GetValue(), 0 ) );
}
else if( m_item->GetShape() == PCB_SHAPE_TYPE::ARC )
else if( m_item->GetShape() == SHAPE_T::ARC )
{
m_item->SetArcEnd( wxPoint( m_endX.GetValue(), m_endY.GetValue() ) );
}
@ -327,13 +327,13 @@ bool DIALOG_GRAPHIC_ITEM_PROPERTIES::TransferDataFromWindow()
}
// For Bezier curve: Set the two control points
if( m_item->GetShape() == PCB_SHAPE_TYPE::CURVE )
if( m_item->GetShape() == SHAPE_T::BEZIER )
{
m_item->SetBezierC1( wxPoint( m_bezierCtrl1X.GetValue(), m_bezierCtrl1Y.GetValue()));
m_item->SetBezierC2( wxPoint( m_bezierCtrl2X.GetValue(), m_bezierCtrl2Y.GetValue()));
}
if( m_item->GetShape() == PCB_SHAPE_TYPE::ARC )
if( m_item->GetShape() == SHAPE_T::ARC )
{
m_item->SetCenter( GetArcCenter( m_item->GetArcStart(), m_item->GetArcEnd(), m_AngleValue ) );
m_item->SetAngle( m_AngleValue * 10.0, false );
@ -345,7 +345,7 @@ bool DIALOG_GRAPHIC_ITEM_PROPERTIES::TransferDataFromWindow()
m_fp_item->SetStart0( m_fp_item->GetStart() );
m_fp_item->SetEnd0( m_fp_item->GetEnd() );
if( m_fp_item->GetShape() == PCB_SHAPE_TYPE::CURVE )
if( m_fp_item->GetShape() == SHAPE_T::BEZIER )
{
m_fp_item->SetBezierC1_0( wxPoint( m_bezierCtrl1X.GetValue(), m_bezierCtrl1Y.GetValue()));
m_fp_item->SetBezierC2_0( wxPoint( m_bezierCtrl2X.GetValue(), m_bezierCtrl2Y.GetValue()));
@ -383,28 +383,28 @@ bool DIALOG_GRAPHIC_ITEM_PROPERTIES::Validate()
// Type specific checks.
switch( m_item->GetShape() )
{
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
// Check angle of arc.
if( m_angle.GetValue() == 0 )
error_msgs.Add( _( "The arc angle cannot be zero." ) );
KI_FALLTHROUGH;
case PCB_SHAPE_TYPE::CIRCLE:
case SHAPE_T::CIRCLE:
// Check radius.
if( m_startX.GetValue() == m_endX.GetValue() && m_startY.GetValue() == m_endY.GetValue() )
error_msgs.Add( _( "The radius cannot be zero." ) );
break;
case PCB_SHAPE_TYPE::RECT:
case SHAPE_T::RECT:
// Check for null rect.
if( m_startX.GetValue() == m_endX.GetValue() && m_startY.GetValue() == m_endY.GetValue() )
error_msgs.Add( _( "The rectangle cannot be empty." ) );
break;
case PCB_SHAPE_TYPE::POLYGON:
case PCB_SHAPE_TYPE::SEGMENT:
case PCB_SHAPE_TYPE::CURVE:
case SHAPE_T::POLY:
case SHAPE_T::SEGMENT:
case SHAPE_T::BEZIER:
break;
default:

View File

@ -78,7 +78,7 @@ bool DIALOG_PAD_PRIMITIVES_PROPERTIES::TransferDataToWindow()
switch( m_shape->GetShape() )
{
case PCB_SHAPE_TYPE::SEGMENT: // Segment with rounded ends
case SHAPE_T::SEGMENT:
SetTitle( _( "Segment" ) );
m_startX.SetValue( m_shape->GetStart().x );
m_startY.SetValue( m_shape->GetStart().y );
@ -96,7 +96,7 @@ bool DIALOG_PAD_PRIMITIVES_PROPERTIES::TransferDataToWindow()
m_filledCtrl->Show( false );
break;
case PCB_SHAPE_TYPE::CURVE: // Bezier line
case SHAPE_T::BEZIER:
SetTitle( _( "Bezier" ) );
m_startX.SetValue( m_shape->GetStart().x );
m_startY.SetValue( m_shape->GetStart().y );
@ -110,7 +110,7 @@ bool DIALOG_PAD_PRIMITIVES_PROPERTIES::TransferDataToWindow()
m_filledCtrl->Show( false );
break;
case PCB_SHAPE_TYPE::ARC: // Arc with rounded ends
case SHAPE_T::ARC:
SetTitle( _( "Arc" ) );
m_startX.SetValue( m_shape->GetEnd().x ); // confusingly, the start point of the arc
m_startY.SetValue( m_shape->GetEnd().y );
@ -131,7 +131,7 @@ bool DIALOG_PAD_PRIMITIVES_PROPERTIES::TransferDataToWindow()
m_filledCtrl->Show( false );
break;
case PCB_SHAPE_TYPE::CIRCLE: // ring or circle
case SHAPE_T::CIRCLE:
if( m_shape->GetWidth() )
SetTitle( _( "Ring" ) );
else
@ -158,7 +158,7 @@ bool DIALOG_PAD_PRIMITIVES_PROPERTIES::TransferDataToWindow()
m_filledCtrl->Show( true );
break;
case PCB_SHAPE_TYPE::POLYGON: // polygon
case SHAPE_T::POLY:
// polygon has a specific dialog editor. So nothing here
break;
@ -186,19 +186,19 @@ bool DIALOG_PAD_PRIMITIVES_PROPERTIES::TransferDataFromWindow()
switch( m_shape->GetShape() )
{
case PCB_SHAPE_TYPE::SEGMENT: // Segment with rounded ends
case SHAPE_T::SEGMENT:
m_shape->SetStart( wxPoint( m_startX.GetValue(), m_startY.GetValue() ) );
m_shape->SetEnd( wxPoint( m_endX.GetValue(), m_endY.GetValue() ) );
break;
case PCB_SHAPE_TYPE::CURVE: // Segment with rounded ends
case SHAPE_T::BEZIER:
m_shape->SetStart( wxPoint( m_startX.GetValue(), m_startY.GetValue() ) );
m_shape->SetEnd( wxPoint( m_endX.GetValue(), m_endY.GetValue() ) );
m_shape->SetBezierC1( wxPoint( m_ctrl1X.GetValue(), m_ctrl1Y.GetValue()));
m_shape->SetBezierC1( wxPoint( m_ctrl2X.GetValue(), m_ctrl2Y.GetValue()));
break;
case PCB_SHAPE_TYPE::ARC: // Arc with rounded ends
case SHAPE_T::ARC:
// NB: we store the center of the arc in m_Start, and, confusingly,
// the start point in m_End
m_shape->SetStart( wxPoint( m_endX.GetValue(), m_endY.GetValue() ) );
@ -208,12 +208,12 @@ bool DIALOG_PAD_PRIMITIVES_PROPERTIES::TransferDataFromWindow()
m_shape->SetAngle( m_radius.GetValue() );
break;
case PCB_SHAPE_TYPE::CIRCLE: // ring or circle
case SHAPE_T::CIRCLE:
m_shape->SetStart( wxPoint( m_startX.GetValue(), m_startY.GetValue() ) );
m_shape->SetEnd( m_shape->GetStart() + wxPoint( m_radius.GetValue(), 0 ) );
break;
case PCB_SHAPE_TYPE::POLYGON: // polygon
case SHAPE_T::POLY:
// polygon has a specific dialog editor. So nothing here
break;

View File

@ -706,19 +706,19 @@ void DIALOG_PAD_PROPERTIES::displayPrimitivesList()
switch( primitive->GetShape() )
{
case PCB_SHAPE_TYPE::SEGMENT: // usual segment : line with rounded ends
case SHAPE_T::SEGMENT:
bs_info[0] = _( "Segment" );
bs_info[1] = _( "from" ) + wxS( " " )+ formatCoord( m_units, primitive->GetStart() );
bs_info[2] = _( "to" ) + wxS( " " )+ formatCoord( m_units, primitive->GetEnd() );
break;
case PCB_SHAPE_TYPE::CURVE: // Bezier segment
case SHAPE_T::BEZIER:
bs_info[0] = _( "Bezier" );
bs_info[1] = _( "from" ) + wxS( " " )+ formatCoord( m_units, primitive->GetStart() );
bs_info[2] = _( "to" ) + wxS( " " )+ formatCoord( m_units, primitive->GetEnd() );
break;
case PCB_SHAPE_TYPE::ARC: // Arc with rounded ends
case SHAPE_T::ARC:
bs_info[0] = _( "Arc" );
bs_info[1] = _( "center" ) + wxS( " " )+ formatCoord( m_units, primitive->GetCenter() );
bs_info[2] = _( "start" ) + wxS( " " )+ formatCoord( m_units,
@ -726,7 +726,7 @@ void DIALOG_PAD_PROPERTIES::displayPrimitivesList()
bs_info[3] = _( "angle" ) + wxS( " " )+ FormatAngle( primitive->GetAngle() );
break;
case PCB_SHAPE_TYPE::CIRCLE: // ring or circle
case SHAPE_T::CIRCLE:
if( primitive->GetWidth() )
bs_info[0] = _( "ring" );
else
@ -737,7 +737,7 @@ void DIALOG_PAD_PROPERTIES::displayPrimitivesList()
primitive->GetRadius() );
break;
case PCB_SHAPE_TYPE::POLYGON: // polygon
case SHAPE_T::POLY:
bs_info[0] = "Polygon";
bs_info[1] = wxString::Format( _( "corners count %d" ),
(int) primitive->GetPolyShape().Outline( 0 ).PointCount() );
@ -2069,7 +2069,7 @@ void DIALOG_PAD_PROPERTIES::editPrimitive()
std::shared_ptr<PCB_SHAPE>& shape = m_primitives[select];
if( shape->GetShape() == PCB_SHAPE_TYPE::POLYGON )
if( shape->GetShape() == SHAPE_T::POLY )
{
DIALOG_PAD_PRIMITIVE_POLY_PROPS dlg( this, m_parent, shape.get() );
@ -2165,16 +2165,15 @@ void DIALOG_PAD_PROPERTIES::onAddPrimitive( wxCommandEvent& event )
if( type == -1 )
return;
PCB_SHAPE_TYPE listtype[] = { PCB_SHAPE_TYPE::SEGMENT, PCB_SHAPE_TYPE::ARC,
PCB_SHAPE_TYPE::CURVE, PCB_SHAPE_TYPE::CIRCLE,
PCB_SHAPE_TYPE::POLYGON };
SHAPE_T listtype[] = { SHAPE_T::SEGMENT, SHAPE_T::ARC, SHAPE_T::BEZIER, SHAPE_T::CIRCLE,
SHAPE_T::POLY };
PCB_SHAPE* primitive = new PCB_SHAPE();
primitive->SetShape( listtype[type] );
primitive->SetWidth( m_board->GetDesignSettings().GetLineThickness( F_Cu ) );
primitive->SetFilled( true );
if( listtype[type] == PCB_SHAPE_TYPE::POLYGON )
if( listtype[type] == SHAPE_T::POLY )
{
DIALOG_PAD_PRIMITIVE_POLY_PROPS dlg( this, m_parent, primitive );

View File

@ -151,29 +151,29 @@ bool DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run()
{
PCB_SHAPE* shape = static_cast<PCB_SHAPE*>( item );
if( shape->GetShape() == PCB_SHAPE_TYPE::RECT )
if( shape->GetShape() == SHAPE_T::RECT )
{
// A single rectangle for the board would make the RTree useless, so
// convert to 4 edges
edges.emplace_back( static_cast<PCB_SHAPE*>( shape->Clone() ) );
edges.back()->SetShape( PCB_SHAPE_TYPE::SEGMENT );
edges.back()->SetShape( SHAPE_T::SEGMENT );
edges.back()->SetEndX( shape->GetStartX() );
edges.back()->SetWidth( 0 );
edges.emplace_back( static_cast<PCB_SHAPE*>( shape->Clone() ) );
edges.back()->SetShape( PCB_SHAPE_TYPE::SEGMENT );
edges.back()->SetShape( SHAPE_T::SEGMENT );
edges.back()->SetEndY( shape->GetStartY() );
edges.back()->SetWidth( 0 );
edges.emplace_back( static_cast<PCB_SHAPE*>( shape->Clone() ) );
edges.back()->SetShape( PCB_SHAPE_TYPE::SEGMENT );
edges.back()->SetShape( SHAPE_T::SEGMENT );
edges.back()->SetStartX( shape->GetEndX() );
edges.back()->SetWidth( 0 );
edges.emplace_back( static_cast<PCB_SHAPE*>( shape->Clone() ) );
edges.back()->SetShape( PCB_SHAPE_TYPE::SEGMENT );
edges.back()->SetShape( SHAPE_T::SEGMENT );
edges.back()->SetStartY( shape->GetEndY() );
edges.back()->SetWidth( 0 );
return true;
}
else if( shape->GetShape() == PCB_SHAPE_TYPE::POLYGON )
else if( shape->GetShape() == SHAPE_T::POLY )
{
// Same for polygons
SHAPE_LINE_CHAIN poly = shape->GetPolyShape().Outline( 0 );
@ -182,7 +182,7 @@ bool DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run()
{
SEG seg = poly.CSegment( ii );
edges.emplace_back( static_cast<PCB_SHAPE*>( shape->Clone() ) );
edges.back()->SetShape( PCB_SHAPE_TYPE::SEGMENT );
edges.back()->SetShape( SHAPE_T::SEGMENT );
edges.back()->SetStart((wxPoint) seg.A );
edges.back()->SetEnd((wxPoint) seg.B );
edges.back()->SetWidth( 0 );

View File

@ -1210,7 +1210,7 @@ static void FootprintWriteShape( FILE* aFile, FOOTPRINT* aFootprint, const wxStr
{
switch( shape->GetShape() )
{
case PCB_SHAPE_TYPE::SEGMENT:
case SHAPE_T::SEGMENT:
fprintf( aFile, "LINE %g %g %g %g\n",
shape->GetStart0().x / SCALE_FACTOR,
-shape->GetStart0().y / SCALE_FACTOR,
@ -1218,7 +1218,7 @@ static void FootprintWriteShape( FILE* aFile, FOOTPRINT* aFootprint, const wxStr
-shape->GetEnd0().y / SCALE_FACTOR );
break;
case PCB_SHAPE_TYPE::RECT:
case SHAPE_T::RECT:
{
fprintf( aFile, "LINE %g %g %g %g\n",
shape->GetStart0().x / SCALE_FACTOR,
@ -1243,7 +1243,7 @@ static void FootprintWriteShape( FILE* aFile, FOOTPRINT* aFootprint, const wxStr
}
break;
case PCB_SHAPE_TYPE::CIRCLE:
case SHAPE_T::CIRCLE:
{
int radius = KiROUND( GetLineLength( shape->GetEnd0(), shape->GetStart0() ) );
@ -1254,7 +1254,7 @@ static void FootprintWriteShape( FILE* aFile, FOOTPRINT* aFootprint, const wxStr
break;
}
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
{
int arcendx, arcendy;
arcendx = shape->GetEnd0().x - shape->GetStart0().x;
@ -1273,7 +1273,7 @@ static void FootprintWriteShape( FILE* aFile, FOOTPRINT* aFootprint, const wxStr
break;
}
case PCB_SHAPE_TYPE::POLYGON:
case SHAPE_T::POLY:
// Not exported (TODO)
break;

View File

@ -89,7 +89,7 @@ static void idf_export_outline( BOARD* aPcb, IDF3_BOARD& aIDFBoard )
switch( graphic->GetShape() )
{
case PCB_SHAPE_TYPE::SEGMENT:
case SHAPE_T::SEGMENT:
{
if( ( graphic->GetStart().x == graphic->GetEnd().x )
&& ( graphic->GetStart().y == graphic->GetEnd().y ) )
@ -109,7 +109,7 @@ static void idf_export_outline( BOARD* aPcb, IDF3_BOARD& aIDFBoard )
break;
}
case PCB_SHAPE_TYPE::RECT:
case SHAPE_T::RECT:
{
if( ( graphic->GetStart().x == graphic->GetEnd().x )
&& ( graphic->GetStart().y == graphic->GetEnd().y ) )
@ -135,7 +135,7 @@ static void idf_export_outline( BOARD* aPcb, IDF3_BOARD& aIDFBoard )
break;
}
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
{
if( ( graphic->GetCenter().x == graphic->GetArcStart().x )
&& ( graphic->GetCenter().y == graphic->GetArcStart().y ) )
@ -155,7 +155,7 @@ static void idf_export_outline( BOARD* aPcb, IDF3_BOARD& aIDFBoard )
break;
}
case PCB_SHAPE_TYPE::CIRCLE:
case SHAPE_T::CIRCLE:
{
if( graphic->GetRadius() == 0 )
break;

View File

@ -1805,14 +1805,14 @@ double FOOTPRINT::GetCoverageArea( const BOARD_ITEM* aItem, const GENERAL_COLLEC
switch( shape->GetShape() )
{
case PCB_SHAPE_TYPE::SEGMENT:
case PCB_SHAPE_TYPE::ARC:
case PCB_SHAPE_TYPE::CURVE:
case SHAPE_T::SEGMENT:
case SHAPE_T::ARC:
case SHAPE_T::BEZIER:
return shape->GetWidth() * shape->GetWidth();
case PCB_SHAPE_TYPE::RECT:
case PCB_SHAPE_TYPE::CIRCLE:
case PCB_SHAPE_TYPE::POLYGON:
case SHAPE_T::RECT:
case SHAPE_T::CIRCLE:
case SHAPE_T::POLY:
{
if( !shape->IsFilled() )
return shape->GetWidth() * shape->GetWidth();

View File

@ -37,7 +37,7 @@
#include <view/view.h>
FP_SHAPE::FP_SHAPE( FOOTPRINT* parent, PCB_SHAPE_TYPE aShape ) :
FP_SHAPE::FP_SHAPE( FOOTPRINT* parent, SHAPE_T aShape ) :
PCB_SHAPE( parent, PCB_FP_SHAPE_T )
{
m_shape = aShape;
@ -161,15 +161,15 @@ void FP_SHAPE::Flip( const wxPoint& aCentre, bool aFlipLeftRight )
switch( GetShape() )
{
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
// Update arc angle but do not yet update m_thirdPoint0 and m_thirdPoint,
// arc center and start point must be updated before calculation arc end.
SetAngle( -GetAngle(), false );
KI_FALLTHROUGH;
default:
case PCB_SHAPE_TYPE::SEGMENT:
case PCB_SHAPE_TYPE::CURVE:
case SHAPE_T::SEGMENT:
case SHAPE_T::BEZIER:
// If Start0 and Start are equal (ie: Footprint Editor), then flip both sets around the
// centre point.
if( m_start == m_start0 )
@ -205,7 +205,7 @@ void FP_SHAPE::Flip( const wxPoint& aCentre, bool aFlipLeftRight )
RebuildBezierToSegmentsPointsList( m_width );
break;
case PCB_SHAPE_TYPE::POLYGON:
case SHAPE_T::POLY:
// polygon corners coordinates are relative to the footprint position, orientation 0
m_poly.Mirror( aFlipLeftRight, !aFlipLeftRight );
break;
@ -228,15 +228,15 @@ void FP_SHAPE::Mirror( const wxPoint& aCentre, bool aMirrorAroundXAxis )
switch( GetShape() )
{
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
// Update arc angle but do not yet update m_thirdPoint0 and m_thirdPoint,
// arc center and start point must be updated before calculation arc end.
SetAngle( -GetAngle(), false );
KI_FALLTHROUGH;
default:
case PCB_SHAPE_TYPE::CURVE:
case PCB_SHAPE_TYPE::SEGMENT:
case SHAPE_T::BEZIER:
case SHAPE_T::SEGMENT:
if( aMirrorAroundXAxis )
{
MIRROR( m_start0.y, aCentre.y );
@ -264,7 +264,7 @@ void FP_SHAPE::Mirror( const wxPoint& aCentre, bool aMirrorAroundXAxis )
break;
case PCB_SHAPE_TYPE::POLYGON:
case SHAPE_T::POLY:
// polygon corners coordinates are always relative to the
// footprint position, orientation 0
m_poly.Mirror( !aMirrorAroundXAxis, aMirrorAroundXAxis );
@ -301,7 +301,7 @@ void FP_SHAPE::Move( const wxPoint& aMoveVector )
default:
break;
case PCB_SHAPE_TYPE::POLYGON:
case SHAPE_T::POLY:
// polygon corners coordinates are always relative to the
// footprint position, orientation 0
m_poly.Move( VECTOR2I( aMoveVector ) );

View File

@ -39,7 +39,7 @@ class MSG_PANEL_ITEM;
class FP_SHAPE : public PCB_SHAPE
{
public:
FP_SHAPE( FOOTPRINT* parent, PCB_SHAPE_TYPE aShape = PCB_SHAPE_TYPE::SEGMENT );
FP_SHAPE( FOOTPRINT* parent, SHAPE_T aShape = SHAPE_T::SEGMENT );
// Do not create a copy constructor & operator=.
// The ones generated by the compiler are adequate.

View File

@ -65,31 +65,30 @@ void GRAPHICS_CLEANER::CleanupBoard( bool aDryRun,
}
bool GRAPHICS_CLEANER::isNullSegment( PCB_SHAPE* aSegment )
bool GRAPHICS_CLEANER::isNullShape( PCB_SHAPE* aShape )
{
switch( aSegment->GetShape() )
switch( aShape->GetShape() )
{
case PCB_SHAPE_TYPE::SEGMENT:
case PCB_SHAPE_TYPE::RECT:
return aSegment->GetStart() == aSegment->GetEnd();
case SHAPE_T::SEGMENT:
case SHAPE_T::RECT:
return aShape->GetStart() == aShape->GetEnd();
case PCB_SHAPE_TYPE::CIRCLE:
return aSegment->GetRadius() == 0;
case SHAPE_T::CIRCLE:
return aShape->GetRadius() == 0;
case PCB_SHAPE_TYPE::ARC:
return aSegment->GetCenter().x == aSegment->GetArcStart().x
&& aSegment->GetCenter().y == aSegment->GetArcStart().y;
case SHAPE_T::ARC:
return aShape->GetCenter() == aShape->GetArcStart();
case PCB_SHAPE_TYPE::POLYGON:
return aSegment->GetPointCount() == 0;
case SHAPE_T::POLY:
return aShape->GetPointCount() == 0;
case PCB_SHAPE_TYPE::CURVE:
aSegment->RebuildBezierToSegmentsPointsList( aSegment->GetWidth() );
return aSegment->GetBezierPoints().empty();
case SHAPE_T::BEZIER:
aShape->RebuildBezierToSegmentsPointsList( aShape->GetWidth() );
return aShape->GetBezierPoints().empty();
default:
wxFAIL_MSG( "GRAPHICS_CLEANER::isNullSegment unsupported PCB_SHAPE shape: "
+ PCB_SHAPE_TYPE_T_asString( aSegment->GetShape() ) );
+ SHAPE_T_asString( aShape->GetShape()) );
return false;
}
}
@ -106,29 +105,29 @@ bool GRAPHICS_CLEANER::areEquivalent( PCB_SHAPE* aShape1, PCB_SHAPE* aShape2 )
switch( aShape1->GetShape() )
{
case PCB_SHAPE_TYPE::SEGMENT:
case PCB_SHAPE_TYPE::RECT:
case PCB_SHAPE_TYPE::CIRCLE:
case SHAPE_T::SEGMENT:
case SHAPE_T::RECT:
case SHAPE_T::CIRCLE:
return aShape1->GetStart() == aShape2->GetStart()
&& aShape1->GetEnd() == aShape2->GetEnd();
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
return aShape1->GetCenter() == aShape2->GetCenter()
&& aShape1->GetArcStart() == aShape2->GetArcStart()
&& aShape1->GetAngle() == aShape2->GetAngle();
case PCB_SHAPE_TYPE::POLYGON:
case SHAPE_T::POLY:
// TODO
return false;
case PCB_SHAPE_TYPE::CURVE:
case SHAPE_T::BEZIER:
return aShape1->GetBezierC1() == aShape2->GetBezierC1()
&& aShape1->GetBezierC2() == aShape2->GetBezierC2()
&& aShape1->GetBezierPoints() == aShape2->GetBezierPoints();
default:
wxFAIL_MSG( "GRAPHICS_CLEANER::areEquivalent unsupported PCB_SHAPE shape: "
+ PCB_SHAPE_TYPE_T_asString( aShape1->GetShape() ) );
+ SHAPE_T_asString( aShape1->GetShape()) );
return false;
}
}
@ -141,11 +140,10 @@ void GRAPHICS_CLEANER::cleanupSegments()
{
PCB_SHAPE* segment = dynamic_cast<PCB_SHAPE*>( *it );
if( !segment || segment->GetShape() != PCB_SHAPE_TYPE::SEGMENT
|| segment->HasFlag( IS_DELETED ) )
if( !segment || segment->GetShape() != SHAPE_T::SEGMENT || segment->HasFlag( IS_DELETED ) )
continue;
if( isNullSegment( segment ) )
if( isNullShape( segment ) )
{
std::shared_ptr<CLEANUP_ITEM> item = std::make_shared<CLEANUP_ITEM>( CLEANUP_NULL_GRAPHIC );
item->SetItems( segment );
@ -206,7 +204,7 @@ void GRAPHICS_CLEANER::mergeRects()
{
PCB_SHAPE* shape = dynamic_cast<PCB_SHAPE*>( item );
if( !shape || shape->GetShape() != PCB_SHAPE_TYPE::SEGMENT )
if( !shape || shape->GetShape() != SHAPE_T::SEGMENT )
continue;
if( shape->GetStart().x == shape->GetEnd().x || shape->GetStart().y == shape->GetEnd().y )
@ -307,7 +305,7 @@ void GRAPHICS_CLEANER::mergeRects()
else
rect = new PCB_SHAPE();
rect->SetShape( PCB_SHAPE_TYPE::RECT );
rect->SetShape( SHAPE_T::RECT );
rect->SetFilled( false );
rect->SetStart( top->start );
rect->SetEnd( bottom->end );

View File

@ -46,7 +46,7 @@ public:
bool aMergeRects, bool aDeleteRedundant );
private:
bool isNullSegment( PCB_SHAPE* aShape );
bool isNullShape( PCB_SHAPE* aShape );
bool areEquivalent( PCB_SHAPE* aShape1, PCB_SHAPE* aShape2 );
void cleanupSegments();

View File

@ -62,7 +62,7 @@ int GRAPHICS_IMPORTER_PCBNEW::MapLineWidth( double aLineWidth )
void GRAPHICS_IMPORTER_PCBNEW::AddLine( const VECTOR2D& aOrigin, const VECTOR2D& aEnd, double aWidth )
{
std::unique_ptr<PCB_SHAPE> line( createDrawing() );
line->SetShape( PCB_SHAPE_TYPE::SEGMENT );
line->SetShape( SHAPE_T::SEGMENT );
line->SetLayer( GetLayer() );
line->SetWidth( MapLineWidth( aWidth ) );
line->SetStart( MapCoordinate( aOrigin ) );
@ -78,7 +78,7 @@ void GRAPHICS_IMPORTER_PCBNEW::AddLine( const VECTOR2D& aOrigin, const VECTOR2D&
void GRAPHICS_IMPORTER_PCBNEW::AddCircle( const VECTOR2D& aCenter, double aRadius, double aWidth, bool aFilled )
{
std::unique_ptr<PCB_SHAPE> circle( createDrawing() );
circle->SetShape( PCB_SHAPE_TYPE::CIRCLE );
circle->SetShape( SHAPE_T::CIRCLE );
circle->SetFilled( aFilled );
circle->SetLayer( GetLayer() );
circle->SetWidth( MapLineWidth( aWidth ) );
@ -96,7 +96,7 @@ void GRAPHICS_IMPORTER_PCBNEW::AddArc( const VECTOR2D& aCenter, const VECTOR2D&
double aAngle, double aWidth )
{
std::unique_ptr<PCB_SHAPE> arc( createDrawing() );
arc->SetShape( PCB_SHAPE_TYPE::ARC );
arc->SetShape( SHAPE_T::ARC );
arc->SetLayer( GetLayer() );
arc->SetWidth( MapLineWidth( aWidth ) );
arc->SetCenter( MapCoordinate( aCenter) );
@ -119,7 +119,7 @@ void GRAPHICS_IMPORTER_PCBNEW::AddPolygon( const std::vector< VECTOR2D >& aVerti
convertedPoints.emplace_back( MapCoordinate( precisePoint ) );
std::unique_ptr<PCB_SHAPE> polygon( createDrawing() );
polygon->SetShape( PCB_SHAPE_TYPE::POLYGON );
polygon->SetShape( SHAPE_T::POLY );
polygon->SetFilled( GetLayer() != Edge_Cuts );
polygon->SetLayer( GetLayer() );
polygon->SetPolyPoints( convertedPoints );
@ -160,7 +160,7 @@ void GRAPHICS_IMPORTER_PCBNEW::AddSpline( const VECTOR2D& aStart, const VECTOR2D
const VECTOR2D& BezierControl2, const VECTOR2D& aEnd, double aWidth )
{
std::unique_ptr<PCB_SHAPE> spline( createDrawing() );
spline->SetShape( PCB_SHAPE_TYPE::CURVE );
spline->SetShape( SHAPE_T::BEZIER );
spline->SetLayer( GetLayer() );
spline->SetWidth( MapLineWidth( aWidth ) );
spline->SetStart( MapCoordinate( aStart ) );

View File

@ -430,7 +430,7 @@ FOOTPRINT* MICROWAVE_TOOL::createMicrowaveInductor( MICROWAVE_INDUCTOR_PATTERN&
seg->SetEnd( buffer[jj] );
seg->SetWidth( aInductorPattern.m_Width );
seg->SetLayer( footprint->GetLayer() );
seg->SetShape( PCB_SHAPE_TYPE::SEGMENT );
seg->SetShape( SHAPE_T::SEGMENT );
seg->SetStart0( seg->GetStart() - footprint->GetPosition() );
seg->SetEnd0( seg->GetEnd() - footprint->GetPosition() );
footprint->Add( seg );

View File

@ -302,7 +302,7 @@ FOOTPRINT* MICROWAVE_TOOL::createPolygonShape()
// Add a polygonal edge (corners will be added later) on copper layer
shape = new FP_SHAPE( footprint );
shape->SetShape( PCB_SHAPE_TYPE::POLYGON );
shape->SetShape( SHAPE_T::POLY );
shape->SetFilled( true );
shape->SetLayer( F_Cu );

View File

@ -56,7 +56,7 @@ void PAD::AddPrimitivePoly( const SHAPE_POLY_SET& aPoly, int aThickness, bool aF
void PAD::AddPrimitivePoly( const std::vector<wxPoint>& aPoly, int aThickness, bool aFilled )
{
PCB_SHAPE* item = new PCB_SHAPE();
item->SetShape( PCB_SHAPE_TYPE::POLYGON );
item->SetShape( SHAPE_T::POLY );
item->SetFilled( aFilled );
item->SetPolyPoints( aPoly );
item->SetWidth( aThickness );
@ -69,7 +69,7 @@ void PAD::AddPrimitivePoly( const std::vector<wxPoint>& aPoly, int aThickness, b
void PAD::AddPrimitiveSegment( const wxPoint& aStart, const wxPoint& aEnd, int aThickness )
{
PCB_SHAPE* item = new PCB_SHAPE();
item->SetShape( PCB_SHAPE_TYPE::SEGMENT );
item->SetShape( SHAPE_T::SEGMENT );
item->SetFilled( false );
item->SetStart( aStart );
item->SetEnd( aEnd );
@ -84,7 +84,7 @@ void PAD::AddPrimitiveArc( const wxPoint& aCenter, const wxPoint& aStart, int aA
int aThickness )
{
PCB_SHAPE* item = new PCB_SHAPE();
item->SetShape( PCB_SHAPE_TYPE::ARC );
item->SetShape( SHAPE_T::ARC );
item->SetFilled( false );
item->SetCenter( aCenter );
item->SetArcStart( aStart );
@ -100,7 +100,7 @@ void PAD::AddPrimitiveCurve( const wxPoint& aStart, const wxPoint& aEnd, const w
const wxPoint& aCtrl2, int aThickness )
{
PCB_SHAPE* item = new PCB_SHAPE();
item->SetShape( PCB_SHAPE_TYPE::CURVE );
item->SetShape( SHAPE_T::BEZIER );
item->SetFilled( false );
item->SetStart( aStart );
item->SetEnd( aEnd );
@ -116,7 +116,7 @@ void PAD::AddPrimitiveCurve( const wxPoint& aStart, const wxPoint& aEnd, const w
void PAD::AddPrimitiveCircle( const wxPoint& aCenter, int aRadius, int aThickness, bool aFilled )
{
PCB_SHAPE* item = new PCB_SHAPE();
item->SetShape( PCB_SHAPE_TYPE::CIRCLE );
item->SetShape( SHAPE_T::CIRCLE );
item->SetFilled( aFilled );
item->SetStart( aCenter );
item->SetEnd( wxPoint( aCenter.x + aRadius, aCenter.y ) );
@ -131,7 +131,7 @@ void PAD::AddPrimitiveRect( const wxPoint& aStart, const wxPoint& aEnd, int aThi
bool aFilled)
{
PCB_SHAPE* item = new PCB_SHAPE();
item->SetShape( PCB_SHAPE_TYPE::RECT );
item->SetShape( SHAPE_T::RECT );
item->SetFilled( aFilled );
item->SetStart( aStart );
item->SetEnd( aEnd );

View File

@ -1353,7 +1353,7 @@ void PCB_PAINTER::draw( const PCB_SHAPE* aShape, int aLayer )
switch( aShape->GetShape() )
{
case PCB_SHAPE_TYPE::SEGMENT:
case SHAPE_T::SEGMENT:
if( sketch )
{
m_gal->DrawSegment( start, end, thickness );
@ -1368,7 +1368,7 @@ void PCB_PAINTER::draw( const PCB_SHAPE* aShape, int aLayer )
break;
case PCB_SHAPE_TYPE::RECT:
case SHAPE_T::RECT:
{
std::vector<wxPoint> pts = aShape->GetRectCorners();
@ -1407,7 +1407,7 @@ void PCB_PAINTER::draw( const PCB_SHAPE* aShape, int aLayer )
break;
}
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
if( sketch )
{
m_gal->DrawArcSegment( start, aShape->GetRadius(),
@ -1427,7 +1427,7 @@ void PCB_PAINTER::draw( const PCB_SHAPE* aShape, int aLayer )
}
break;
case PCB_SHAPE_TYPE::CIRCLE:
case SHAPE_T::CIRCLE:
if( sketch )
{
m_gal->DrawCircle( start, aShape->GetRadius() - thickness / 2 );
@ -1443,7 +1443,7 @@ void PCB_PAINTER::draw( const PCB_SHAPE* aShape, int aLayer )
}
break;
case PCB_SHAPE_TYPE::POLYGON:
case SHAPE_T::POLY:
{
SHAPE_POLY_SET& shape = const_cast<PCB_SHAPE*>( aShape )->GetPolyShape();
const FOOTPRINT* parentFootprint = aShape->GetParentFootprint();
@ -1499,7 +1499,7 @@ void PCB_PAINTER::draw( const PCB_SHAPE* aShape, int aLayer )
break;
}
case PCB_SHAPE_TYPE::CURVE:
case SHAPE_T::BEZIER:
if( sketch )
{
// Use thickness as filter value to convert the curve to polyline when the curve
@ -1525,7 +1525,7 @@ void PCB_PAINTER::draw( const PCB_SHAPE* aShape, int aLayer )
break;
case PCB_SHAPE_TYPE::LAST:
case SHAPE_T::LAST:
break;
}
}

View File

@ -51,7 +51,7 @@ PCB_SHAPE::PCB_SHAPE( BOARD_ITEM* aParent, KICAD_T idtype ) :
m_angle = 0;
m_filled = false;
m_flags = 0;
m_shape = PCB_SHAPE_TYPE::SEGMENT;
m_shape = SHAPE_T::SEGMENT;
m_width = Millimeter2iu( DEFAULT_LINE_WIDTH );
}
@ -69,7 +69,7 @@ void PCB_SHAPE::SetPosition( const wxPoint& aPos )
wxPoint PCB_SHAPE::GetPosition() const
{
if( m_shape == PCB_SHAPE_TYPE::POLYGON )
if( m_shape == SHAPE_T::POLY )
return (wxPoint) m_poly.CVertex( 0 );
else
return m_start;
@ -82,23 +82,23 @@ double PCB_SHAPE::GetLength() const
switch( m_shape )
{
case PCB_SHAPE_TYPE::CURVE:
case SHAPE_T::BEZIER:
for( size_t ii = 1; ii < m_bezierPoints.size(); ++ii )
length += GetLineLength( m_bezierPoints[ ii - 1], m_bezierPoints[ii] );
break;
case PCB_SHAPE_TYPE::SEGMENT:
case SHAPE_T::SEGMENT:
length = GetLineLength( GetStart(), GetEnd() );
break;
case PCB_SHAPE_TYPE::POLYGON:
case SHAPE_T::POLY:
for( int ii = 0; ii < m_poly.COutline( 0 ).SegmentCount(); ii++ )
length += m_poly.COutline( 0 ).CSegment( ii ).Length();
break;
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
length = 2 * M_PI * GetRadius() * ( GetAngle() / 3600.0 );
break;
@ -116,7 +116,7 @@ void PCB_SHAPE::Move( const wxPoint& aMoveVector )
{
// Move vector should not affect start/end for polygon since it will
// be applied directly to polygon outline.
if( m_shape != PCB_SHAPE_TYPE::POLYGON )
if( m_shape != SHAPE_T::POLY )
{
m_start += aMoveVector;
m_end += aMoveVector;
@ -124,15 +124,15 @@ void PCB_SHAPE::Move( const wxPoint& aMoveVector )
switch ( m_shape )
{
case PCB_SHAPE_TYPE::POLYGON:
case SHAPE_T::POLY:
m_poly.Move( VECTOR2I( aMoveVector ) );
break;
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
m_thirdPoint += aMoveVector;
break;
case PCB_SHAPE_TYPE::CURVE:
case SHAPE_T::BEZIER:
m_bezierC1 += aMoveVector;
m_bezierC2 += aMoveVector;
@ -163,21 +163,21 @@ void PCB_SHAPE::Scale( double aScale )
// specific parameters:
switch( m_shape )
{
case PCB_SHAPE_TYPE::CURVE:
case SHAPE_T::BEZIER:
scalePt( m_bezierC1 );
scalePt( m_bezierC2 );
break;
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
scalePt( m_thirdPoint );
break;
case PCB_SHAPE_TYPE::CIRCLE: // ring or circle
case SHAPE_T::CIRCLE: // ring or circle
m_end.x = m_start.x + KiROUND( radius * aScale );
m_end.y = m_start.y;
break;
case PCB_SHAPE_TYPE::POLYGON: // polygon
case SHAPE_T::POLY: // polygon
{
std::vector<wxPoint> pts;
@ -201,16 +201,16 @@ void PCB_SHAPE::Rotate( const wxPoint& aRotCentre, double aAngle )
{
switch( m_shape )
{
case PCB_SHAPE_TYPE::ARC:
case PCB_SHAPE_TYPE::SEGMENT:
case PCB_SHAPE_TYPE::CIRCLE:
case SHAPE_T::ARC:
case SHAPE_T::SEGMENT:
case SHAPE_T::CIRCLE:
// these can all be done by just rotating the constituent points
RotatePoint( &m_start, aRotCentre, aAngle );
RotatePoint( &m_end, aRotCentre, aAngle );
RotatePoint( &m_thirdPoint, aRotCentre, aAngle );
break;
case PCB_SHAPE_TYPE::RECT:
case SHAPE_T::RECT:
if( KiROUND( aAngle ) % 900 == 0 )
{
RotatePoint( &m_start, aRotCentre, aAngle );
@ -219,7 +219,7 @@ void PCB_SHAPE::Rotate( const wxPoint& aRotCentre, double aAngle )
}
// Convert non-cartesian-rotated rect to a diamond
m_shape = PCB_SHAPE_TYPE::POLYGON;
m_shape = SHAPE_T::POLY;
m_poly.RemoveAllContours();
m_poly.NewOutline();
m_poly.Append( m_start );
@ -229,11 +229,11 @@ void PCB_SHAPE::Rotate( const wxPoint& aRotCentre, double aAngle )
KI_FALLTHROUGH;
case PCB_SHAPE_TYPE::POLYGON:
case SHAPE_T::POLY:
m_poly.Rotate( -DECIDEG2RAD( aAngle ), VECTOR2I( aRotCentre ) );
break;
case PCB_SHAPE_TYPE::CURVE:
case SHAPE_T::BEZIER:
RotatePoint( &m_start, aRotCentre, aAngle);
RotatePoint( &m_end, aRotCentre, aAngle);
RotatePoint( &m_bezierC1, aRotCentre, aAngle);
@ -246,7 +246,7 @@ void PCB_SHAPE::Rotate( const wxPoint& aRotCentre, double aAngle )
default:
wxFAIL_MSG( "PCB_SHAPE::Rotate not implemented for "
+ PCB_SHAPE_TYPE_T_asString( m_shape ) );
+ SHAPE_T_asString( m_shape ) );
break;
}
}
@ -267,7 +267,7 @@ void PCB_SHAPE::Flip( const wxPoint& aCentre, bool aFlipLeftRight )
switch ( m_shape )
{
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
if( aFlipLeftRight )
m_thirdPoint.x = aCentre.x - ( m_thirdPoint.x - aCentre.x );
else
@ -276,11 +276,11 @@ void PCB_SHAPE::Flip( const wxPoint& aCentre, bool aFlipLeftRight )
m_angle = -m_angle;
break;
case PCB_SHAPE_TYPE::POLYGON:
case SHAPE_T::POLY:
m_poly.Mirror( aFlipLeftRight, !aFlipLeftRight, VECTOR2I( aCentre ) );
break;
case PCB_SHAPE_TYPE::CURVE:
case SHAPE_T::BEZIER:
{
if( aFlipLeftRight )
{
@ -300,14 +300,14 @@ void PCB_SHAPE::Flip( const wxPoint& aCentre, bool aFlipLeftRight )
}
break;
case PCB_SHAPE_TYPE::SEGMENT:
case PCB_SHAPE_TYPE::RECT:
case PCB_SHAPE_TYPE::CIRCLE:
case SHAPE_T::SEGMENT:
case SHAPE_T::RECT:
case SHAPE_T::CIRCLE:
break;
default:
wxFAIL_MSG( "PCB_SHAPE::Flip not implemented for "
+ PCB_SHAPE_TYPE_T_asString( m_shape ) );
+ SHAPE_T_asString( m_shape ) );
break;
}
@ -318,7 +318,7 @@ void PCB_SHAPE::Flip( const wxPoint& aCentre, bool aFlipLeftRight )
void PCB_SHAPE::RebuildBezierToSegmentsPointsList( int aMinSegLen )
{
// Has meaning only for S_CURVE DRAW_SEGMENT shape
if( m_shape != PCB_SHAPE_TYPE::CURVE )
if( m_shape != SHAPE_T::BEZIER )
{
m_bezierPoints.clear();
return;
@ -347,25 +347,25 @@ wxPoint PCB_SHAPE::GetCenter() const
switch( m_shape )
{
case PCB_SHAPE_TYPE::ARC:
case PCB_SHAPE_TYPE::CIRCLE:
case SHAPE_T::ARC:
case SHAPE_T::CIRCLE:
c = m_start;
break;
case PCB_SHAPE_TYPE::SEGMENT:
case SHAPE_T::SEGMENT:
// Midpoint of the line
c = ( GetStart() + GetEnd() ) / 2;
break;
case PCB_SHAPE_TYPE::POLYGON:
case PCB_SHAPE_TYPE::RECT:
case PCB_SHAPE_TYPE::CURVE:
case SHAPE_T::POLY:
case SHAPE_T::RECT:
case SHAPE_T::BEZIER:
c = GetBoundingBox().Centre();
break;
default:
wxFAIL_MSG( "PCB_SHAPE::GetCentre not implemented for "
+ PCB_SHAPE_TYPE_T_asString( m_shape ) );
+ SHAPE_T_asString( m_shape ) );
break;
}
@ -379,7 +379,7 @@ wxPoint PCB_SHAPE::GetArcEnd() const
switch( m_shape )
{
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
endPoint = m_thirdPoint;
break;
@ -397,7 +397,7 @@ wxPoint PCB_SHAPE::GetArcMid() const
switch( m_shape )
{
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
// rotate the starting point of the arc, given by m_End, through half
// the angle m_Angle to get the middle of the arc.
// m_Start is the arc center
@ -512,14 +512,14 @@ void PCB_SHAPE::GetMsgPanelInfo( EDA_DRAW_FRAME* aFrame, std::vector<MSG_PANEL_I
switch( m_shape )
{
case PCB_SHAPE_TYPE::CIRCLE:
case SHAPE_T::CIRCLE:
aList.emplace_back( shape, _( "Circle" ) );
msg = MessageTextFromValue( units, GetLineLength( m_start, m_end ) );
aList.emplace_back( _( "Radius" ), msg );
break;
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
aList.emplace_back( shape, _( "Arc" ) );
msg.Printf( wxT( "%.1f" ), m_angle / 10.0 );
@ -529,21 +529,21 @@ void PCB_SHAPE::GetMsgPanelInfo( EDA_DRAW_FRAME* aFrame, std::vector<MSG_PANEL_I
aList.emplace_back( _( "Radius" ), msg );
break;
case PCB_SHAPE_TYPE::CURVE:
case SHAPE_T::BEZIER:
aList.emplace_back( shape, _( "Curve" ) );
msg = MessageTextFromValue( units, GetLength() );
aList.emplace_back( _( "Length" ), msg );
break;
case PCB_SHAPE_TYPE::POLYGON:
case SHAPE_T::POLY:
aList.emplace_back( shape, _( "Polygon" ) );
msg.Printf( "%d", GetPolyShape().Outline(0).PointCount() );
aList.emplace_back( _( "Points" ), msg );
break;
case PCB_SHAPE_TYPE::RECT:
case SHAPE_T::RECT:
aList.emplace_back( shape, _( "Rectangle" ) );
msg = MessageTextFromValue( units, std::abs( m_end.x - m_start.x ) );
@ -553,7 +553,7 @@ void PCB_SHAPE::GetMsgPanelInfo( EDA_DRAW_FRAME* aFrame, std::vector<MSG_PANEL_I
aList.emplace_back( _( "Height" ), msg );
break;
case PCB_SHAPE_TYPE::SEGMENT:
case SHAPE_T::SEGMENT:
{
aList.emplace_back( shape, _( "Segment" ) );
@ -586,7 +586,7 @@ const EDA_RECT PCB_SHAPE::GetBoundingBox() const
switch( m_shape )
{
case PCB_SHAPE_TYPE::RECT:
case SHAPE_T::RECT:
{
std::vector<wxPoint> pts = GetRectCorners();
@ -598,19 +598,19 @@ const EDA_RECT PCB_SHAPE::GetBoundingBox() const
break;
}
case PCB_SHAPE_TYPE::SEGMENT:
case SHAPE_T::SEGMENT:
bbox.SetEnd( m_end );
break;
case PCB_SHAPE_TYPE::CIRCLE:
case SHAPE_T::CIRCLE:
bbox.Inflate( GetRadius() );
break;
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
computeArcBBox( bbox );
break;
case PCB_SHAPE_TYPE::POLYGON:
case SHAPE_T::POLY:
{
if( m_poly.IsEmpty() )
break;
@ -634,7 +634,7 @@ const EDA_RECT PCB_SHAPE::GetBoundingBox() const
break;
}
case PCB_SHAPE_TYPE::CURVE:
case SHAPE_T::BEZIER:
bbox.Merge( m_bezierC1 );
bbox.Merge( m_bezierC2 );
bbox.Merge( m_end );
@ -642,7 +642,7 @@ const EDA_RECT PCB_SHAPE::GetBoundingBox() const
default:
wxFAIL_MSG( "PCB_SHAPE::GetBoundingBox not implemented for "
+ PCB_SHAPE_TYPE_T_asString( m_shape ) );
+ SHAPE_T_asString( m_shape ) );
break;
}
@ -659,7 +659,7 @@ bool PCB_SHAPE::HitTest( const wxPoint& aPosition, int aAccuracy ) const
switch( m_shape )
{
case PCB_SHAPE_TYPE::CIRCLE:
case SHAPE_T::CIRCLE:
{
int radius = GetRadius();
int dist = KiROUND( EuclideanNorm( aPosition - GetCenter() ) );
@ -678,7 +678,7 @@ bool PCB_SHAPE::HitTest( const wxPoint& aPosition, int aAccuracy ) const
break;
}
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
{
wxPoint relPos = aPosition - GetCenter();
int radius = GetRadius();
@ -719,7 +719,7 @@ bool PCB_SHAPE::HitTest( const wxPoint& aPosition, int aAccuracy ) const
break;
}
case PCB_SHAPE_TYPE::CURVE:
case SHAPE_T::BEZIER:
const_cast<PCB_SHAPE*>( this )->RebuildBezierToSegmentsPointsList( m_width );
for( unsigned int i= 1; i < m_bezierPoints.size(); i++)
@ -730,13 +730,13 @@ bool PCB_SHAPE::HitTest( const wxPoint& aPosition, int aAccuracy ) const
break;
case PCB_SHAPE_TYPE::SEGMENT:
case SHAPE_T::SEGMENT:
if( TestSegmentHit( aPosition, m_start, m_end, maxdist ) )
return true;
break;
case PCB_SHAPE_TYPE::RECT:
case SHAPE_T::RECT:
{
std::vector<wxPoint> pts = GetRectCorners();
@ -765,7 +765,7 @@ bool PCB_SHAPE::HitTest( const wxPoint& aPosition, int aAccuracy ) const
break;
}
case PCB_SHAPE_TYPE::POLYGON:
case SHAPE_T::POLY:
if( IsFilled() )
{
return m_poly.Collide( VECTOR2I( aPosition ), maxdist );
@ -780,7 +780,7 @@ bool PCB_SHAPE::HitTest( const wxPoint& aPosition, int aAccuracy ) const
default:
wxFAIL_MSG( "PCB_SHAPE::HitTest (point) not implemented for "
+ PCB_SHAPE_TYPE_T_asString( m_shape ) );
+ SHAPE_T_asString( m_shape ) );
break;
}
@ -799,7 +799,7 @@ bool PCB_SHAPE::HitTest( const EDA_RECT& aRect, bool aContained, int aAccuracy )
switch( m_shape )
{
case PCB_SHAPE_TYPE::CIRCLE:
case SHAPE_T::CIRCLE:
// Test if area intersects or contains the circle:
if( aContained )
{
@ -820,7 +820,7 @@ bool PCB_SHAPE::HitTest( const EDA_RECT& aRect, bool aContained, int aAccuracy )
break;
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
// Test for full containment of this arc in the rect
if( aContained )
{
@ -841,7 +841,7 @@ bool PCB_SHAPE::HitTest( const EDA_RECT& aRect, bool aContained, int aAccuracy )
break;
case PCB_SHAPE_TYPE::RECT:
case SHAPE_T::RECT:
if( aContained )
{
return arect.Contains( bb );
@ -860,7 +860,7 @@ bool PCB_SHAPE::HitTest( const EDA_RECT& aRect, bool aContained, int aAccuracy )
break;
case PCB_SHAPE_TYPE::SEGMENT:
case SHAPE_T::SEGMENT:
if( aContained )
{
return arect.Contains( GetStart() ) && aRect.Contains( GetEnd() );
@ -874,7 +874,7 @@ bool PCB_SHAPE::HitTest( const EDA_RECT& aRect, bool aContained, int aAccuracy )
break;
case PCB_SHAPE_TYPE::POLYGON:
case SHAPE_T::POLY:
if( aContained )
{
return arect.Contains( bb );
@ -923,7 +923,7 @@ bool PCB_SHAPE::HitTest( const EDA_RECT& aRect, bool aContained, int aAccuracy )
break;
case PCB_SHAPE_TYPE::CURVE:
case SHAPE_T::BEZIER:
if( aContained )
{
return arect.Contains( bb );
@ -958,7 +958,7 @@ bool PCB_SHAPE::HitTest( const EDA_RECT& aRect, bool aContained, int aAccuracy )
default:
wxFAIL_MSG( "PCB_SHAPE::HitTest (rect) not implemented for "
+ PCB_SHAPE_TYPE_T_asString( m_shape ) );
+ SHAPE_T_asString( m_shape ) );
break;
}
@ -988,7 +988,7 @@ const BOX2I PCB_SHAPE::ViewBBox() const
{
// For arcs - do not include the center point in the bounding box,
// it is redundant for displaying an arc
if( m_shape == PCB_SHAPE_TYPE::ARC )
if( m_shape == SHAPE_T::ARC )
{
EDA_RECT bbox;
bbox.SetOrigin( m_end );
@ -1125,16 +1125,16 @@ std::vector<SHAPE*> PCB_SHAPE::MakeEffectiveShapes() const
switch( m_shape )
{
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
effectiveShapes.emplace_back( new SHAPE_ARC( GetCenter(), GetArcStart(),
GetAngle() / 10.0, m_width ) );
break;
case PCB_SHAPE_TYPE::SEGMENT:
case SHAPE_T::SEGMENT:
effectiveShapes.emplace_back( new SHAPE_SEGMENT( GetStart(), GetEnd(), m_width ) );
break;
case PCB_SHAPE_TYPE::RECT:
case SHAPE_T::RECT:
{
std::vector<wxPoint> pts = GetRectCorners();
@ -1154,7 +1154,7 @@ std::vector<SHAPE*> PCB_SHAPE::MakeEffectiveShapes() const
break;
}
case PCB_SHAPE_TYPE::CIRCLE:
case SHAPE_T::CIRCLE:
{
if( IsFilled() )
{
@ -1177,7 +1177,7 @@ std::vector<SHAPE*> PCB_SHAPE::MakeEffectiveShapes() const
break;
}
case PCB_SHAPE_TYPE::CURVE:
case SHAPE_T::BEZIER:
{
auto bezierPoints = buildBezierToSegmentsPointsList( GetWidth() );
wxPoint start_pt = bezierPoints[0];
@ -1192,7 +1192,7 @@ std::vector<SHAPE*> PCB_SHAPE::MakeEffectiveShapes() const
break;
}
case PCB_SHAPE_TYPE::POLYGON:
case SHAPE_T::POLY:
{
SHAPE_LINE_CHAIN l = GetPolyShape().COutline( 0 );
FOOTPRINT* parentFootprint = dynamic_cast<FOOTPRINT*>( m_parent );
@ -1219,7 +1219,7 @@ std::vector<SHAPE*> PCB_SHAPE::MakeEffectiveShapes() const
default:
wxFAIL_MSG( "PCB_SHAPE::MakeEffectiveShapes unsupported PCB_SHAPE shape: "
+ PCB_SHAPE_TYPE_T_asString( m_shape ) );
+ SHAPE_T_asString( m_shape ) );
break;
}

View File

@ -76,17 +76,17 @@ public:
{
switch( m_shape )
{
case PCB_SHAPE_TYPE::RECT:
case PCB_SHAPE_TYPE::CIRCLE:
case PCB_SHAPE_TYPE::POLYGON:
case SHAPE_T::RECT:
case SHAPE_T::CIRCLE:
case SHAPE_T::POLY:
return m_filled;
case PCB_SHAPE_TYPE::SEGMENT:
case PCB_SHAPE_TYPE::ARC:
case PCB_SHAPE_TYPE::CURVE:
case SHAPE_T::SEGMENT:
case SHAPE_T::ARC:
case SHAPE_T::BEZIER:
return false;
case PCB_SHAPE_TYPE::LAST: // Make CLang compiler happy
case SHAPE_T::LAST: // Make CLang compiler happy
return false;
}
@ -106,8 +106,8 @@ public:
virtual void SetAngle( double aAngle, bool aUpdateEnd = true );
double GetAngle() const { return m_angle; }
void SetShape( PCB_SHAPE_TYPE aShape ) { m_shape = aShape; }
PCB_SHAPE_TYPE GetShape() const { return m_shape; }
void SetShape( SHAPE_T aShape ) { m_shape = aShape; }
SHAPE_T GetShape() const { return m_shape; }
void SetBezierC1( const wxPoint& aPoint ) { m_bezierC1 = aPoint; }
const wxPoint& GetBezierC1() const { return m_bezierC1; }
@ -344,7 +344,7 @@ protected:
wxPoint m_end; // Line end point or circle and arc start point
wxPoint m_thirdPoint; // Used only for Arcs: arc end point
PCB_SHAPE_TYPE m_shape; // Shape: line, Circle, Arc
SHAPE_T m_shape; // Shape: line, Circle, Arc
double m_angle; // Used only for Arcs: Arc angle in 1/10 deg
wxPoint m_bezierC1; // Bezier Control Point 1
wxPoint m_bezierC2; // Bezier Control Point 2

View File

@ -429,7 +429,7 @@ void BRDITEMS_PLOTTER::PlotDimension( const PCB_DIMENSION_BASE* aDim )
{
const SEG& seg = static_cast<const SHAPE_SEGMENT*>( shape.get() )->GetSeg();
draw.SetShape( PCB_SHAPE_TYPE::SEGMENT );
draw.SetShape( SHAPE_T::SEGMENT );
draw.SetStart( wxPoint( seg.A ) );
draw.SetEnd( wxPoint( seg.B ) );
@ -442,7 +442,7 @@ void BRDITEMS_PLOTTER::PlotDimension( const PCB_DIMENSION_BASE* aDim )
wxPoint start( shape->Centre() );
int radius = static_cast<const SHAPE_CIRCLE*>( shape.get() )->GetRadius();
draw.SetShape( PCB_SHAPE_TYPE::CIRCLE );
draw.SetShape( SHAPE_T::CIRCLE );
draw.SetFilled( false );
draw.SetStart( start );
draw.SetEnd( wxPoint( start.x + radius, start.y ) );
@ -469,7 +469,7 @@ void BRDITEMS_PLOTTER::PlotPcbTarget( const PCB_TARGET* aMire )
PCB_SHAPE draw;
draw.SetShape( PCB_SHAPE_TYPE::CIRCLE );
draw.SetShape( SHAPE_T::CIRCLE );
draw.SetFilled( false );
draw.SetWidth( aMire->GetWidth() );
draw.SetLayer( aMire->GetLayer() );
@ -484,7 +484,7 @@ void BRDITEMS_PLOTTER::PlotPcbTarget( const PCB_TARGET* aMire )
PlotPcbShape( &draw );
draw.SetShape( PCB_SHAPE_TYPE::SEGMENT );
draw.SetShape( SHAPE_T::SEGMENT );
radius = aMire->GetSize() / 2;
dx1 = radius;
@ -557,11 +557,11 @@ void BRDITEMS_PLOTTER::PlotFootprintGraphicItem( const FP_SHAPE* aShape )
switch( aShape->GetShape() )
{
case PCB_SHAPE_TYPE::SEGMENT:
case SHAPE_T::SEGMENT:
m_plotter->ThickSegment( pos, end, thickness, GetPlotMode(), &gbr_metadata );
break;
case PCB_SHAPE_TYPE::RECT:
case SHAPE_T::RECT:
{
std::vector<wxPoint> pts = aShape->GetRectCorners();
@ -585,7 +585,7 @@ void BRDITEMS_PLOTTER::PlotFootprintGraphicItem( const FP_SHAPE* aShape )
}
break;
case PCB_SHAPE_TYPE::CIRCLE:
case SHAPE_T::CIRCLE:
radius = KiROUND( GetLineLength( end, pos ) );
if( aShape->IsFilled() )
@ -595,7 +595,7 @@ void BRDITEMS_PLOTTER::PlotFootprintGraphicItem( const FP_SHAPE* aShape )
break;
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
{
radius = KiROUND( GetLineLength( end, pos ) );
double startAngle = ArcTangente( end.y - pos.y, end.x - pos.x );
@ -614,7 +614,7 @@ void BRDITEMS_PLOTTER::PlotFootprintGraphicItem( const FP_SHAPE* aShape )
}
break;
case PCB_SHAPE_TYPE::POLYGON:
case SHAPE_T::POLY:
if( aShape->IsPolyShapeValid() )
{
const std::vector<wxPoint> &polyPoints = aShape->BuildPolyPointsList();
@ -673,7 +673,7 @@ void BRDITEMS_PLOTTER::PlotFootprintGraphicItem( const FP_SHAPE* aShape )
break;
case PCB_SHAPE_TYPE::CURVE:
case SHAPE_T::BEZIER:
m_plotter->BezierCurve( aShape->GetStart(), aShape->GetBezierC1(),
aShape->GetBezierC2(), aShape->GetEnd(), 0, thickness );
break;
@ -881,11 +881,11 @@ void BRDITEMS_PLOTTER::PlotPcbShape( const PCB_SHAPE* aShape )
switch( aShape->GetShape() )
{
case PCB_SHAPE_TYPE::SEGMENT:
case SHAPE_T::SEGMENT:
m_plotter->ThickSegment( start, end, thickness, GetPlotMode(), &gbr_metadata );
break;
case PCB_SHAPE_TYPE::CIRCLE:
case SHAPE_T::CIRCLE:
radius = KiROUND( GetLineLength( end, start ) );
if( aShape->IsFilled() )
@ -895,7 +895,7 @@ void BRDITEMS_PLOTTER::PlotPcbShape( const PCB_SHAPE* aShape )
break;
case PCB_SHAPE_TYPE::ARC:
case SHAPE_T::ARC:
radius = KiROUND( GetLineLength( end, start ) );
StAngle = ArcTangente( end.y - start.y, end.x - start.x );
EndAngle = StAngle + aShape->GetAngle();
@ -912,12 +912,12 @@ void BRDITEMS_PLOTTER::PlotPcbShape( const PCB_SHAPE* aShape )
}
break;
case PCB_SHAPE_TYPE::CURVE:
case SHAPE_T::BEZIER:
m_plotter->BezierCurve( aShape->GetStart(), aShape->GetBezierC1(),
aShape->GetBezierC2(), aShape->GetEnd(), 0, thickness );
break;
case PCB_SHAPE_TYPE::POLYGON:
case SHAPE_T::POLY:
if( aShape->IsPolyShapeValid() )
{
if( sketch || thickness > 0 )
@ -951,7 +951,7 @@ void BRDITEMS_PLOTTER::PlotPcbShape( const PCB_SHAPE* aShape )
}
break;
case PCB_SHAPE_TYPE::RECT:
case SHAPE_T::RECT:
{
std::vector<wxPoint> pts = aShape->GetRectCorners();

Some files were not shown because too many files have changed in this diff Show More