mirror of
https://github.com/bancika/diy-layout-creator
synced 2026-11-13 02:32:09 +10:00
diode improvements
This commit is contained in:
+24
-2
@@ -31,6 +31,7 @@ import org.diylc.common.IPlugInPort;
|
||||
import org.diylc.components.AbstractLeadedComponent;
|
||||
import org.diylc.components.transform.SimpleComponentTransformer;
|
||||
import org.diylc.core.CreationMethod;
|
||||
import org.diylc.core.IDatasheetSupport;
|
||||
import org.diylc.core.IDIYComponent;
|
||||
import org.diylc.core.Theme;
|
||||
import org.diylc.core.annotations.AiNote;
|
||||
@@ -43,11 +44,14 @@ import org.diylc.utils.Constants;
|
||||
|
||||
@AiNote("The two control points are the holes the leads go into and the body is centred between them; 'Length' is the body length, not the hole spacing")
|
||||
@AiNote("If the control points are closer together than 'Length' (0.2in by default) the part is drawn standing, its body over the first point, or over the second with 'Reverse (standing)'; to keep it lying on a tighter footprint, reduce 'Length'")
|
||||
@AiNote("A datasheet model is a part number such as 1N4148, BAT46 or 1N34A and sets 'Value', 'Length', 'Width' and the body colours to match its package; set 'Value' to the same part number together with the model")
|
||||
@ComponentDescriptor(name = "Diode (glass)", author = "Branislav Stojkovic", category = "Semiconductors",
|
||||
creationMethod = CreationMethod.POINT_BY_POINT, instanceNamePrefix = "D",
|
||||
description = "Glass diode, like most small signal diodes.", zOrder = IDIYComponent.COMPONENT,
|
||||
transformer = SimpleComponentTransformer.class, enableCache = true)
|
||||
public class DiodeGlass extends AbstractLeadedComponent<String> implements IGerberComponentSimple {
|
||||
transformer = SimpleComponentTransformer.class, enableCache = true, enableDatasheet = true,
|
||||
datasheetCreationStepCount = 2, datasheetModelColumn = 1)
|
||||
public class DiodeGlass extends AbstractLeadedComponent<String>
|
||||
implements IGerberComponentSimple, IDatasheetSupport {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@@ -71,6 +75,24 @@ public class DiodeGlass extends AbstractLeadedComponent<String> implements IGerb
|
||||
this.borderColor = BORDER_COLOR;
|
||||
}
|
||||
|
||||
public DiodeGlass(String[] model) {
|
||||
this();
|
||||
|
||||
applyModel(model);
|
||||
}
|
||||
|
||||
// columns: group, part number, package, body length, body diameter, body colour, cathode band
|
||||
// colour, die colour
|
||||
@Override
|
||||
public void applyModel(String[] model) {
|
||||
setValue(model[1]);
|
||||
setLength(Size.parseSize(model[3]));
|
||||
setWidth(Size.parseSize(model[4]));
|
||||
setBodyColor(Color.decode(model[5]));
|
||||
setMarkerColor(Color.decode(model[6]));
|
||||
setInsideColor(Color.decode(model[7]));
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean supportsStandingMode() {
|
||||
return true;
|
||||
|
||||
+23
-2
@@ -31,6 +31,7 @@ import org.diylc.common.IPlugInPort;
|
||||
import org.diylc.components.AbstractLeadedComponent;
|
||||
import org.diylc.components.transform.SimpleComponentTransformer;
|
||||
import org.diylc.core.CreationMethod;
|
||||
import org.diylc.core.IDatasheetSupport;
|
||||
import org.diylc.core.IDIYComponent;
|
||||
import org.diylc.core.Theme;
|
||||
import org.diylc.core.annotations.AiNote;
|
||||
@@ -43,11 +44,14 @@ import org.diylc.utils.Constants;
|
||||
|
||||
@AiNote("The two control points are the holes the leads go into and the body is centred between them; 'Length' is the body length, not the hole spacing")
|
||||
@AiNote("If the control points are closer together than 'Length' (0.25in by default) the part is drawn standing, its body over the first point; to keep it lying on a tighter footprint, reduce 'Length'")
|
||||
@AiNote("A datasheet model is a part number such as 1N4007, 1N5819 or UF4007 and sets 'Value', 'Length', 'Width' and the body colours to match its package; set 'Value' to the same part number together with the model")
|
||||
@ComponentDescriptor(name = "Diode (plastic)", author = "Branislav Stojkovic", category = "Semiconductors",
|
||||
creationMethod = CreationMethod.POINT_BY_POINT, instanceNamePrefix = "D",
|
||||
description = "Plastic diode, like most rectifier, zener, schottky, etc.", zOrder = IDIYComponent.COMPONENT,
|
||||
transformer = SimpleComponentTransformer.class, enableCache = true)
|
||||
public class DiodePlastic extends AbstractLeadedComponent<String> implements IGerberComponentSimple {
|
||||
transformer = SimpleComponentTransformer.class, enableCache = true, enableDatasheet = true,
|
||||
datasheetCreationStepCount = 2, datasheetModelColumn = 1)
|
||||
public class DiodePlastic extends AbstractLeadedComponent<String>
|
||||
implements IGerberComponentSimple, IDatasheetSupport {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@@ -69,6 +73,23 @@ public class DiodePlastic extends AbstractLeadedComponent<String> implements IGe
|
||||
this.borderColor = BORDER_COLOR;
|
||||
}
|
||||
|
||||
public DiodePlastic(String[] model) {
|
||||
this();
|
||||
|
||||
applyModel(model);
|
||||
}
|
||||
|
||||
// columns: group, part number, package, body length, body diameter, body colour, cathode band
|
||||
// colour
|
||||
@Override
|
||||
public void applyModel(String[] model) {
|
||||
setValue(model[1]);
|
||||
setLength(Size.parseSize(model[3]));
|
||||
setWidth(Size.parseSize(model[4]));
|
||||
setBodyColor(Color.decode(model[5]));
|
||||
setMarkerColor(Color.decode(model[6]));
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean supportsStandingMode() {
|
||||
return true;
|
||||
|
||||
@@ -0,0 +1,200 @@
|
||||
Signal,1N4148,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#D9652B
|
||||
Signal,1N914,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#D9652B
|
||||
Signal,1N4448,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#D9652B
|
||||
Signal,1N916,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#D9652B
|
||||
Signal,1N4151,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#D9652B
|
||||
Signal,BAV21,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#D9652B
|
||||
Signal,1N3600,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#D9652B
|
||||
Signal,BA221,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#D9652B
|
||||
Schottky,BAT41,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#D9652B
|
||||
Schottky,BAT42,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#D9652B
|
||||
Schottky,BAT43,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#D9652B
|
||||
Schottky,BAT46,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#D9652B
|
||||
Schottky,BAT48,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#D9652B
|
||||
Schottky,BAT85,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#D9652B
|
||||
Schottky,1N5711,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#D9652B
|
||||
Schottky,BAT86,DO-34,2.6 mm,1.6 mm,#E1F0FF,#141414,#D9652B
|
||||
Germanium,1N34A,DO-7,6.7 mm,2.45 mm,#E8F2F2,#141414,#5E5E5E
|
||||
Germanium,1N270,DO-7,6.7 mm,2.45 mm,#E8F2F2,#141414,#5E5E5E
|
||||
Germanium,OA90,DO-7,6.7 mm,2.45 mm,#E8F2F2,#141414,#5E5E5E
|
||||
Germanium,OA91,DO-7,6.7 mm,2.45 mm,#E8F2F2,#141414,#5E5E5E
|
||||
Germanium,OA95,DO-7,6.7 mm,2.45 mm,#E8F2F2,#141414,#5E5E5E
|
||||
Germanium,OA47,DO-7,6.7 mm,2.45 mm,#E8F2F2,#141414,#5E5E5E
|
||||
Germanium,AA119,DO-7,6.7 mm,2.45 mm,#E8F2F2,#141414,#5E5E5E
|
||||
Germanium,AA143,DO-7,6.7 mm,2.45 mm,#E8F2F2,#141414,#5E5E5E
|
||||
Germanium,1N60,DO-35,4 mm,1.8 mm,#E8F2F2,#141414,#5E5E5E
|
||||
Germanium,1N60P,DO-35,4 mm,1.8 mm,#E8F2F2,#141414,#5E5E5E
|
||||
Fast Rectifier,BYV26C,SOD-57,4.2 mm,3.5 mm,#202020,#B0B0B0,#202020
|
||||
Fast Rectifier,BYV26E,SOD-57,4.2 mm,3.5 mm,#202020,#B0B0B0,#202020
|
||||
Zener (1N47xx),1N4728A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4729A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4730A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4731A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4732A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4733A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4734A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4735A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4736A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4737A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4738A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4739A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4740A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4741A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4742A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4743A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4744A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4745A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4746A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4747A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4748A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4749A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4750A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4751A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4752A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4753A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4754A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4755A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4756A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4757A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4758A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4759A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4760A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4761A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4762A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4763A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N47xx),1N4764A,DO-41,4.3 mm,2.4 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5221B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5222B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5223B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5224B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5225B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5226B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5227B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5228B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5229B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5230B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5231B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5232B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5233B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5234B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5235B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5236B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5237B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5238B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5239B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5240B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5241B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5242B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5243B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5244B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5245B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5246B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5247B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5248B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5249B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5250B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5251B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5252B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5253B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5254B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5255B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5256B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5257B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5258B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5259B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5260B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5261B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5262B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5263B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5264B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5265B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5266B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N52xx),1N5267B,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N7xx),1N746A,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N7xx),1N747A,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N7xx),1N748A,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N7xx),1N749A,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N7xx),1N750A,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N7xx),1N751A,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N7xx),1N752A,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N7xx),1N753A,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N7xx),1N754A,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N7xx),1N755A,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N7xx),1N756A,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N7xx),1N757A,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N7xx),1N758A,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (1N7xx),1N759A,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C2V4,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C2V7,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C3V0,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C3V3,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C3V6,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C3V9,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C4V3,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C4V7,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C5V1,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C5V6,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C6V2,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C6V8,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C7V5,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C8V2,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C9V1,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C10,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C11,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C12,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C13,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C15,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C16,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C18,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C20,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C22,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C24,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C27,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C30,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C33,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C36,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C39,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C43,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C47,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C51,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C56,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C62,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C68,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX55),BZX55C75,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C2V4,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C2V7,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C3V0,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C3V3,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C3V6,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C3V9,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C4V3,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C4V7,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C5V1,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C5V6,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C6V2,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C6V8,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C7V5,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C8V2,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C9V1,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C10,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C11,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C12,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C13,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C15,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C16,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C18,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C20,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C22,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C24,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C27,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C30,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C33,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C36,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C39,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C43,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C47,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C51,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C56,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C62,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C68,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
Zener (BZX79),BZX79C75,DO-35,4 mm,1.8 mm,#E1F0FF,#141414,#E07A3A
|
||||
@@ -0,0 +1,77 @@
|
||||
Rectifier,1N4001,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Rectifier,1N4002,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Rectifier,1N4003,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Rectifier,1N4004,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Rectifier,1N4005,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Rectifier,1N4006,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Rectifier,1N4007,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Rectifier,1N5391,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Rectifier,1N5392,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Rectifier,1N5393,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Rectifier,1N5394,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Rectifier,1N5395,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Rectifier,1N5396,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Rectifier,1N5397,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Rectifier,1N5398,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Rectifier,1N5399,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Rectifier,1N5400,DO-201AD,8.5 mm,5.1 mm,#1E1E1E,#BDBDBD
|
||||
Rectifier,1N5401,DO-201AD,8.5 mm,5.1 mm,#1E1E1E,#BDBDBD
|
||||
Rectifier,1N5402,DO-201AD,8.5 mm,5.1 mm,#1E1E1E,#BDBDBD
|
||||
Rectifier,1N5404,DO-201AD,8.5 mm,5.1 mm,#1E1E1E,#BDBDBD
|
||||
Rectifier,1N5406,DO-201AD,8.5 mm,5.1 mm,#1E1E1E,#BDBDBD
|
||||
Rectifier,1N5407,DO-201AD,8.5 mm,5.1 mm,#1E1E1E,#BDBDBD
|
||||
Rectifier,1N5408,DO-201AD,8.5 mm,5.1 mm,#1E1E1E,#BDBDBD
|
||||
Rectifier,BY255,DO-201AD,8.5 mm,5.1 mm,#1E1E1E,#BDBDBD
|
||||
Rectifier,6A10,R-6,8.85 mm,8.85 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,UF4001,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,UF4002,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,UF4003,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,UF4004,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,UF4005,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,UF4006,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,UF4007,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,1N4933,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,1N4934,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,1N4935,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,1N4936,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,1N4937,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,FR101,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,FR102,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,FR103,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,FR104,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,FR105,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,FR106,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,FR107,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,HER101,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,HER102,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,HER103,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,HER104,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,HER105,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,HER106,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,HER107,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,HER108,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,MUR120,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,MUR160,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,BA157,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,BA158,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,BA159,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,UF5400,DO-201AD,8.5 mm,5.1 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,UF5401,DO-201AD,8.5 mm,5.1 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,UF5402,DO-201AD,8.5 mm,5.1 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,UF5404,DO-201AD,8.5 mm,5.1 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,UF5406,DO-201AD,8.5 mm,5.1 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,UF5407,DO-201AD,8.5 mm,5.1 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,UF5408,DO-201AD,8.5 mm,5.1 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,MUR460,DO-201AD,8.5 mm,5.1 mm,#1E1E1E,#BDBDBD
|
||||
Fast Rectifier,BY399,DO-201AD,8.5 mm,5.1 mm,#1E1E1E,#BDBDBD
|
||||
Schottky,1N5817,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Schottky,1N5818,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Schottky,1N5819,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Schottky,SB140,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Schottky,SB160,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Schottky,SR160,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Schottky,11DQ04,DO-41,4.6 mm,2.4 mm,#1E1E1E,#BDBDBD
|
||||
Schottky,1N5820,DO-201AD,8.5 mm,5.1 mm,#1E1E1E,#BDBDBD
|
||||
Schottky,1N5821,DO-201AD,8.5 mm,5.1 mm,#1E1E1E,#BDBDBD
|
||||
Schottky,1N5822,DO-201AD,8.5 mm,5.1 mm,#1E1E1E,#BDBDBD
|
||||
Schottky,SB560,DO-201AD,8.5 mm,5.1 mm,#1E1E1E,#BDBDBD
|
||||
+105
@@ -0,0 +1,105 @@
|
||||
/*
|
||||
|
||||
DIY Layout Creator (DIYLC).
|
||||
Copyright (c) 2009-2025 held jointly by the individual authors.
|
||||
|
||||
This file is part of DIYLC.
|
||||
|
||||
DIYLC is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
DIYLC is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with DIYLC. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
*/
|
||||
package org.diylc.components.semiconductors;
|
||||
|
||||
import java.awt.Color;
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
import org.diylc.core.measures.Size;
|
||||
import org.diylc.presenter.DatasheetService;
|
||||
import org.junit.Assert;
|
||||
import org.junit.Test;
|
||||
|
||||
/** The datasheets of the plastic and glass diodes, which share their first seven columns. */
|
||||
public class DiodeDatasheetTest {
|
||||
|
||||
@Test
|
||||
public void everyPlasticRowApplies() {
|
||||
for (String[] row : datasheet(DiodePlastic.class)) {
|
||||
DiodePlastic diode = new DiodePlastic(row);
|
||||
String context = String.join(",", row);
|
||||
Assert.assertEquals(context, 7, row.length);
|
||||
Assert.assertEquals(context, row[1], diode.getValue());
|
||||
Assert.assertEquals(context, Size.parseSize(row[3]), diode.getLength());
|
||||
Assert.assertEquals(context, Color.decode(row[6]), diode.getMarkerColor());
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void everyGlassRowApplies() {
|
||||
for (String[] row : datasheet(DiodeGlass.class)) {
|
||||
DiodeGlass diode = new DiodeGlass(row);
|
||||
String context = String.join(",", row);
|
||||
Assert.assertEquals(context, 8, row.length);
|
||||
Assert.assertEquals(context, row[1], diode.getValue());
|
||||
Assert.assertEquals(context, Size.parseSize(row[4]), diode.getWidth());
|
||||
Assert.assertEquals(context, Color.decode(row[7]), diode.getInsideColor());
|
||||
}
|
||||
}
|
||||
|
||||
/** A part ships in one envelope, so it is listed under one component only. */
|
||||
@Test
|
||||
public void partNumbersAreUniqueAcrossBothFiles() {
|
||||
Set<String> parts = new HashSet<String>();
|
||||
for (Class<?> type : new Class<?>[] {DiodePlastic.class, DiodeGlass.class}) {
|
||||
for (String[] row : datasheet(type)) {
|
||||
Assert.assertTrue("repeated part " + row[1], parts.add(row[1].toUpperCase()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/** Packages are standard outlines, so every part in one package is drawn the same size. */
|
||||
@Test
|
||||
public void onePackageHasOneSize() {
|
||||
for (Class<?> type : new Class<?>[] {DiodePlastic.class, DiodeGlass.class}) {
|
||||
Map<String, String> sizes = new HashMap<String, String>();
|
||||
for (String[] row : datasheet(type)) {
|
||||
String size = row[3] + " x " + row[4];
|
||||
String first = sizes.putIfAbsent(row[2], size);
|
||||
if (first != null) {
|
||||
Assert.assertEquals(row[1] + " in " + row[2], first, size);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void partIsFoundByNumberNotByGroup() {
|
||||
DatasheetService service = DatasheetService.getInstance();
|
||||
for (Class<?> type : new Class<?>[] {DiodePlastic.class, DiodeGlass.class}) {
|
||||
String[] first = datasheet(type).get(0);
|
||||
Assert.assertEquals(1, service.findSeries(type, first[1]).size());
|
||||
Assert.assertTrue(service.findSeries(type, first[0]).isEmpty());
|
||||
}
|
||||
}
|
||||
|
||||
private static List<String[]> datasheet(Class<?> type) {
|
||||
List<String[]> datasheet = DatasheetService.getInstance().loadDatasheet(type);
|
||||
Assert.assertNotNull(type.getSimpleName(), datasheet);
|
||||
Assert.assertFalse(type.getSimpleName(), datasheet.isEmpty());
|
||||
return datasheet;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user