Minor editorial changes in PCB calculator, part 1

This commit is contained in:
Mikolaj Wielgus 2021-10-15 00:54:17 +02:00 committed by Seth Hillbrand
parent 25c8b58e68
commit 2fa9aefde2
18 changed files with 112 additions and 107 deletions

View File

@ -1,10 +1,11 @@
// Do not edit this file, it is autogenerated by CMake from the .md file // Do not edit this file, it is autogenerated by CMake from the .md file
_HKI( "### Bridged Tee Attenuator\n" _HKI( "### Bridged Tee Attenuator\n"
"__Zin__ desired input impedance in &#x2126;<br>\n" "___a___ is attenuation in dB \n"
"__Zout__ desired output impedance<br>\n" "___Z<sub>in</sub>___ is desired input impedance in &#x2126; \n"
"__Z<sub>0</sub> = Zin = Zout__<br><br>\n" "___Z<sub>out</sub>___ is desired output impedance in &#x2126; \n"
"___Z<sub>0</sub> = Z<sub>in</sub> = Z<sub>out</sub>___ \n"
"\n" "\n"
"* __a__ attenuation in dB\n" "___L = 10<sup>a/20</up>___\n"
"* __L = 10<sup>a/20</sup>__ (the loss)<br><br>\n" "___R<sub>1</sub> = Z<sub>0</sub> &sdot; (L&minus;1)___ \n"
"* ___R1 = Z<sub>0</sub> \\* (L - 1)___\n" "___R<sub>2</sub> = Z<sub>0</sub> / (L&minus;1)___\n"
"* ___R2 = Z<sub>0</sub> / (L - 1)___" ); "" );

View File

@ -1,9 +1,9 @@
### Bridged Tee Attenuator ### Bridged Tee Attenuator
__Zin__ desired input impedance in &#x2126;<br> ___a___ is attenuation in dB
__Zout__ desired output impedance<br> ___Z<sub>in</sub>___ is desired input impedance in &#x2126;
__Z<sub>0</sub> = Zin = Zout__<br><br> ___Z<sub>out</sub>___ is desired output impedance in &#x2126;
___Z<sub>0</sub> = Z<sub>in</sub> = Z<sub>out</sub>___
* __a__ attenuation in dB ___L = 10<sup>a/20</up>___
* __L = 10<sup>a/20</sup>__ (the loss)<br><br> ___R<sub>1</sub> = Z<sub>0</sub> &sdot; (L&minus;1)___
* ___R1 = Z<sub>0</sub> \* (L - 1)___ ___R<sub>2</sub> = Z<sub>0</sub> / (L&minus;1)___
* ___R2 = Z<sub>0</sub> / (L - 1)___

View File

@ -1,12 +1,12 @@
// Do not edit this file, it is autogenerated by CMake from the .md file // Do not edit this file, it is autogenerated by CMake from the .md file
_HKI( "### PI Attenuator\n" _HKI( "### Pi Attenuator\n"
"__Zin__ desired input impedance in &#x2126;<br>\n" "___a___ is attenuation in dB \n"
"__Zout__ desired output impedance<br>\n" "___Z<sub>in</sub>___ is desired input impedance in &#x2126; \n"
"__Zin = Zout__<br><br>\n" "___Z<sub>out</sub>___ is desired output impedance in &#x2126; \n"
"\n" "\n"
"* __a__ attenuation in dB\n" "___L = 10<sup>a/20</sup>___ \n"
"* __L = 10<sup>a/20</sup>__ (the loss)\n" "___A = (L+1) / (L&minus;1)___ \n"
"* __A = (L + 1) / (L - 1)__<br><br>\n" "___R<sub>2</sub> = (L&minus;1) / 2&sdot;&radic;(Z<sub>in</sub> &sdot; Z<sub>out</sub> / L)___ \n"
"* ___R2 = (L- 1) / 2 \\* &radic; ( (Zin \\* Zout) / L)___\n" "___R<sub>1</sub> = 1 / (A/Z<sub>in</sub> &minus; 1/R<sub>2</sub>)___ \n"
"* ___R1 = 1 / (A / Zin - 1 / R2)___\n" "___R<sub>3</sub> = 1 / (A/Z<sub>out</sub> &minus; 1/R<sub>2</sub>)___\n"
"* ___R3 = 1 / (A / Zout - 1 / R2)___" ); "" );

View File

@ -1,11 +1,10 @@
### PI Attenuator ### Pi Attenuator
__Zin__ desired input impedance in &#x2126;<br> ___a___ is attenuation in dB
__Zout__ desired output impedance<br> ___Z<sub>in</sub>___ is desired input impedance in &#x2126;
__Zin = Zout__<br><br> ___Z<sub>out</sub>___ is desired output impedance in &#x2126;
* __a__ attenuation in dB ___L = 10<sup>a/20</sup>___
* __L = 10<sup>a/20</sup>__ (the loss) ___A = (L+1) / (L&minus;1)___
* __A = (L + 1) / (L - 1)__<br><br> ___R<sub>2</sub> = (L&minus;1) / 2&sdot;&radic;(Z<sub>in</sub> &sdot; Z<sub>out</sub> / L)___
* ___R2 = (L- 1) / 2 \* &radic; ( (Zin \* Zout) / L)___ ___R<sub>1</sub> = 1 / (A/Z<sub>in</sub> &minus; 1/R<sub>2</sub>)___
* ___R1 = 1 / (A / Zin - 1 / R2)___ ___R<sub>3</sub> = 1 / (A/Z<sub>out</sub> &minus; 1/R<sub>2</sub>)___
* ___R3 = 1 / (A / Zout - 1 / R2)___

View File

@ -1,9 +1,9 @@
// Do not edit this file, it is autogenerated by CMake from the .md file // Do not edit this file, it is autogenerated by CMake from the .md file
_HKI( "### Split Attenuator\n" _HKI( "### Split Attenuator\n"
"#### Attenuation is 6dB\n" "Attenuation is 6 dB \n"
"___Z<sub>in</sub>___ desired input impedance in &#x2126;<br>\n" "___Z<sub>in</sub>___ is desired input impedance in &#x2126; \n"
"___Z<sub>out</sub>___ desired output impedance in &#x2126;<br>\n" "___Z<sub>out</sub>___ is desired output impedance in &#x2126; \n"
"___Z<sub>in</sub> = Z<sub>out</sub>___\n" "___Z<sub>0</sub> = Z<sub>in</sub> = Z<sub>out</sub>___\n"
"\n" "\n"
"___R1 = R2 = R3 = Z<sub>out</sub> / 3___\n" "___R<sub>1</sub> = R<sub>2</sub> = R<sub>3</sub> = Z<sub>0</sub>/3___\n"
"" ); "" );

View File

@ -1,7 +1,7 @@
### Split Attenuator ### Split Attenuator
#### Attenuation is 6dB Attenuation is 6 dB
___Z<sub>in</sub>___ desired input impedance in &#x2126;<br> ___Z<sub>in</sub>___ is desired input impedance in &#x2126;
___Z<sub>out</sub>___ desired output impedance in &#x2126;<br> ___Z<sub>out</sub>___ is desired output impedance in &#x2126;
___Z<sub>in</sub> = Z<sub>out</sub>___ ___Z<sub>0</sub> = Z<sub>in</sub> = Z<sub>out</sub>___
___R1 = R2 = R3 = Z<sub>out</sub> / 3___ ___R<sub>1</sub> = R<sub>2</sub> = R<sub>3</sub> = Z<sub>0</sub>/3___

View File

@ -1,13 +1,12 @@
// Do not edit this file, it is autogenerated by CMake from the .md file // Do not edit this file, it is autogenerated by CMake from the .md file
_HKI( "### Tee Attenuator\n" _HKI( "### Tee Attenuator\n"
"__Zin__ desired input impedance in &#x2126;<br>\n" "___a___ is attenuation in dB \n"
"__Zout__ desired output impedance<br>\n" "___Z<sub>in</sub>___ is desired input impedance in &#x2126; \n"
"__Zin = Zout__<br><br>\n" "___Z<sub>out</sub>___ is desired output impedance in &#x2126;\n"
"\n" "\n"
"* __a__ attenuation in dB\n" "___L = 10<sup>a/20</sup>___ \n"
"* __L = 10<sup>a/20</sup>__ (the loss)\n" "___A = (L+1) / (L&minus;1)___ \n"
"* ___A = (L + 1) / (L - 1)___<br><br>\n" "___R<sub>2</sub> = 2&sdot;&radic;(L &sdot; Z<sub>in</sub> &sdot; Z<sub>out</sub>) / (L&minus;1)___ \n"
"* ___R2 = 2 &radic; (L \\* Z<sub>in</sub> \\* Z<sub>out</sub> ) / (L - 1)___\n" "___R<sub>1</sub> = Z<sub>in</sub> &sdot; A &minus; R<sub>2</sub>___ \n"
"* ___R1 = Z<sub>in</sub> \\* A - R2___\n" "___R<sub>3</sub> = Z<sub>out</sub> &sdot; A &minus; R<sub>2</sub>___\n"
"* ___R3 = Z<sub>out</sub> \\* A - R2___\n"
"" ); "" );

View File

@ -1,11 +1,10 @@
### Tee Attenuator ### Tee Attenuator
__Zin__ desired input impedance in &#x2126;<br> ___a___ is attenuation in dB
__Zout__ desired output impedance<br> ___Z<sub>in</sub>___ is desired input impedance in &#x2126;
__Zin = Zout__<br><br> ___Z<sub>out</sub>___ is desired output impedance in &#x2126;
* __a__ attenuation in dB ___L = 10<sup>a/20</sup>___
* __L = 10<sup>a/20</sup>__ (the loss) ___A = (L+1) / (L&minus;1)___
* ___A = (L + 1) / (L - 1)___<br><br> ___R<sub>2</sub> = 2&sdot;&radic;(L &sdot; Z<sub>in</sub> &sdot; Z<sub>out</sub>) / (L&minus;1)___
* ___R2 = 2 &radic; (L \* Z<sub>in</sub> \* Z<sub>out</sub> ) / (L - 1)___ ___R<sub>1</sub> = Z<sub>in</sub> &sdot; A &minus; R<sub>2</sub>___
* ___R1 = Z<sub>in</sub> \* A - R2___ ___R<sub>3</sub> = Z<sub>out</sub> &sdot; A &minus; R<sub>2</sub>___
* ___R3 = Z<sub>out</sub> \* A - R2___

View File

@ -1,5 +1,5 @@
/////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////
// C++ code generated with wxFormBuilder (version 3.10.0-4761b0c5) // C++ code generated with wxFormBuilder (version 3.10.0)
// http://www.wxformbuilder.org/ // http://www.wxformbuilder.org/
// //
// PLEASE DO *NOT* EDIT THIS FILE! // PLEASE DO *NOT* EDIT THIS FILE!
@ -45,7 +45,7 @@ PANEL_ATTENUATORS_BASE::PANEL_ATTENUATORS_BASE( wxWindow* parent, wxWindowID id,
fgSizerAttPrms->SetFlexibleDirection( wxBOTH ); fgSizerAttPrms->SetFlexibleDirection( wxBOTH );
fgSizerAttPrms->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED ); fgSizerAttPrms->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
m_attenuationLabel = new wxStaticText( sbSizerAttPrms->GetStaticBox(), wxID_ANY, _("Attenuation:"), wxDefaultPosition, wxDefaultSize, 0 ); m_attenuationLabel = new wxStaticText( sbSizerAttPrms->GetStaticBox(), wxID_ANY, _("Attenuation (a):"), wxDefaultPosition, wxDefaultSize, 0 );
m_attenuationLabel->Wrap( -1 ); m_attenuationLabel->Wrap( -1 );
fgSizerAttPrms->Add( m_attenuationLabel, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 ); fgSizerAttPrms->Add( m_attenuationLabel, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );

View File

@ -212,11 +212,11 @@
<property name="name">bMiddleSizerAtt</property> <property name="name">bMiddleSizerAtt</property>
<property name="orient">wxVERTICAL</property> <property name="orient">wxVERTICAL</property>
<property name="permission">none</property> <property name="permission">none</property>
<object class="sizeritem" expanded="0"> <object class="sizeritem" expanded="1">
<property name="border">5</property> <property name="border">5</property>
<property name="flag">wxEXPAND|wxTOP|wxBOTTOM|wxRIGHT</property> <property name="flag">wxEXPAND|wxTOP|wxBOTTOM|wxRIGHT</property>
<property name="proportion">0</property> <property name="proportion">0</property>
<object class="wxStaticBoxSizer" expanded="0"> <object class="wxStaticBoxSizer" expanded="1">
<property name="id">wxID_ANY</property> <property name="id">wxID_ANY</property>
<property name="label">Parameters</property> <property name="label">Parameters</property>
<property name="minimum_size"></property> <property name="minimum_size"></property>
@ -224,11 +224,11 @@
<property name="orient">wxVERTICAL</property> <property name="orient">wxVERTICAL</property>
<property name="parent">1</property> <property name="parent">1</property>
<property name="permission">none</property> <property name="permission">none</property>
<object class="sizeritem" expanded="0"> <object class="sizeritem" expanded="1">
<property name="border">5</property> <property name="border">5</property>
<property name="flag">wxEXPAND|wxBOTTOM</property> <property name="flag">wxEXPAND|wxBOTTOM</property>
<property name="proportion">0</property> <property name="proportion">0</property>
<object class="wxFlexGridSizer" expanded="0"> <object class="wxFlexGridSizer" expanded="1">
<property name="cols">3</property> <property name="cols">3</property>
<property name="flexible_direction">wxBOTH</property> <property name="flexible_direction">wxBOTH</property>
<property name="growablecols"></property> <property name="growablecols"></property>
@ -272,7 +272,7 @@
<property name="gripper">0</property> <property name="gripper">0</property>
<property name="hidden">0</property> <property name="hidden">0</property>
<property name="id">wxID_ANY</property> <property name="id">wxID_ANY</property>
<property name="label">Attenuation:</property> <property name="label">Attenuation (a):</property>
<property name="markup">0</property> <property name="markup">0</property>
<property name="max_size"></property> <property name="max_size"></property>
<property name="maximize_button">0</property> <property name="maximize_button">0</property>

View File

@ -1,5 +1,5 @@
/////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////
// C++ code generated with wxFormBuilder (version 3.10.0-4761b0c5) // C++ code generated with wxFormBuilder (version 3.10.0)
// http://www.wxformbuilder.org/ // http://www.wxformbuilder.org/
// //
// PLEASE DO *NOT* EDIT THIS FILE! // PLEASE DO *NOT* EDIT THIS FILE!

View File

@ -53,10 +53,12 @@ PANEL_TRACK_WIDTH::PANEL_TRACK_WIDTH( wxWindow* parent, wxWindowID id,
m_TWNested( false ) m_TWNested( false )
{ {
m_trackTempUnits->SetLabel( wxT( "°C" ) ); m_trackTempUnits->SetLabel( wxT( "°C" ) );
m_resistivityUnits->SetLabel( wxT( "Ωm" ) ); m_resistivityUnits->SetLabel( wxT( "Ωm" ) );
m_extTrackResUnits->SetLabel( wxT( "" ) ); m_extTrackResUnits->SetLabel( wxT( "Ω" ) );
m_intTrackResUnits->SetLabel( wxT( "" ) ); m_intTrackResUnits->SetLabel( wxT( "Ω" ) );
m_staticText63->SetLabel( _( "Temperature rise" ) + wxT( " (ΔT):" ) );
// Needed on wxWidgets 3.0 to ensure sizers are correctly set // Needed on wxWidgets 3.0 to ensure sizers are correctly set
GetSizer()->SetSizeHints( this ); GetSizer()->SetSizeHints( this );

View File

@ -1,5 +1,5 @@
/////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////
// C++ code generated with wxFormBuilder (version 3.10.0-4761b0c5) // C++ code generated with wxFormBuilder (version 3.10.0)
// http://www.wxformbuilder.org/ // http://www.wxformbuilder.org/
// //
// PLEASE DO *NOT* EDIT THIS FILE! // PLEASE DO *NOT* EDIT THIS FILE!
@ -28,7 +28,7 @@ PANEL_TRACK_WIDTH_BASE::PANEL_TRACK_WIDTH_BASE( wxWindow* parent, wxWindowID id,
fgSizerTWprms->SetFlexibleDirection( wxBOTH ); fgSizerTWprms->SetFlexibleDirection( wxBOTH );
fgSizerTWprms->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED ); fgSizerTWprms->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
m_staticTextCurrent = new wxStaticText( sbSizerTW_Prms->GetStaticBox(), wxID_ANY, _("Current:"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticTextCurrent = new wxStaticText( sbSizerTW_Prms->GetStaticBox(), wxID_ANY, _("Current (I):"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextCurrent->Wrap( -1 ); m_staticTextCurrent->Wrap( -1 );
fgSizerTWprms->Add( m_staticTextCurrent, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxBOTTOM, 5 ); fgSizerTWprms->Add( m_staticTextCurrent, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxBOTTOM, 5 );
@ -51,6 +51,7 @@ PANEL_TRACK_WIDTH_BASE::PANEL_TRACK_WIDTH_BASE( wxWindow* parent, wxWindowID id,
fgSizerTWprms->Add( m_trackTempUnits, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT, 5 ); fgSizerTWprms->Add( m_trackTempUnits, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT, 5 );
m_staticText66 = new wxStaticText( sbSizerTW_Prms->GetStaticBox(), wxID_ANY, _("Conductor length:"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText66 = new wxStaticText( sbSizerTW_Prms->GetStaticBox(), wxID_ANY, _("Conductor length:"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticText66->SetLabelMarkup( _("Conductor length:") );
m_staticText66->Wrap( -1 ); m_staticText66->Wrap( -1 );
fgSizerTWprms->Add( m_staticText66, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxBOTTOM, 5 ); fgSizerTWprms->Add( m_staticText66, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxBOTTOM, 5 );
@ -67,6 +68,8 @@ PANEL_TRACK_WIDTH_BASE::PANEL_TRACK_WIDTH_BASE( wxWindow* parent, wxWindowID id,
fgSizerTWprms->Add( m_staticText103, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxBOTTOM, 5 ); fgSizerTWprms->Add( m_staticText103, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxBOTTOM, 5 );
m_TWResistivity = new wxTextCtrl( sbSizerTW_Prms->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_READONLY ); m_TWResistivity = new wxTextCtrl( sbSizerTW_Prms->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_READONLY );
m_TWResistivity->Enable( false );
fgSizerTWprms->Add( m_TWResistivity, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 ); fgSizerTWprms->Add( m_TWResistivity, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
m_resistivityUnits = new wxStaticText( sbSizerTW_Prms->GetStaticBox(), wxID_ANY, _("ohm-meter"), wxDefaultPosition, wxDefaultSize, 0 ); m_resistivityUnits = new wxStaticText( sbSizerTW_Prms->GetStaticBox(), wxID_ANY, _("ohm-meter"), wxDefaultPosition, wxDefaultSize, 0 );
@ -97,7 +100,7 @@ PANEL_TRACK_WIDTH_BASE::PANEL_TRACK_WIDTH_BASE( wxWindow* parent, wxWindowID id,
fgSizerTW_Results->SetFlexibleDirection( wxBOTH ); fgSizerTW_Results->SetFlexibleDirection( wxBOTH );
fgSizerTW_Results->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED ); fgSizerTW_Results->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
m_staticTextExtWidth = new wxStaticText( sbSizerTW_Result->GetStaticBox(), wxID_ANY, _("Trace width:"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticTextExtWidth = new wxStaticText( sbSizerTW_Result->GetStaticBox(), wxID_ANY, _("Trace width (W):"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextExtWidth->Wrap( -1 ); m_staticTextExtWidth->Wrap( -1 );
m_staticTextExtWidth->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) ); m_staticTextExtWidth->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
@ -111,7 +114,7 @@ PANEL_TRACK_WIDTH_BASE::PANEL_TRACK_WIDTH_BASE( wxWindow* parent, wxWindowID id,
m_TW_ExtTrackWidth_choiceUnit->SetSelection( 0 ); m_TW_ExtTrackWidth_choiceUnit->SetSelection( 0 );
fgSizerTW_Results->Add( m_TW_ExtTrackWidth_choiceUnit, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxRIGHT|wxLEFT, 5 ); fgSizerTW_Results->Add( m_TW_ExtTrackWidth_choiceUnit, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxRIGHT|wxLEFT, 5 );
m_staticText65 = new wxStaticText( sbSizerTW_Result->GetStaticBox(), wxID_ANY, _("Trace thickness:"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText65 = new wxStaticText( sbSizerTW_Result->GetStaticBox(), wxID_ANY, _("Trace thickness (H):"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticText65->Wrap( -1 ); m_staticText65->Wrap( -1 );
fgSizerTW_Results->Add( m_staticText65, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxBOTTOM|wxRIGHT|wxLEFT, 5 ); fgSizerTW_Results->Add( m_staticText65, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
@ -195,7 +198,7 @@ PANEL_TRACK_WIDTH_BASE::PANEL_TRACK_WIDTH_BASE( wxWindow* parent, wxWindowID id,
fgSizerTW_Results1->SetFlexibleDirection( wxBOTH ); fgSizerTW_Results1->SetFlexibleDirection( wxBOTH );
fgSizerTW_Results1->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED ); fgSizerTW_Results1->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
m_staticTextIntWidth = new wxStaticText( sbSizerTW_Result1->GetStaticBox(), wxID_ANY, _("Trace width:"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticTextIntWidth = new wxStaticText( sbSizerTW_Result1->GetStaticBox(), wxID_ANY, _("Trace width (W):"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextIntWidth->Wrap( -1 ); m_staticTextIntWidth->Wrap( -1 );
m_staticTextIntWidth->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) ); m_staticTextIntWidth->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
@ -209,7 +212,7 @@ PANEL_TRACK_WIDTH_BASE::PANEL_TRACK_WIDTH_BASE( wxWindow* parent, wxWindowID id,
m_TW_IntTrackWidth_choiceUnit->SetSelection( 0 ); m_TW_IntTrackWidth_choiceUnit->SetSelection( 0 );
fgSizerTW_Results1->Add( m_TW_IntTrackWidth_choiceUnit, 0, wxEXPAND|wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 ); fgSizerTW_Results1->Add( m_TW_IntTrackWidth_choiceUnit, 0, wxEXPAND|wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
m_staticText652 = new wxStaticText( sbSizerTW_Result1->GetStaticBox(), wxID_ANY, _("Trace thickness:"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText652 = new wxStaticText( sbSizerTW_Result1->GetStaticBox(), wxID_ANY, _("Trace thickness (H):"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticText652->Wrap( -1 ); m_staticText652->Wrap( -1 );
fgSizerTW_Results1->Add( m_staticText652, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxALL, 5 ); fgSizerTW_Results1->Add( m_staticText652, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxALL, 5 );

View File

@ -70,7 +70,7 @@
<property name="border">5</property> <property name="border">5</property>
<property name="flag">wxALL|wxEXPAND</property> <property name="flag">wxALL|wxEXPAND</property>
<property name="proportion">0</property> <property name="proportion">0</property>
<object class="wxStaticBoxSizer" expanded="0"> <object class="wxStaticBoxSizer" expanded="1">
<property name="id">wxID_ANY</property> <property name="id">wxID_ANY</property>
<property name="label">Parameters</property> <property name="label">Parameters</property>
<property name="minimum_size"></property> <property name="minimum_size"></property>
@ -78,11 +78,11 @@
<property name="orient">wxVERTICAL</property> <property name="orient">wxVERTICAL</property>
<property name="parent">1</property> <property name="parent">1</property>
<property name="permission">none</property> <property name="permission">none</property>
<object class="sizeritem" expanded="0"> <object class="sizeritem" expanded="1">
<property name="border">5</property> <property name="border">5</property>
<property name="flag">wxEXPAND</property> <property name="flag">wxEXPAND</property>
<property name="proportion">0</property> <property name="proportion">0</property>
<object class="wxFlexGridSizer" expanded="0"> <object class="wxFlexGridSizer" expanded="1">
<property name="cols">3</property> <property name="cols">3</property>
<property name="flexible_direction">wxBOTH</property> <property name="flexible_direction">wxBOTH</property>
<property name="growablecols">1</property> <property name="growablecols">1</property>
@ -126,7 +126,7 @@
<property name="gripper">0</property> <property name="gripper">0</property>
<property name="hidden">0</property> <property name="hidden">0</property>
<property name="id">wxID_ANY</property> <property name="id">wxID_ANY</property>
<property name="label">Current:</property> <property name="label">Current (I):</property>
<property name="markup">0</property> <property name="markup">0</property>
<property name="max_size"></property> <property name="max_size"></property>
<property name="maximize_button">0</property> <property name="maximize_button">0</property>
@ -501,7 +501,7 @@
<property name="hidden">0</property> <property name="hidden">0</property>
<property name="id">wxID_ANY</property> <property name="id">wxID_ANY</property>
<property name="label">Conductor length:</property> <property name="label">Conductor length:</property>
<property name="markup">0</property> <property name="markup">1</property>
<property name="max_size"></property> <property name="max_size"></property>
<property name="maximize_button">0</property> <property name="maximize_button">0</property>
<property name="maximum_size"></property> <property name="maximum_size"></property>
@ -745,7 +745,7 @@
<property name="dock">Dock</property> <property name="dock">Dock</property>
<property name="dock_fixed">0</property> <property name="dock_fixed">0</property>
<property name="docking">Left</property> <property name="docking">Left</property>
<property name="enabled">1</property> <property name="enabled">0</property>
<property name="fg"></property> <property name="fg"></property>
<property name="floatable">1</property> <property name="floatable">1</property>
<property name="font"></property> <property name="font"></property>
@ -979,7 +979,7 @@
<property name="gripper">0</property> <property name="gripper">0</property>
<property name="hidden">0</property> <property name="hidden">0</property>
<property name="id">wxID_ANY</property> <property name="id">wxID_ANY</property>
<property name="label">Trace width:</property> <property name="label">Trace width (W):</property>
<property name="markup">0</property> <property name="markup">0</property>
<property name="max_size"></property> <property name="max_size"></property>
<property name="maximize_button">0</property> <property name="maximize_button">0</property>
@ -1170,7 +1170,7 @@
<property name="gripper">0</property> <property name="gripper">0</property>
<property name="hidden">0</property> <property name="hidden">0</property>
<property name="id">wxID_ANY</property> <property name="id">wxID_ANY</property>
<property name="label">Trace thickness:</property> <property name="label">Trace thickness (H):</property>
<property name="markup">0</property> <property name="markup">0</property>
<property name="max_size"></property> <property name="max_size"></property>
<property name="maximize_button">0</property> <property name="maximize_button">0</property>
@ -2299,7 +2299,7 @@
<property name="gripper">0</property> <property name="gripper">0</property>
<property name="hidden">0</property> <property name="hidden">0</property>
<property name="id">wxID_ANY</property> <property name="id">wxID_ANY</property>
<property name="label">Trace width:</property> <property name="label">Trace width (W):</property>
<property name="markup">0</property> <property name="markup">0</property>
<property name="max_size"></property> <property name="max_size"></property>
<property name="maximize_button">0</property> <property name="maximize_button">0</property>
@ -2490,7 +2490,7 @@
<property name="gripper">0</property> <property name="gripper">0</property>
<property name="hidden">0</property> <property name="hidden">0</property>
<property name="id">wxID_ANY</property> <property name="id">wxID_ANY</property>
<property name="label">Trace thickness:</property> <property name="label">Trace thickness (H):</property>
<property name="markup">0</property> <property name="markup">0</property>
<property name="max_size"></property> <property name="max_size"></property>
<property name="maximize_button">0</property> <property name="maximize_button">0</property>

View File

@ -1,5 +1,5 @@
/////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////
// C++ code generated with wxFormBuilder (version 3.10.0-4761b0c5) // C++ code generated with wxFormBuilder (version 3.10.0)
// http://www.wxformbuilder.org/ // http://www.wxformbuilder.org/
// //
// PLEASE DO *NOT* EDIT THIS FILE! // PLEASE DO *NOT* EDIT THIS FILE!

View File

@ -60,11 +60,11 @@ PANEL_VIA_SIZE::PANEL_VIA_SIZE( wxWindow* parent, wxWindowID id,
long style, const wxString& name ) : long style, const wxString& name ) :
PANEL_VIA_SIZE_BASE( parent, id, pos, size, style, name ) PANEL_VIA_SIZE_BASE( parent, id, pos, size, style, name )
{ {
m_viaResistivityUnits->SetLabel( wxT( "Ωm" ) ); m_viaResistivityUnits->SetLabel( wxT( "Ωm" ) );
m_viaTempUnits->SetLabel( wxT( "°C" ) ); m_viaTempUnits->SetLabel( wxT( "°C" ) );
m_viaResUnits->SetLabel( wxT( "" ) ); m_viaResUnits->SetLabel( wxT( "Ω" ) );
m_viaThermalResUnits->SetLabel( wxT( "°C/W" ) ); m_viaThermalResUnits->SetLabel( wxT( "°C/W" ) );
m_viaReactanceUnits->SetLabel( wxT( "" ) ); m_viaReactanceUnits->SetLabel( wxT( "Ω" ) );
m_viaBitmap->SetBitmap( KiBitmap( BITMAPS::viacalc ) ); m_viaBitmap->SetBitmap( KiBitmap( BITMAPS::viacalc ) );

View File

@ -5,13 +5,14 @@ _HKI( "If you specify the maximum current, then the trace widths will be calcula
"\n" "\n"
"The controlling value is shown in bold.\n" "The controlling value is shown in bold.\n"
"\n" "\n"
"The calculations are valid for currents up to 35 A (external) or 17.5 A (internal), temperature rises up to 100 ºC, and widths of up to 400 mil (10 mm).\n" "The calculations are valid for currents up to 35 A (external) or 17.5 A (internal), temperature rises up to 100 °C, and widths of up to 400 mils (10 mm).\n"
"\n" "\n"
"The formula, from IPC 2221, is\n" "The formula, from IPC 2221, is \n"
"<center>__I = K * dT<sup>0.44</sup> * (W*H)<sup>0.725</sup>__</center>\n" "<center>___I = K &sdot; &Delta;T<sup>0.44</sup> &sdot; (W &sdot; H)<sup>0.725</sup>___</center> \n"
"where: \n" "where: \n"
"__I__ = maximum current in A \n" "___I___ is maximum current in A \n"
"__dt__ = temperature rise above ambient in ºC \n" "___&Delta;T___ is temperature rise above ambient in &deg;C \n"
"__W,H__ = width and thickness in mils \n" "___W___ is width in mils \n"
"__K__ = 0.024 for internal traces or 0.048 for external traces\n" "___H___ is thickness (height) in mils \n"
"___K___ is 0.024 for internal traces or 0.048 for external traces \n"
"" ); "" );

View File

@ -4,12 +4,13 @@ If you specify one of the trace widths, the maximum current it can handle will b
The controlling value is shown in bold. The controlling value is shown in bold.
The calculations are valid for currents up to 35 A (external) or 17.5 A (internal), temperature rises up to 100 ºC, and widths of up to 400 mil (10 mm). The calculations are valid for currents up to 35 A (external) or 17.5 A (internal), temperature rises up to 100 °C, and widths of up to 400 mils (10 mm).
The formula, from IPC 2221, is The formula, from IPC 2221, is
<center>__I = K * dT<sup>0.44</sup> * (W*H)<sup>0.725</sup>__</center> <center>___I = K &sdot; &Delta;T<sup>0.44</sup> &sdot; (W &sdot; H)<sup>0.725</sup>___</center>
where: where:
__I__ = maximum current in A ___I___ is maximum current in A
__dt__ = temperature rise above ambient in ºC ___&Delta;T___ is temperature rise above ambient in &deg;C
__W,H__ = width and thickness in mils ___W___ is width in mils
__K__ = 0.024 for internal traces or 0.048 for external traces ___H___ is thickness (height) in mils
___K___ is 0.024 for internal traces or 0.048 for external traces