From bdc3409184b28e2371c541a3d76b262d3f9f1f8e Mon Sep 17 00:00:00 2001 From: Ben Culkin Date: Tue, 6 Oct 2020 19:15:51 -0400 Subject: Info cleanup --- src/bjc/imgchain/pipeline/PipelinePicker.java | 15 +++++++++++++-- .../imgchain/pipeline/stages/AbstractPipelineStage.java | 6 ++++++ src/bjc/imgchain/pipeline/stages/AbstractPixelStage.java | 15 +++++++++++++-- src/bjc/imgchain/pipeline/stages/GaussStage.java | 14 ++++++++++++++ src/bjc/imgchain/pipeline/stages/GreyscaleStage.java | 10 ++++++++++ src/bjc/imgchain/pipeline/stages/InverseColorStage.java | 13 +++++++++++-- src/bjc/imgchain/pipeline/stages/LoadStage.java | 8 ++++++++ src/bjc/imgchain/pipeline/stages/PipeStage.java | 8 ++++++++ src/bjc/imgchain/pipeline/stages/RecallStage.java | 8 ++++++++ src/bjc/imgchain/pipeline/stages/SaveStage.java | 9 +++++++++ src/bjc/imgchain/pipeline/stages/StagePicker.java | 12 ++++++++++++ src/bjc/imgchain/pipeline/stages/StashStage.java | 9 +++++++++ src/bjc/imgchain/pipeline/stages/SubMaskStage.java | 9 +++++++++ src/bjc/imgchain/pipeline/stages/ThresholdStage.java | 16 ++++++++++++++++ 14 files changed, 146 insertions(+), 6 deletions(-) (limited to 'src/bjc/imgchain/pipeline') diff --git a/src/bjc/imgchain/pipeline/PipelinePicker.java b/src/bjc/imgchain/pipeline/PipelinePicker.java index 3539beb..ec5b071 100644 --- a/src/bjc/imgchain/pipeline/PipelinePicker.java +++ b/src/bjc/imgchain/pipeline/PipelinePicker.java @@ -12,11 +12,22 @@ import javax.swing.JScrollPane; import bjc.imgchain.ImgChain; +/** + * GUI to pick a pipeline to apply. + * @author Ben Culkin + * + */ public class PipelinePicker extends JDialog { private static final long serialVersionUID = 1L; + /** + * The name of the pipe to apply. + */ public String pipeName; + /** + * Create a new pipeline picker GUI. + */ public PipelinePicker() { super(); @@ -30,8 +41,8 @@ public class PipelinePicker extends JDialog { setLayout(new BorderLayout()); DefaultListModel pipeModel = new DefaultListModel<>(); - for (String pipeName : ImgChain.chan.pipelineRepo.keySet()) { - pipeModel.addElement(pipeName); + for (String pipelneName : ImgChain.chan.pipelineRepo.keySet()) { + pipeModel.addElement(pipelneName); } JList pipeList = new JList<>(pipeModel); diff --git a/src/bjc/imgchain/pipeline/stages/AbstractPipelineStage.java b/src/bjc/imgchain/pipeline/stages/AbstractPipelineStage.java index 4183f4f..e7e1f33 100644 --- a/src/bjc/imgchain/pipeline/stages/AbstractPipelineStage.java +++ b/src/bjc/imgchain/pipeline/stages/AbstractPipelineStage.java @@ -12,6 +12,12 @@ import bjc.imgchain.pipeline.StageType; public abstract class AbstractPipelineStage implements PipelineStage { private final StageType type; + /** + * Create a new abstract pipeline stage + * + * @param type + * The type of this stage. + */ protected AbstractPipelineStage(StageType type) { this.type = type; } diff --git a/src/bjc/imgchain/pipeline/stages/AbstractPixelStage.java b/src/bjc/imgchain/pipeline/stages/AbstractPixelStage.java index 8b161d6..b93f092 100644 --- a/src/bjc/imgchain/pipeline/stages/AbstractPixelStage.java +++ b/src/bjc/imgchain/pipeline/stages/AbstractPixelStage.java @@ -8,11 +8,18 @@ import bjc.imgchain.utils.Utils; /** * An abstract stage that processes images pixel-by-pixel. + * * @author bjculkin * */ public abstract class AbstractPixelStage extends AbstractPipelineStage { + /** + * Create a new abstract pixel stage. + * + * @param type + * The type of this stage. + */ protected AbstractPixelStage(StageType type) { super(type); } @@ -21,7 +28,8 @@ public abstract class AbstractPixelStage extends AbstractPipelineStage { public Image process(Image inp) { BufferedImage buf = (BufferedImage) inp; - BufferedImage res = new BufferedImage(buf.getWidth(), buf.getHeight(), BufferedImage.TYPE_INT_ARGB); + BufferedImage res = new BufferedImage(buf.getWidth(), buf.getHeight(), + BufferedImage.TYPE_INT_ARGB); for (int y = 0; y < buf.getHeight(); y++) { for (int x = 0; x < buf.getWidth(); x++) { @@ -38,7 +46,10 @@ public abstract class AbstractPixelStage extends AbstractPipelineStage { /** * Process a pixel of data. - * @param pix The pixel, as an array in the form (A, R, G, B) + * + * @param pix + * The pixel, as an array in the form (A, R, G, B) + * * @return The new pixel, as an array in the form (A, R, G, B) */ public abstract int[] processPixel(int[] pix); diff --git a/src/bjc/imgchain/pipeline/stages/GaussStage.java b/src/bjc/imgchain/pipeline/stages/GaussStage.java index 5f5d919..80cdaa3 100644 --- a/src/bjc/imgchain/pipeline/stages/GaussStage.java +++ b/src/bjc/imgchain/pipeline/stages/GaussStage.java @@ -12,10 +12,18 @@ import javax.swing.JPanel; import bjc.imgchain.pipeline.StageType; import bjc.imgchain.utils.LabeledInputPanel; +/** + * Stage which runs a gaussian blur over an image. + * @author Ben Culkin + * + */ public class GaussStage extends AbstractPipelineStage { private int m; private double sig, k; + /** + * Create a new gaussian blur stage. + */ public GaussStage() { super(StageType.IMGTRANS); } @@ -33,6 +41,10 @@ public class GaussStage extends AbstractPipelineStage { return ret; } + /* @TODO 5 Oct, 2020 - Ben Culkin - :GaussianDoc + * + * Should document this better, when I get a chance to relookup the applicable math. + */ private Kernel genKern() { float[][] w = new float[m][m]; @@ -93,10 +105,12 @@ public class GaussStage extends AbstractPipelineStage { mField.field.addPropertyChangeListener("value", (ev) -> { m = (Integer) mField.field.getValue(); }); + LabeledInputPanel sigField = new LabeledInputPanel("Value for sigma", 3.0); sigField.field.addPropertyChangeListener("value", (ev) -> { sig = (Double) sigField.field.getValue(); }); + LabeledInputPanel kField = new LabeledInputPanel("Value for k", 1.0); kField.field.addPropertyChangeListener("value", (ev) -> { k = (Double) kField.field.getValue(); diff --git a/src/bjc/imgchain/pipeline/stages/GreyscaleStage.java b/src/bjc/imgchain/pipeline/stages/GreyscaleStage.java index 4cc227b..a7dc773 100644 --- a/src/bjc/imgchain/pipeline/stages/GreyscaleStage.java +++ b/src/bjc/imgchain/pipeline/stages/GreyscaleStage.java @@ -5,12 +5,22 @@ import javax.swing.JLabel; import bjc.imgchain.pipeline.StageType; +/** + * Transforms an image to a greyscale version. + * + * @author Ben Culkin + * + */ public class GreyscaleStage extends AbstractPixelStage { + /** + * Create a new greyscale stage. + */ public GreyscaleStage() { super(StageType.IMGTRANS); } + @Override public int[] processPixel(int[] pix) { int[] ret = new int[4]; diff --git a/src/bjc/imgchain/pipeline/stages/InverseColorStage.java b/src/bjc/imgchain/pipeline/stages/InverseColorStage.java index 5157736..b3b8aee 100644 --- a/src/bjc/imgchain/pipeline/stages/InverseColorStage.java +++ b/src/bjc/imgchain/pipeline/stages/InverseColorStage.java @@ -5,8 +5,17 @@ import javax.swing.JLabel; import bjc.imgchain.pipeline.StageType; -public class NegativeStage extends AbstractPixelStage { - public NegativeStage() { +/** + * Stage which inverts image colors. + * + * @author Ben Culkin + * + */ +public class InverseColorStage extends AbstractPixelStage { + /** + * Create a new inversion stage. + */ + public InverseColorStage() { super(StageType.IMGTRANS); } diff --git a/src/bjc/imgchain/pipeline/stages/LoadStage.java b/src/bjc/imgchain/pipeline/stages/LoadStage.java index ddf7939..d34b419 100644 --- a/src/bjc/imgchain/pipeline/stages/LoadStage.java +++ b/src/bjc/imgchain/pipeline/stages/LoadStage.java @@ -16,9 +16,17 @@ import javax.swing.JTextField; import bjc.imgchain.pipeline.StageType; +/** + * Stage which loads an image. + * @author Ben Culkin + * + */ public class LoadStage extends AbstractPipelineStage { private String fileName; + /** + * Create a new stage which loads an image. + */ public LoadStage() { super(StageType.IMGSOURCE); } diff --git a/src/bjc/imgchain/pipeline/stages/PipeStage.java b/src/bjc/imgchain/pipeline/stages/PipeStage.java index 3b06b4f..f74e322 100644 --- a/src/bjc/imgchain/pipeline/stages/PipeStage.java +++ b/src/bjc/imgchain/pipeline/stages/PipeStage.java @@ -14,9 +14,17 @@ import bjc.imgchain.pipeline.Pipeline; import bjc.imgchain.pipeline.PipelinePicker; import bjc.imgchain.pipeline.StageType; +/** + * Stage which runs a sub-pipeline. + * @author Ben Culkin + * + */ public class PipeStage extends AbstractPipelineStage { private String pipeName; + /** + * Create a new sub-pipeline stage. + */ public PipeStage() { super(StageType.IMGTRANS); } diff --git a/src/bjc/imgchain/pipeline/stages/RecallStage.java b/src/bjc/imgchain/pipeline/stages/RecallStage.java index bcbbddb..1ee9892 100644 --- a/src/bjc/imgchain/pipeline/stages/RecallStage.java +++ b/src/bjc/imgchain/pipeline/stages/RecallStage.java @@ -8,9 +8,17 @@ import bjc.imgchain.ImgChain; import bjc.imgchain.ImgPickerPanel; import bjc.imgchain.pipeline.StageType; +/** + * Stage which recalls an image from memory. + * @author Ben Culkin + * + */ public class RecallStage extends AbstractPipelineStage { private String stashName; + /** + * Create a new recall stage. + */ public RecallStage() { super(StageType.IMGSOURCE); } diff --git a/src/bjc/imgchain/pipeline/stages/SaveStage.java b/src/bjc/imgchain/pipeline/stages/SaveStage.java index e38e403..82bf8f3 100644 --- a/src/bjc/imgchain/pipeline/stages/SaveStage.java +++ b/src/bjc/imgchain/pipeline/stages/SaveStage.java @@ -17,9 +17,18 @@ import javax.swing.JTextField; import bjc.imgchain.pipeline.StageType; import bjc.imgchain.utils.Utils; +/** + * Stage which saves an image. + * + * @author Ben Culkin + * + */ public class SaveStage extends AbstractPipelineStage { private String fileName; + /** + * Create a stage that saves an image. + */ public SaveStage() { super(StageType.IMGSINK); } diff --git a/src/bjc/imgchain/pipeline/stages/StagePicker.java b/src/bjc/imgchain/pipeline/stages/StagePicker.java index a62b15e..0d26139 100644 --- a/src/bjc/imgchain/pipeline/stages/StagePicker.java +++ b/src/bjc/imgchain/pipeline/stages/StagePicker.java @@ -11,11 +11,23 @@ import javax.swing.JTable; import bjc.imgchain.utils.ImmutableTableModel; +/** + * Stage picker GUI. + * + * @author Ben Culkin + * + */ public class StagePicker extends JDialog { private static final long serialVersionUID = 1L; + /** + * Stage name to pick. + */ public String stageName; + /** + * Create a new stage picker. + */ public StagePicker() { super(); diff --git a/src/bjc/imgchain/pipeline/stages/StashStage.java b/src/bjc/imgchain/pipeline/stages/StashStage.java index 47689f5..68579c0 100644 --- a/src/bjc/imgchain/pipeline/stages/StashStage.java +++ b/src/bjc/imgchain/pipeline/stages/StashStage.java @@ -8,9 +8,18 @@ import bjc.imgchain.ImgChain; import bjc.imgchain.pipeline.StageType; import bjc.imgchain.utils.LabeledInputPanel; +/** + * Stage which stashes an image. + * + * @author Ben Culkin + * + */ public class StashStage extends AbstractPipelineStage { private String stashName; + /** + * Create a new image-stashing stage. + */ public StashStage() { super(StageType.IMGSOURCE); } diff --git a/src/bjc/imgchain/pipeline/stages/SubMaskStage.java b/src/bjc/imgchain/pipeline/stages/SubMaskStage.java index 594c97f..f06bff0 100644 --- a/src/bjc/imgchain/pipeline/stages/SubMaskStage.java +++ b/src/bjc/imgchain/pipeline/stages/SubMaskStage.java @@ -10,9 +10,18 @@ import bjc.imgchain.ImgPickerPanel; import bjc.imgchain.pipeline.StageType; import bjc.imgchain.utils.Utils; +/** + * Stage which applies a subtraction mask to the image. + * + * @author Ben Culkin + * + */ public class SubMaskStage extends AbstractPipelineStage { private String masqueName; + /** + * Create a new subtraction mask stage. + */ public SubMaskStage() { super(StageType.IMGTRANS); } diff --git a/src/bjc/imgchain/pipeline/stages/ThresholdStage.java b/src/bjc/imgchain/pipeline/stages/ThresholdStage.java index 55a4dd3..146c5c4 100644 --- a/src/bjc/imgchain/pipeline/stages/ThresholdStage.java +++ b/src/bjc/imgchain/pipeline/stages/ThresholdStage.java @@ -10,11 +10,27 @@ import javax.swing.border.TitledBorder; import bjc.imgchain.pipeline.StageType; import bjc.imgchain.utils.LabeledInputPanel; +/** + * Stage which converts an image into three-tone. + * + * @author Ben Culkin + * + */ public class ThresholdStage extends AbstractPixelStage { + /** + * Create a new threshold stage, where all of the thresholds are 0. + */ public ThresholdStage() { this(0, 0, 0); } + /** + * Creates a new threshold stage. + * + * @param rr The red threshold. + * @param gg The green threshold. + * @param bb The blue threshold. + */ public ThresholdStage(int rr, int gg, int bb) { super(StageType.IMGTRANS); -- cgit v1.2.3