From 0e95d4883a37993a43ac456d5f4c13cb32932ef5 Mon Sep 17 00:00:00 2001 From: bancika Date: Sat, 4 Apr 2020 18:52:10 +0200 Subject: [PATCH] Added "Duodecar B12C" tube socket type --- .../src/org/diylc/presenter/update.xml | 4 +++ .../org/diylc/components/tube/TubeSocket.java | 25 +++++++++++++++--- diylc/diylc-swing/library/main.jar | Bin 650540 -> 650876 bytes 3 files changed, 25 insertions(+), 4 deletions(-) diff --git a/diylc/diylc-core/src/org/diylc/presenter/update.xml b/diylc/diylc-core/src/org/diylc/presenter/update.xml index 6347997d..228d89c3 100644 --- a/diylc/diylc-core/src/org/diylc/presenter/update.xml +++ b/diylc/diylc-core/src/org/diylc/presenter/update.xml @@ -2858,6 +2858,10 @@ NEW_FEATURE Added few out-of-the-box building blocks that can be deleted if unwanted + + NEW_FEATURE + Added "Duodecar B12C" tube socket type + BUG_FIX Choosing a default theme in the Config menut causes the app to fail to start and some components to fail to render diff --git a/diylc/diylc-library/src/org/diylc/components/tube/TubeSocket.java b/diylc/diylc-library/src/org/diylc/components/tube/TubeSocket.java index 6a1db7a5..83d0a709 100644 --- a/diylc/diylc-library/src/org/diylc/components/tube/TubeSocket.java +++ b/diylc/diylc-library/src/org/diylc/components/tube/TubeSocket.java @@ -64,10 +64,15 @@ public class TubeSocket extends AbstractTransparentComponent { private static final Size B7G_PIN_SPACING = new Size(12d, SizeUnit.mm); private static final Size B7G_CUTOUT_DIAMETER = new Size(4d, SizeUnit.mm); private static final Size B9A_CUTOUT_DIAMETER = new Size(5.5d, SizeUnit.mm); + private static final Size B12C_HOLE_SIZE = new Size(10d, SizeUnit.mm); + private static final Size B12C_CUTOUT_DIAMETER = new Size(5.5d, SizeUnit.mm); + private static final Size B12C_PIN_SPACING_PCB = new Size(25d, SizeUnit.mm); + private static final Size B12C_PIN_SPACING_CHASSIS = new Size(22d, SizeUnit.mm); private static final Size OCTAL_DIAMETER = new Size(25d, SizeUnit.mm); private static final Size B9A_DIAMETER = new Size(3 / 4d, SizeUnit.in); private static final Size B7G_DIAMETER = new Size(17d, SizeUnit.mm); + private static final Size B12C_DIAMETER = new Size(30d, SizeUnit.mm); private static final long serialVersionUID = 1L; @@ -181,6 +186,11 @@ public class TubeSocket extends AbstractTransparentComponent { pinCount = 9; pinSpacing = getClosestOdd(getMount() == Mount.PCB ? B9A_PIN_SPACING_PCB.convertToPixels() : B9A_PIN_SPACING_CHASSIS.convertToPixels()); hasEmptySpace = true; + break; + case B12C: + pinCount = 12; + pinSpacing = getClosestOdd(getMount() == Mount.PCB ? B12C_PIN_SPACING_PCB.convertToPixels() : B12C_PIN_SPACING_CHASSIS.convertToPixels()); + hasEmptySpace = true; break; default: throw new RuntimeException("Unexpected base: " + base); @@ -211,6 +221,9 @@ public class TubeSocket extends AbstractTransparentComponent { break; case OCTAL: bodyDiameter = getClosestOdd(OCTAL_DIAMETER.convertToPixels()); + break; + case B12C: + bodyDiameter = getClosestOdd(B12C_DIAMETER.convertToPixels()); break; default: throw new RuntimeException("Unexpected base: " + base); @@ -220,7 +233,7 @@ public class TubeSocket extends AbstractTransparentComponent { new Ellipse2D.Double(controlPoints[0].x - bodyDiameter / 2, controlPoints[0].y - bodyDiameter / 2, bodyDiameter, bodyDiameter); Area bodyArea = new Area(body); - int holeSize = getClosestOdd(HOLE_SIZE.convertToPixels()); + int holeSize = getClosestOdd(base == Base.B12C ? B12C_HOLE_SIZE.convertToPixels() : HOLE_SIZE.convertToPixels()); bodyArea.subtract(new Area(new Ellipse2D.Double(controlPoints[0].x - holeSize / 2, controlPoints[0].y - holeSize / 2, holeSize, holeSize))); @@ -239,7 +252,11 @@ public class TubeSocket extends AbstractTransparentComponent { double cutoutDiameter = getClosestOdd(B7G_CUTOUT_DIAMETER.convertToPixels()); bodyArea.subtract(new Area(new Ellipse2D.Double(controlPoints[0].x - cutoutDiameter / 2, controlPoints[0].y - bodyDiameter / 2 - cutoutDiameter * 3 / 4, cutoutDiameter, cutoutDiameter))); bodyArea.subtract(new Area(new Ellipse2D.Double(controlPoints[0].x - cutoutDiameter / 2, controlPoints[0].y + bodyDiameter / 2 - cutoutDiameter / 4, cutoutDiameter, cutoutDiameter))); - } + } else if (base == Base.B12C && getMount() == Mount.CHASSIS) { + double cutoutDiameter = getClosestOdd(B12C_CUTOUT_DIAMETER.convertToPixels()); + bodyArea.subtract(new Area(new Ellipse2D.Double(controlPoints[0].x - cutoutDiameter / 2, controlPoints[0].y - bodyDiameter / 2 - cutoutDiameter * 3 / 4, cutoutDiameter, cutoutDiameter))); + bodyArea.subtract(new Area(new Ellipse2D.Double(controlPoints[0].x - cutoutDiameter / 2, controlPoints[0].y + bodyDiameter / 2 - cutoutDiameter / 4, cutoutDiameter, cutoutDiameter))); + } body = bodyArea; } @@ -388,7 +405,7 @@ public class TubeSocket extends AbstractTransparentComponent { @EditableProperty(name = "Electrode Labels") public String getElectrodeLabels() { if (electrodeLabels == null) - electrodeLabels = "1,2,3,4,5,6,7,8,9"; + electrodeLabels = "1,2,3,4,5,6,7,8,9,10,11,12"; return electrodeLabels; } @@ -423,7 +440,7 @@ public class TubeSocket extends AbstractTransparentComponent { } public static enum Base { - B9A("Noval B9A"), OCTAL("Octal"), B7G("Small-button B7G"); + B9A("Noval B9A"), OCTAL("Octal"), B7G("Small-button B7G"), B12C("Duodecar B12C"); String name; diff --git a/diylc/diylc-swing/library/main.jar b/diylc/diylc-swing/library/main.jar index 447e9d01fae055c3f9086c6b2f1808b557996115..3e47bc19830d3f6c0de5c1df885e6eb869cda7f3 100644 GIT binary patch delta 17084 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 PCYoOecPbdQU>N@okbVVf delta 16752 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 X2j`K;|N7e3z~V*lLxV80hV%abTm0e1