Do not hard-code voltage and power ratings

This commit is contained in:
bancika
2012-02-12 18:45:34 +00:00
parent 9fdd96c889
commit d11a8b906a
18 changed files with 347 additions and 9 deletions
@@ -18,6 +18,7 @@ import org.diylc.core.measures.Capacitance;
import org.diylc.core.measures.CapacitanceUnit;
import org.diylc.core.measures.Size;
import org.diylc.core.measures.SizeUnit;
import org.diylc.core.measures.VoltageUnit;
import org.diylc.utils.Constants;
@ComponentDescriptor(name = "Electrolytic Capacitor (axial)", author = "Branislav Stojkovic", category = "Passive", creationMethod = CreationMethod.POINT_BY_POINT, instanceNamePrefix = "C", description = "Axial electrolytic capacitor, similar to Sprague Atom, F&T, etc", zOrder = IDIYComponent.COMPONENT)
@@ -33,7 +34,10 @@ public class AxialElectrolyticCapacitor extends AbstractLeadedComponent<Capacita
public static Color TICK_COLOR = Color.white;
private Capacitance value = new Capacitance(1d, CapacitanceUnit.uF);
@Deprecated
private Voltage voltage = Voltage._63V;
private org.diylc.core.measures.Voltage voltageNew = new org.diylc.core.measures.Voltage(63d,
VoltageUnit.V);
private Color markerColor = MARKER_COLOR;
private Color tickColor = TICK_COLOR;
@@ -54,14 +58,30 @@ public class AxialElectrolyticCapacitor extends AbstractLeadedComponent<Capacita
this.value = value;
}
@EditableProperty
@Deprecated
public Voltage getVoltage() {
return voltage;
}
@Deprecated
public void setVoltage(Voltage voltage) {
this.voltage = voltage;
}
@EditableProperty(name = "Voltage")
public org.diylc.core.measures.Voltage getVoltageNew() {
// Backward comptibility
if (voltageNew == null) {
voltageNew = voltage.convertToNewFormat();
voltage = null;
// Clear old value, don't need it anymore
}
return voltageNew;
}
public void setVoltageNew(org.diylc.core.measures.Voltage voltageNew) {
this.voltageNew = voltageNew;
}
public void drawIcon(Graphics2D g2d, int width, int height) {
g2d.rotate(-Math.PI / 4, width / 2, height / 2);
@@ -14,6 +14,7 @@ import org.diylc.core.measures.Capacitance;
import org.diylc.core.measures.CapacitanceUnit;
import org.diylc.core.measures.Size;
import org.diylc.core.measures.SizeUnit;
import org.diylc.core.measures.VoltageUnit;
@ComponentDescriptor(name = "Film Capacitor (axial)", author = "Branislav Stojkovic", category = "Passive", creationMethod = CreationMethod.POINT_BY_POINT, instanceNamePrefix = "C", description = "Axial film capacitor, similar to Mallory 150s", zOrder = IDIYComponent.COMPONENT)
public class AxialFilmCapacitor extends AbstractLeadedComponent<Capacitance> {
@@ -26,7 +27,10 @@ public class AxialFilmCapacitor extends AbstractLeadedComponent<Capacitance> {
public static Color BORDER_COLOR = BODY_COLOR.darker();
private Capacitance value = new Capacitance(22d, CapacitanceUnit.nF);
@Deprecated
private Voltage voltage = Voltage._63V;
private org.diylc.core.measures.Voltage voltageNew = new org.diylc.core.measures.Voltage(63d,
VoltageUnit.V);
public AxialFilmCapacitor() {
super();
@@ -48,15 +52,30 @@ public class AxialFilmCapacitor extends AbstractLeadedComponent<Capacitance> {
this.value = value;
}
@EditableProperty
@Deprecated
public Voltage getVoltage() {
return voltage;
}
@Deprecated
public void setVoltage(Voltage voltage) {
this.voltage = voltage;
}
@EditableProperty(name = "Voltage")
public org.diylc.core.measures.Voltage getVoltageNew() {
// Backward comptibility
if (voltageNew == null) {
voltageNew = voltage.convertToNewFormat();
voltage = null;
// Clear old value, don't need it anymore
}
return voltageNew;
}
public void setVoltageNew(org.diylc.core.measures.Voltage voltageNew) {
this.voltageNew = voltageNew;
}
public void drawIcon(Graphics2D g2d, int width, int height) {
g2d.rotate(-Math.PI / 4, width / 2, height / 2);
@@ -13,6 +13,7 @@ import org.diylc.core.measures.Capacitance;
import org.diylc.core.measures.CapacitanceUnit;
import org.diylc.core.measures.Size;
import org.diylc.core.measures.SizeUnit;
import org.diylc.core.measures.VoltageUnit;
@ComponentDescriptor(name = "Capacitor (schematic symbol)", author = "Branislav Stojkovic", category = "Passive", creationMethod = CreationMethod.POINT_BY_POINT, instanceNamePrefix = "C", description = "Capacitor schematic symbol with an optional polarity sign", zOrder = IDIYComponent.COMPONENT)
public class CapacitorSymbol extends AbstractSchematicLeadedSymbol<Capacitance> {
@@ -23,7 +24,10 @@ public class CapacitorSymbol extends AbstractSchematicLeadedSymbol<Capacitance>
public static Size DEFAULT_WIDTH = new Size(0.15, SizeUnit.in);
private Capacitance value = new Capacitance(22d, CapacitanceUnit.nF);
@Deprecated
private Voltage voltage = Voltage._63V;
private org.diylc.core.measures.Voltage voltageNew = new org.diylc.core.measures.Voltage(63d,
VoltageUnit.V);
private boolean polarized = false;
@EditableProperty
@@ -35,15 +39,31 @@ public class CapacitorSymbol extends AbstractSchematicLeadedSymbol<Capacitance>
this.value = value;
}
@EditableProperty
@Deprecated
public Voltage getVoltage() {
return voltage;
}
@Deprecated
public void setVoltage(Voltage voltage) {
this.voltage = voltage;
}
@EditableProperty(name = "Voltage")
public org.diylc.core.measures.Voltage getVoltageNew() {
// Backward compatibility
if (voltageNew == null) {
voltageNew = voltage.convertToNewFormat();
voltage = null;
// Clear old value, don't need it anymore
}
return voltageNew;
}
public void setVoltageNew(org.diylc.core.measures.Voltage voltageNew) {
this.voltageNew = voltageNew;
}
@EditableProperty
public boolean getPolarized() {
return polarized;
@@ -1,5 +1,7 @@
package org.diylc.components.passive;
import org.diylc.core.measures.PowerUnit;
public enum Power {
EIGHT("1/8W"), QUARTER("1/4W"), HALF("1/2W"), ONE("1W"), TWO("2W"), FIVE("5W"), TEN("10W"), FIFTY(
@@ -15,4 +17,40 @@ public enum Power {
public String toString() {
return label;
}
public org.diylc.core.measures.Power convertToNewFormat() {
org.diylc.core.measures.Power powerNew;
switch (this) {
case EIGHT:
powerNew = new org.diylc.core.measures.Power(1 / 8d, PowerUnit.W);
break;
case FIVE:
powerNew = new org.diylc.core.measures.Power(5d, PowerUnit.W);
break;
case FIFTY:
powerNew = new org.diylc.core.measures.Power(50d, PowerUnit.W);
break;
case HALF:
powerNew = new org.diylc.core.measures.Power(1 / 2d, PowerUnit.W);
break;
case HUNDRED:
powerNew = new org.diylc.core.measures.Power(100d, PowerUnit.W);
break;
case ONE:
powerNew = new org.diylc.core.measures.Power(1d, PowerUnit.W);
break;
case QUARTER:
powerNew = new org.diylc.core.measures.Power(1 / 4d, PowerUnit.W);
break;
case TEN:
powerNew = new org.diylc.core.measures.Power(10d, PowerUnit.W);
break;
case TWO:
powerNew = new org.diylc.core.measures.Power(2d, PowerUnit.W);
break;
default:
powerNew = new org.diylc.core.measures.Power(1 / 2d, PowerUnit.W);
}
return powerNew;
}
}
@@ -20,6 +20,7 @@ import org.diylc.core.measures.Capacitance;
import org.diylc.core.measures.CapacitanceUnit;
import org.diylc.core.measures.Size;
import org.diylc.core.measures.SizeUnit;
import org.diylc.core.measures.VoltageUnit;
import org.diylc.utils.Constants;
@ComponentDescriptor(name = "Electrolytic Capacitor", author = "Branislav Stojkovic", category = "Passive", creationMethod = CreationMethod.POINT_BY_POINT, instanceNamePrefix = "C", description = "Vertical mounted electrolytic capacitor, polarized or bipolar", zOrder = IDIYComponent.COMPONENT)
@@ -34,7 +35,10 @@ public class RadialElectrolytic extends AbstractLeadedComponent<Capacitance> {
public static Color TICK_COLOR = Color.white;
private Capacitance value = new Capacitance(1d, CapacitanceUnit.uF);
@Deprecated
private Voltage voltage = Voltage._63V;
private org.diylc.core.measures.Voltage voltageNew = new org.diylc.core.measures.Voltage(63d,
VoltageUnit.V);
private Color markerColor = MARKER_COLOR;
private Color tickColor = TICK_COLOR;
@@ -55,14 +59,30 @@ public class RadialElectrolytic extends AbstractLeadedComponent<Capacitance> {
this.value = value;
}
@EditableProperty
@Deprecated
public Voltage getVoltage() {
return voltage;
}
@Deprecated
public void setVoltage(Voltage voltage) {
this.voltage = voltage;
}
@EditableProperty(name = "Voltage")
public org.diylc.core.measures.Voltage getVoltageNew() {
// Backward comptibility
if (voltageNew == null) {
voltageNew = voltage.convertToNewFormat();
voltage = null;
// Clear old value, don't need it anymore
}
return voltageNew;
}
public void setVoltageNew(org.diylc.core.measures.Voltage voltageNew) {
this.voltageNew = voltageNew;
}
public void drawIcon(Graphics2D g2d, int width, int height) {
g2d.setColor(BODY_COLOR);
@@ -14,6 +14,7 @@ import org.diylc.core.measures.Capacitance;
import org.diylc.core.measures.CapacitanceUnit;
import org.diylc.core.measures.Size;
import org.diylc.core.measures.SizeUnit;
import org.diylc.core.measures.VoltageUnit;
@ComponentDescriptor(name = "Film Capacitor (radial)", author = "Branislav Stojkovic", category = "Passive", creationMethod = CreationMethod.POINT_BY_POINT, instanceNamePrefix = "C", description = "Radial film capacitor, similar to Sprague Orange Drop", zOrder = IDIYComponent.COMPONENT)
public class RadialFilmCapacitor extends AbstractLeadedComponent<Capacitance> {
@@ -26,7 +27,10 @@ public class RadialFilmCapacitor extends AbstractLeadedComponent<Capacitance> {
public static Color BORDER_COLOR = BODY_COLOR.darker();
private Capacitance value = new Capacitance(123d, CapacitanceUnit.nF);
@Deprecated
private Voltage voltage = Voltage._63V;
private org.diylc.core.measures.Voltage voltageNew = new org.diylc.core.measures.Voltage(63d,
VoltageUnit.V);
public RadialFilmCapacitor() {
super();
@@ -43,16 +47,31 @@ public class RadialFilmCapacitor extends AbstractLeadedComponent<Capacitance> {
this.value = value;
}
@EditableProperty
@Deprecated
public Voltage getVoltage() {
return voltage;
}
@Deprecated
public void setVoltage(Voltage voltage) {
this.voltage = voltage;
}
@EditableProperty(name = "Voltage")
public org.diylc.core.measures.Voltage getVoltageNew() {
// Backward comptibility
if (voltageNew == null) {
voltageNew = voltage.convertToNewFormat();
voltage = null;
// Clear old value, don't need it anymore
}
return voltageNew;
}
public void setVoltageNew(org.diylc.core.measures.Voltage voltageNew) {
this.voltageNew = voltageNew;
}
public void drawIcon(Graphics2D g2d, int width, int height) {
g2d.rotate(-Math.PI / 4, width / 2, height / 2);
g2d.setColor(LEAD_COLOR);
@@ -13,6 +13,7 @@ import org.diylc.core.IDIYComponent;
import org.diylc.core.annotations.ComponentDescriptor;
import org.diylc.core.annotations.EditableProperty;
import org.diylc.core.annotations.PositiveMeasureValidator;
import org.diylc.core.measures.PowerUnit;
import org.diylc.core.measures.Resistance;
import org.diylc.core.measures.ResistanceUnit;
import org.diylc.core.measures.Size;
@@ -31,7 +32,10 @@ public class Resistor extends AbstractLeadedComponent<Resistance> {
public static int FIRST_BAND = 4;
private Resistance value = new Resistance(123d, ResistanceUnit.K);
@Deprecated
private Power power = Power.HALF;
private org.diylc.core.measures.Power powerNew = new org.diylc.core.measures.Power(0.5,
PowerUnit.W);
private ResistorColorCode colorCode = ResistorColorCode._5_BAND;
public Resistor() {
@@ -54,15 +58,31 @@ public class Resistor extends AbstractLeadedComponent<Resistance> {
this.value = value;
}
@EditableProperty
@Deprecated
public Power getPower() {
return power;
}
@Deprecated
public void setPower(Power power) {
this.power = power;
}
@EditableProperty(name = "Power rating")
public org.diylc.core.measures.Power getPowerNew() {
// Backward compatibility
if (powerNew == null) {
powerNew = power.convertToNewFormat();
// Clear old value, don't need it anymore
power = null;
}
return powerNew;
}
public void setPowerNew(org.diylc.core.measures.Power powerNew) {
this.powerNew = powerNew;
}
public void drawIcon(Graphics2D g2d, int width, int height) {
g2d.rotate(-Math.PI / 4, width / 2, height / 2);
g2d.setColor(LEAD_COLOR);
@@ -9,6 +9,7 @@ import org.diylc.core.CreationMethod;
import org.diylc.core.IDIYComponent;
import org.diylc.core.annotations.ComponentDescriptor;
import org.diylc.core.annotations.EditableProperty;
import org.diylc.core.measures.PowerUnit;
import org.diylc.core.measures.Resistance;
import org.diylc.core.measures.ResistanceUnit;
import org.diylc.core.measures.Size;
@@ -23,7 +24,10 @@ public class ResistorSymbol extends AbstractSchematicLeadedSymbol<Resistance> {
public static Size DEFAULT_WIDTH = new Size(0.08, SizeUnit.in);
private Resistance value = new Resistance(100d, ResistanceUnit.K);
@Deprecated
private Power power = Power.HALF;
private org.diylc.core.measures.Power powerNew = new org.diylc.core.measures.Power(0.5,
PowerUnit.W);
@EditableProperty
public Resistance getValue() {
@@ -34,14 +38,31 @@ public class ResistorSymbol extends AbstractSchematicLeadedSymbol<Resistance> {
this.value = value;
}
@EditableProperty
@Deprecated
public Power getPower() {
return power;
}
@Deprecated
public void setPower(Power power) {
this.power = power;
}
@EditableProperty(name = "Power rating")
public org.diylc.core.measures.Power getPowerNew() {
// Backward compatibility
if (powerNew == null) {
powerNew = power.convertToNewFormat();
// Clear old value, don't need it anymore
power = null;
}
return powerNew;
}
public void setPowerNew(org.diylc.core.measures.Power powerNew) {
this.powerNew = powerNew;
}
public void drawIcon(Graphics2D g2d, int width, int height) {
g2d.rotate(-Math.PI / 4, width / 2, height / 2);
@@ -1,11 +1,58 @@
package org.diylc.components.passive;
import org.diylc.core.measures.VoltageUnit;
public enum Voltage {
_16V, _25V, _63V, _100V, _160V, _250V, _300V, _350V, _400V, _500V, _630V, _1KV;
@Override
public String toString() {
return name().replace("_", "");
}
public org.diylc.core.measures.Voltage convertToNewFormat() {
org.diylc.core.measures.Voltage voltageNew;
switch (this) {
case _100V:
voltageNew = new org.diylc.core.measures.Voltage(100d, VoltageUnit.V);
break;
case _160V:
voltageNew = new org.diylc.core.measures.Voltage(160d, VoltageUnit.V);
break;
case _16V:
voltageNew = new org.diylc.core.measures.Voltage(16d, VoltageUnit.V);
break;
case _1KV:
voltageNew = new org.diylc.core.measures.Voltage(1d, VoltageUnit.KV);
break;
case _250V:
voltageNew = new org.diylc.core.measures.Voltage(250d, VoltageUnit.V);
break;
case _25V:
voltageNew = new org.diylc.core.measures.Voltage(25d, VoltageUnit.V);
break;
case _300V:
voltageNew = new org.diylc.core.measures.Voltage(300d, VoltageUnit.V);
break;
case _350V:
voltageNew = new org.diylc.core.measures.Voltage(350d, VoltageUnit.V);
break;
case _400V:
voltageNew = new org.diylc.core.measures.Voltage(400d, VoltageUnit.V);
break;
case _500V:
voltageNew = new org.diylc.core.measures.Voltage(500d, VoltageUnit.V);
break;
case _630V:
voltageNew = new org.diylc.core.measures.Voltage(630d, VoltageUnit.V);
break;
case _63V:
voltageNew = new org.diylc.core.measures.Voltage(63d, VoltageUnit.V);
break;
default:
voltageNew = new org.diylc.core.measures.Voltage(100d, VoltageUnit.V);
}
return voltageNew;
}
}