Remove Millimeter2iu

This commit is contained in:
Marek Roszko 2022-09-16 20:23:10 -04:00
parent 7a5829f8d6
commit 0f2411587e
9 changed files with 110 additions and 115 deletions

View File

@ -184,7 +184,7 @@ bool PGPROPERTY_DISTANCE::StringToDistance( wxVariant& aVariant, const wxString&
break;
case EDA_UNITS::MILLIMETRES:
newValueIU = Millimeter2iu( value );
newValueIU = pcbIUScale.mmToIU( value );
break;
case EDA_UNITS::UNSCALED:

View File

@ -128,19 +128,14 @@ constexpr double IU_PER_MM = SCH_IU_PER_MM;
#ifndef UNKNOWN_IU
constexpr double IU_PER_MILS = (IU_PER_MM * 0.0254);
/// Convert mm to internal units (iu).
constexpr inline int Millimeter2iu( double mm )
{
return (int) ( mm < 0 ? mm * IU_PER_MM - 0.5 : mm * IU_PER_MM + 0.5 );
}
#ifndef SWIG
// The max error is the distance between the middle of a segment, and the circle
// for circle/arc to segment approximation.
// Warning: too small values can create very long calculation time in zone filling
// 0.05 to 0.005 mm are reasonable values
constexpr int ARC_LOW_DEF = Millimeter2iu( 0.02 );
constexpr int ARC_HIGH_DEF = Millimeter2iu( 0.005 );
constexpr int ARC_LOW_DEF = pcbIUScale.mmToIU( 0.02 );
constexpr int ARC_HIGH_DEF = pcbIUScale.mmToIU( 0.005 );
#endif
#endif

View File

@ -32,8 +32,8 @@
template <typename T>
static void IterateOverPositionsAndReferences( T* aItem, void ( *aCallback )( T*, wxPoint ) )
{
constexpr int XSTEP = static_cast<int>( Millimeter2iu( 100 ) );
constexpr int YSTEP = static_cast<int>( Millimeter2iu( 50 ) );
constexpr int XSTEP = static_cast<int>( schIUScale.mmToIU( 100 ) );
constexpr int YSTEP = static_cast<int>( schIUScale.mmToIU( 50 ) );
constexpr int XMIN = -1 * XSTEP;
constexpr int XMAX = 1 * XSTEP;
constexpr int YMIN = -1 * YSTEP;

View File

@ -163,9 +163,9 @@ int playground_main_func( int argc, char* argv[] )
{
const ARC_DATA& d = test_data[i];
SHAPE_ARC arc( VECTOR2D( Millimeter2iu( d.cx ), Millimeter2iu( d.cy ) ),
VECTOR2D( Millimeter2iu( d.sx ), Millimeter2iu( d.sy ) ),
EDA_ANGLE( d.ca, DEGREES_T ), Millimeter2iu( d.w ) );
SHAPE_ARC arc( VECTOR2D( pcbIUScale.mmToIU( d.cx ), pcbIUScale.mmToIU( d.cy ) ),
VECTOR2D( pcbIUScale.mmToIU( d.sx ), pcbIUScale.mmToIU( d.sy ) ),
EDA_ANGLE( d.ca, DEGREES_T ), pcbIUScale.mmToIU( d.w ) );
arcs.push_back( arc );

View File

@ -121,7 +121,7 @@ static const std::vector<GRID_ARRAY_TEST_CASE> grid_geom_cases = {
{
2,
3,
{ Millimeter2iu( 2 ), Millimeter2iu( 2 ) },
{ schIUScale.mmToIU( 2 ), schIUScale.mmToIU( 2 ) },
{ 0, 0 },
1,
true,
@ -130,12 +130,12 @@ static const std::vector<GRID_ARRAY_TEST_CASE> grid_geom_cases = {
},
{ 0, 0 },
{
{ { Millimeter2iu( 0 ), Millimeter2iu( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 2 ), Millimeter2iu( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 0 ), Millimeter2iu( 2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 2 ), Millimeter2iu( 2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 0 ), Millimeter2iu( 4 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 2 ), Millimeter2iu( 4 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 0 ), schIUScale.mmToIU( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 2 ), schIUScale.mmToIU( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 0 ), schIUScale.mmToIU( 2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 2 ), schIUScale.mmToIU( 2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 0 ), schIUScale.mmToIU( 4 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 2 ), schIUScale.mmToIU( 4 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
},
},
{
@ -143,8 +143,8 @@ static const std::vector<GRID_ARRAY_TEST_CASE> grid_geom_cases = {
{
2,
3,
{ Millimeter2iu( 2 ), Millimeter2iu( 2 ) },
{ Millimeter2iu( 0.1 ), Millimeter2iu( 0.2 ) },
{ schIUScale.mmToIU( 2 ), schIUScale.mmToIU( 2 ) },
{ schIUScale.mmToIU( 0.1 ), schIUScale.mmToIU( 0.2 ) },
1,
true,
false,
@ -153,12 +153,12 @@ static const std::vector<GRID_ARRAY_TEST_CASE> grid_geom_cases = {
{ 0, 0 },
{
// add the offsets for each positions
{ { Millimeter2iu( 0 ), Millimeter2iu( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 2 ), Millimeter2iu( 0.2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 0.1 ), Millimeter2iu( 2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 2.1 ), Millimeter2iu( 2.2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 0.2 ), Millimeter2iu( 4.0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 2.2 ), Millimeter2iu( 4.2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 0 ), schIUScale.mmToIU( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 2 ), schIUScale.mmToIU( 0.2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 0.1 ), schIUScale.mmToIU( 2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 2.1 ), schIUScale.mmToIU( 2.2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 0.2 ), schIUScale.mmToIU( 4.0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 2.2 ), schIUScale.mmToIU( 4.2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
},
},
{
@ -166,7 +166,7 @@ static const std::vector<GRID_ARRAY_TEST_CASE> grid_geom_cases = {
{
2,
3,
{ Millimeter2iu( 3 ), Millimeter2iu( 2 ) },
{ schIUScale.mmToIU( 3 ), schIUScale.mmToIU( 2 ) },
{ 0, 0 },
3,
true,
@ -176,12 +176,12 @@ static const std::vector<GRID_ARRAY_TEST_CASE> grid_geom_cases = {
{ 0, 0 },
{
// add the offsets for each positions
{ { Millimeter2iu( 0 ), Millimeter2iu( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 3 ), Millimeter2iu( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 1 ), Millimeter2iu( 2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 4 ), Millimeter2iu( 2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 2 ), Millimeter2iu( 4 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 5 ), Millimeter2iu( 4 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 0 ), schIUScale.mmToIU( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 3 ), schIUScale.mmToIU( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 1 ), schIUScale.mmToIU( 2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 4 ), schIUScale.mmToIU( 2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 2 ), schIUScale.mmToIU( 4 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 5 ), schIUScale.mmToIU( 4 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
},
},
{
@ -189,7 +189,7 @@ static const std::vector<GRID_ARRAY_TEST_CASE> grid_geom_cases = {
{
2,
3,
{ Millimeter2iu( 3 ), Millimeter2iu( 2 ) },
{ schIUScale.mmToIU( 3 ), schIUScale.mmToIU( 2 ) },
{ 0, 0 },
2,
false,
@ -199,12 +199,12 @@ static const std::vector<GRID_ARRAY_TEST_CASE> grid_geom_cases = {
{ 0, 0 },
{
// add the offsets for each positions
{ { Millimeter2iu( 0 ), Millimeter2iu( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 3 ), Millimeter2iu( 1 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 0 ), Millimeter2iu( 2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 3 ), Millimeter2iu( 3 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 0 ), Millimeter2iu( 4 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 3 ), Millimeter2iu( 5 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 0 ), schIUScale.mmToIU( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 3 ), schIUScale.mmToIU( 1 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 0 ), schIUScale.mmToIU( 2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 3 ), schIUScale.mmToIU( 3 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 0 ), schIUScale.mmToIU( 4 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 3 ), schIUScale.mmToIU( 5 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
},
},
{
@ -212,7 +212,7 @@ static const std::vector<GRID_ARRAY_TEST_CASE> grid_geom_cases = {
{
2,
3,
{ Millimeter2iu( 2 ), Millimeter2iu( 2 ) },
{ schIUScale.mmToIU( 2 ), schIUScale.mmToIU( 2 ) },
{ 0, 0 },
1,
true,
@ -221,12 +221,12 @@ static const std::vector<GRID_ARRAY_TEST_CASE> grid_geom_cases = {
},
{ 0, 0 },
{
{ { Millimeter2iu( 0 ), Millimeter2iu( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 2 ), Millimeter2iu( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 2 ), Millimeter2iu( 2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 0 ), Millimeter2iu( 2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 0 ), Millimeter2iu( 4 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 2 ), Millimeter2iu( 4 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 0 ), schIUScale.mmToIU( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 2 ), schIUScale.mmToIU( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 2 ), schIUScale.mmToIU( 2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 0 ), schIUScale.mmToIU( 2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 0 ), schIUScale.mmToIU( 4 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 2 ), schIUScale.mmToIU( 4 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
},
},
{
@ -234,7 +234,7 @@ static const std::vector<GRID_ARRAY_TEST_CASE> grid_geom_cases = {
{
2,
3,
{ Millimeter2iu( 2 ), Millimeter2iu( 2 ) },
{ schIUScale.mmToIU( 2 ), schIUScale.mmToIU( 2 ) },
{ 0, 0 },
1,
true,
@ -243,12 +243,12 @@ static const std::vector<GRID_ARRAY_TEST_CASE> grid_geom_cases = {
},
{ 0, 0 },
{
{ { Millimeter2iu( 0 ), Millimeter2iu( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 0 ), Millimeter2iu( 2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 0 ), Millimeter2iu( 4 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 2 ), Millimeter2iu( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 2 ), Millimeter2iu( 2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( 2 ), Millimeter2iu( 4 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 0 ), schIUScale.mmToIU( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 0 ), schIUScale.mmToIU( 2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 0 ), schIUScale.mmToIU( 4 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 2 ), schIUScale.mmToIU( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 2 ), schIUScale.mmToIU( 2 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 2 ), schIUScale.mmToIU( 4 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
},
},
};
@ -308,13 +308,13 @@ static const std::vector<CIRC_ARRAY_TEST_CASE> circ_geom_cases = {
{ 0, 0 },
false,
},
{ Millimeter2iu( 10 ), 0 },
{ schIUScale.mmToIU( 10 ), 0 },
{
// diamond shape
{ { Millimeter2iu( 0 ), Millimeter2iu( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( -10 ), Millimeter2iu( -10 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( -20 ), Millimeter2iu( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ {Millimeter2iu( -10 ), Millimeter2iu( 10 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 0 ), schIUScale.mmToIU( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( -10 ), schIUScale.mmToIU( -10 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( -20 ), schIUScale.mmToIU( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ {schIUScale.mmToIU( -10 ), schIUScale.mmToIU( 10 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
},
},
{
@ -325,12 +325,12 @@ static const std::vector<CIRC_ARRAY_TEST_CASE> circ_geom_cases = {
{ 0, 0 },
true,
},
{ Millimeter2iu( 10 ), 0 },
{ schIUScale.mmToIU( 10 ), 0 },
{
{ { Millimeter2iu( 0 ), Millimeter2iu( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { Millimeter2iu( -10 ), Millimeter2iu( -10 ) }, EDA_ANGLE( 90.0, DEGREES_T ) },
{ { Millimeter2iu( -20 ), Millimeter2iu( 0 ) }, EDA_ANGLE( 180.0, DEGREES_T ) },
{ {Millimeter2iu( -10 ), Millimeter2iu( 10 ) }, EDA_ANGLE( 270.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 0 ), schIUScale.mmToIU( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( -10 ), schIUScale.mmToIU( -10 ) }, EDA_ANGLE( 90.0, DEGREES_T ) },
{ { schIUScale.mmToIU( -20 ), schIUScale.mmToIU( 0 ) }, EDA_ANGLE( 180.0, DEGREES_T ) },
{ {schIUScale.mmToIU( -10 ), schIUScale.mmToIU( 10 ) }, EDA_ANGLE( 270.0, DEGREES_T ) },
},
},
{
@ -341,12 +341,12 @@ static const std::vector<CIRC_ARRAY_TEST_CASE> circ_geom_cases = {
{ 0, 0 },
true,
},
{ Millimeter2iu( 10 ), 0 },
{ schIUScale.mmToIU( 10 ), 0 },
{
{ { Millimeter2iu( 0 ), Millimeter2iu( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
{ { schIUScale.mmToIU( 0 ), schIUScale.mmToIU( 0 ) }, EDA_ANGLE( 0.0, DEGREES_T ) },
// 10 * [ 1-sin(45), sin(45) ]
{ { Millimeter2iu( -2.9289321881 ), Millimeter2iu( -7.0710678118 ) }, EDA_ANGLE( 45.0, DEGREES_T ) },
{ { Millimeter2iu( -10 ), Millimeter2iu( -10 ) }, EDA_ANGLE( 90.0, DEGREES_T ) },
{ { schIUScale.mmToIU( -2.9289321881 ), schIUScale.mmToIU( -7.0710678118 ) }, EDA_ANGLE( 45.0, DEGREES_T ) },
{ { schIUScale.mmToIU( -10 ), schIUScale.mmToIU( -10 ) }, EDA_ANGLE( 90.0, DEGREES_T ) },
},
},
};

View File

@ -65,8 +65,8 @@ public:
m_pin( &m_symbol ),
m_ercItem( ERC_ITEM::Create( ERCE_DRIVER_CONFLICT ) )
{
m_sheet.SetPosition( wxPoint( Millimeter2iu( 5 ), Millimeter2iu( 10 ) ) );
m_sheet.SetSize( wxSize( Millimeter2iu( 50 ), Millimeter2iu( 100 ) ) );
m_sheet.SetPosition( wxPoint( schIUScale.mmToIU( 5 ), schIUScale.mmToIU( 10 ) ) );
m_sheet.SetSize( wxSize( schIUScale.mmToIU( 50 ), schIUScale.mmToIU( 100 ) ) );
}
EDA_ITEM* Instantiate( KICAD_T aType )
@ -100,7 +100,7 @@ public:
// XXX: m_sheet pins currently have to have their initial positions calculated manually.
return new SCH_SHEET_PIN( &m_sheet,
wxPoint( m_sheet.GetPosition().x,
m_sheet.GetPosition().y + Millimeter2iu( 40 ) ),
m_sheet.GetPosition().y + schIUScale.mmToIU( 40 ) ),
"test aPin" );
case SCH_SHEET_T: return new SCH_SHEET();

View File

@ -110,8 +110,8 @@ static const std::vector<COURTYARD_INVALID_CASE> courtyard_invalid_cases =
{
"U1",
{ // Unclosed polygon
{ { 0, 0 }, { 0, Millimeter2iu( 10 ) } },
{ { 0, Millimeter2iu( 10 ) }, { Millimeter2iu( 10 ), Millimeter2iu( 10 ) } },
{ { 0, 0 }, { 0, pcbIUScale.mmToIU( 10 ) } },
{ { 0, pcbIUScale.mmToIU( 10 ) }, { pcbIUScale.mmToIU( 10 ), pcbIUScale.mmToIU( 10 ) } },
},
{ 0, 0 },
},
@ -129,8 +129,8 @@ static const std::vector<COURTYARD_INVALID_CASE> courtyard_invalid_cases =
{
"U1",
{ // Unclosed polygon - two disjoint segments
{ { 0, 0 }, { 0, Millimeter2iu( 10 ) } },
{ { Millimeter2iu( 10 ), 0 }, { Millimeter2iu( 10 ), Millimeter2iu( 10 ) } },
{ { 0, 0 }, { 0, pcbIUScale.mmToIU( 10 ) } },
{ { pcbIUScale.mmToIU( 10 ), 0 }, { pcbIUScale.mmToIU( 10 ), pcbIUScale.mmToIU( 10 ) } },
},
{ 0, 0 },
},
@ -150,14 +150,14 @@ static const std::vector<COURTYARD_INVALID_CASE> courtyard_invalid_cases =
{ // Closed polygon - triangle
{
{ 0, 0 },
{ 0, Millimeter2iu( 10 ) },
{ 0, pcbIUScale.mmToIU( 10 ) },
},
{
{ 0, Millimeter2iu( 10 ) },
{ Millimeter2iu( 10 ), Millimeter2iu( 10 ) }
{ 0, pcbIUScale.mmToIU( 10 ) },
{ pcbIUScale.mmToIU( 10 ), pcbIUScale.mmToIU( 10 ) }
},
{
{ Millimeter2iu( 10 ), Millimeter2iu( 10 ) },
{ pcbIUScale.mmToIU( 10 ), pcbIUScale.mmToIU( 10 ) },
{ 0, 0 }
},
},
@ -168,7 +168,7 @@ static const std::vector<COURTYARD_INVALID_CASE> courtyard_invalid_cases =
{ // Un-Closed polygon - one seg
{
{ 0, 0 },
{ 0, Millimeter2iu( 10 ) },
{ 0, pcbIUScale.mmToIU( 10 ) },
},
},
{ 0, 0 },
@ -197,7 +197,7 @@ std::unique_ptr<FOOTPRINT> MakeInvalidCourtyardTestFP( BOARD& aBoard,
for( const SEG& seg : aFPDef.m_segs )
{
const PCB_LAYER_ID layer = F_CrtYd; // aRect.m_front ? F_CrtYd : B_CrtYd;
const int width = Millimeter2iu( 0.1 );
const int width = pcbIUScale.mmToIU( 0.1 );
KI_TEST::DrawSegment( *footprint, seg, width, layer );
}

View File

@ -98,7 +98,7 @@ void AddRectCourtyard( FOOTPRINT& aFootprint, const RECT_DEFINITION& aRect )
{
const PCB_LAYER_ID layer = aRect.m_front ? F_CrtYd : B_CrtYd;
const int width = Millimeter2iu( 0.1 );
const int width = pcbIUScale.mmToIU( 0.1 );
KI_TEST::DrawRect( aFootprint, aRect.m_centre, aRect.m_size, aRect.m_corner_rad, width, layer );
}
@ -177,7 +177,7 @@ static std::vector<COURTYARD_OVERLAP_TEST_CASE> courtyard_cases = {
{
{
{ 0, 0 },
{ Millimeter2iu( 1 ), Millimeter2iu( 1 ) },
{ pcbIUScale.mmToIU( 1 ), pcbIUScale.mmToIU( 1 ) },
0,
true,
},
@ -195,7 +195,7 @@ static std::vector<COURTYARD_OVERLAP_TEST_CASE> courtyard_cases = {
{
{
{ 0, 0 },
{ Millimeter2iu( 1 ), Millimeter2iu( 1 ) },
{ pcbIUScale.mmToIU( 1 ), pcbIUScale.mmToIU( 1 ) },
0,
true,
},
@ -207,12 +207,12 @@ static std::vector<COURTYARD_OVERLAP_TEST_CASE> courtyard_cases = {
{
{
{ 0, 0 },
{ Millimeter2iu( 1 ), Millimeter2iu( 1 ) },
{ pcbIUScale.mmToIU( 1 ), pcbIUScale.mmToIU( 1 ) },
0,
true,
},
},
{ Millimeter2iu( 3 ), Millimeter2iu( 1 ) }, // One footprint is far from the other
{ pcbIUScale.mmToIU( 3 ), pcbIUScale.mmToIU( 1 ) }, // One footprint is far from the other
},
},
{}, // no collisions
@ -225,7 +225,7 @@ static std::vector<COURTYARD_OVERLAP_TEST_CASE> courtyard_cases = {
{
{
{ 0, 0 },
{ Millimeter2iu( 1 ), Millimeter2iu( 1 ) },
{ pcbIUScale.mmToIU( 1 ), pcbIUScale.mmToIU( 1 ) },
0,
true,
},
@ -237,12 +237,12 @@ static std::vector<COURTYARD_OVERLAP_TEST_CASE> courtyard_cases = {
{
{
{ 0, 0 },
{ Millimeter2iu( 1 ), Millimeter2iu( 1 ) },
{ pcbIUScale.mmToIU( 1 ), pcbIUScale.mmToIU( 1 ) },
0,
true,
},
},
{ Millimeter2iu( 1 ), Millimeter2iu( 0 ) }, // Just touching
{ pcbIUScale.mmToIU( 1 ), pcbIUScale.mmToIU( 0 ) }, // Just touching
},
},
{}, // Touching means not colliding
@ -255,7 +255,7 @@ static std::vector<COURTYARD_OVERLAP_TEST_CASE> courtyard_cases = {
{
{
{ 0, 0 },
{ Millimeter2iu( 1 ), Millimeter2iu( 1 ) },
{ pcbIUScale.mmToIU( 1 ), pcbIUScale.mmToIU( 1 ) },
0,
true,
},
@ -267,12 +267,12 @@ static std::vector<COURTYARD_OVERLAP_TEST_CASE> courtyard_cases = {
{
{
{ 0, 0 },
{ Millimeter2iu( 1 ), Millimeter2iu( 1 ) },
{ pcbIUScale.mmToIU( 1 ), pcbIUScale.mmToIU( 1 ) },
0,
true,
},
},
{ Millimeter2iu( 0.5 ), Millimeter2iu( 0 ) }, // Partial overlap
{ pcbIUScale.mmToIU( 0.5 ), pcbIUScale.mmToIU( 0 ) }, // Partial overlap
},
},
{
@ -287,7 +287,7 @@ static std::vector<COURTYARD_OVERLAP_TEST_CASE> courtyard_cases = {
{
{
{ 0, 0 },
{ Millimeter2iu( 1 ), Millimeter2iu( 1 ) },
{ pcbIUScale.mmToIU( 1 ), pcbIUScale.mmToIU( 1 ) },
0,
true,
},
@ -299,7 +299,7 @@ static std::vector<COURTYARD_OVERLAP_TEST_CASE> courtyard_cases = {
{
{
{ 0, 0 },
{ Millimeter2iu( 1 ), Millimeter2iu( 1 ) },
{ pcbIUScale.mmToIU( 1 ), pcbIUScale.mmToIU( 1 ) },
0,
false,
},
@ -317,13 +317,13 @@ static std::vector<COURTYARD_OVERLAP_TEST_CASE> courtyard_cases = {
{
{
{ 0, 0 },
{ Millimeter2iu( 1 ), Millimeter2iu( 1 ) },
{ pcbIUScale.mmToIU( 1 ), pcbIUScale.mmToIU( 1 ) },
0,
true,
},
{
{ Millimeter2iu( 2 ), Millimeter2iu( 0 ) },
{ Millimeter2iu( 1 ), Millimeter2iu( 1 ) },
{ pcbIUScale.mmToIU( 2 ), pcbIUScale.mmToIU( 0 ) },
{ pcbIUScale.mmToIU( 1 ), pcbIUScale.mmToIU( 1 ) },
0,
true,
},
@ -335,7 +335,7 @@ static std::vector<COURTYARD_OVERLAP_TEST_CASE> courtyard_cases = {
{
{
{ 0, 0 },
{ Millimeter2iu( 1 ), Millimeter2iu( 1 ) },
{ pcbIUScale.mmToIU( 1 ), pcbIUScale.mmToIU( 1 ) },
0,
true,
},
@ -356,8 +356,8 @@ static std::vector<COURTYARD_OVERLAP_TEST_CASE> courtyard_cases = {
{
{
{ 0, 0 },
{ Millimeter2iu( 1 ), Millimeter2iu( 1 ) },
Millimeter2iu( 0.5 ),
{ pcbIUScale.mmToIU( 1 ), pcbIUScale.mmToIU( 1 ) },
pcbIUScale.mmToIU( 0.5 ),
true,
},
},
@ -367,9 +367,9 @@ static std::vector<COURTYARD_OVERLAP_TEST_CASE> courtyard_cases = {
"U2",
{
{
{ Millimeter2iu( 0.9 ), Millimeter2iu( 0.9 ) },
{ Millimeter2iu( 1 ), Millimeter2iu( 1 ) },
Millimeter2iu( 0.5 ),
{ pcbIUScale.mmToIU( 0.9 ), pcbIUScale.mmToIU( 0.9 ) },
{ pcbIUScale.mmToIU( 1 ), pcbIUScale.mmToIU( 1 ) },
pcbIUScale.mmToIU( 0.5 ),
true,
},
},

View File

@ -90,10 +90,10 @@ public:
{
FP_ZONE* fpZone = new FP_ZONE( &m_footprint );
fpZone->AppendCorner( wxPoint( Millimeter2iu( -100 ), Millimeter2iu( -50 ) ), -1 );
fpZone->AppendCorner( wxPoint( Millimeter2iu( -100 ), Millimeter2iu( 50 ) ), -1 );
fpZone->AppendCorner( wxPoint( Millimeter2iu( 100 ), Millimeter2iu( 50 ) ), -1 );
fpZone->AppendCorner( wxPoint( Millimeter2iu( 100 ), Millimeter2iu( -50 ) ), -1 );
fpZone->AppendCorner( wxPoint( pcbIUScale.mmToIU( -100 ), pcbIUScale.mmToIU( -50 ) ), -1 );
fpZone->AppendCorner( wxPoint( pcbIUScale.mmToIU( -100 ), pcbIUScale.mmToIU( 50 ) ), -1 );
fpZone->AppendCorner( wxPoint( pcbIUScale.mmToIU( 100 ), pcbIUScale.mmToIU( 50 ) ), -1 );
fpZone->AppendCorner( wxPoint( pcbIUScale.mmToIU( 100 ), pcbIUScale.mmToIU( -50 ) ), -1 );
return fpZone;
}
@ -112,10 +112,10 @@ public:
{
ZONE* zone = new ZONE( &m_board );
zone->AppendCorner( wxPoint( Millimeter2iu( -100 ), Millimeter2iu( -50 ) ), -1 );
zone->AppendCorner( wxPoint( Millimeter2iu( -100 ), Millimeter2iu( 50 ) ), -1 );
zone->AppendCorner( wxPoint( Millimeter2iu( 100 ), Millimeter2iu( 50 ) ), -1 );
zone->AppendCorner( wxPoint( Millimeter2iu( 100 ), Millimeter2iu( -50 ) ), -1 );
zone->AppendCorner( wxPoint( pcbIUScale.mmToIU( -100 ), pcbIUScale.mmToIU( -50 ) ), -1 );
zone->AppendCorner( wxPoint( pcbIUScale.mmToIU( -100 ), pcbIUScale.mmToIU( 50 ) ), -1 );
zone->AppendCorner( wxPoint( pcbIUScale.mmToIU( 100 ), pcbIUScale.mmToIU( 50 ) ), -1 );
zone->AppendCorner( wxPoint( pcbIUScale.mmToIU( 100 ), pcbIUScale.mmToIU( -50 ) ), -1 );
return zone;
}