/** Creates new form HDRResponseFunctionCalculatorFrame */ public HDRResponseFunctionCalculatorFrame(ResponseFunctionCalculator calculator) { initComponents(); this.calculator = calculator; this.txtNoOfPixels.setText( String.valueOf(calculator.getResponseFunctionCalculatorSettings().getNoOfPixelsN())); this.txtNoOfChannels.setText( String.valueOf(calculator.getResponseFunctionCalculatorSettings().getNoOfChannels())); this.txtNoOfImages.setText( String.valueOf(calculator.getResponseFunctionCalculatorSettings().getNoOfImages())); this.txtExpTimes.setText( ArrayTools.arrayToString(calculator.getResponseFunctionCalculatorSettings().getExpTimes())); this.lblAlgorithm_.setText(calculator.getAlgorithm()); }
private void btnSaveBinActionPerformed( java.awt.event.ActionEvent evt) { // GEN-FIRST:event_btnSaveBinActionPerformed if (getOut() == null) { return; } String fn = calculator.getResponseFunctionCalculatorSettings().getFileName(); String path = getPath(fn); if (path == null) { return; } ObjectOutputStream writer = null; try { writer = new ObjectOutputStream(new BufferedOutputStream(new FileOutputStream(path))); writer.writeObject(getOut()); } catch (IOException ex) { Logger.getLogger(HDRResponseFunctionCalculatorFrame.class.getName()) .log(Level.SEVERE, null, ex); } finally { try { writer.close(); } catch (IOException ex) { Logger.getLogger(HDRResponseFunctionCalculatorFrame.class.getName()) .log(Level.SEVERE, null, ex); } } } // GEN-LAST:event_btnSaveBinActionPerformed
private void btnCalcActionPerformed( java.awt.event.ActionEvent evt) { // GEN-FIRST:event_btnCalcActionPerformed try { btnCalc.setEnabled(false); btnShow.setEnabled(false); btnSaveBin.setEnabled(false); btnCancel.setEnabled(false); btnHelp.setEnabled(false); int type = calculator.getResponseFunctionCalculatorSettings().getType(); int lambda = Integer.parseInt(txtLambda.getText()); double[][] g; switch (type) { case ImagePlus.COLOR_RGB: g = new double[3][]; System.out.println("Channel 0:"); g[0] = calculator.calcResponse(0, lambda); System.out.println("Channel 1:"); g[1] = calculator.calcResponse(1, lambda); System.out.println("Channel 2:"); g[2] = calculator.calcResponse(2, lambda); out = new ResponseFunction(g, type, calculator.getW()); btnCalc.setEnabled(true); btnShow.setEnabled(true); btnSaveBin.setEnabled(true); btnCancel.setEnabled(true); btnHelp.setEnabled(true); btnSaveTxt.setEnabled(true); break; case ImagePlus.GRAY16: g = new double[1][]; g[0] = calculator.calcResponse(0, lambda); out = new ResponseFunction(g, type, calculator.getW()); btnCalc.setEnabled(true); btnShow.setEnabled(true); btnSaveBin.setEnabled(true); btnCancel.setEnabled(true); btnHelp.setEnabled(true); break; default: IJ.error("The image has an unsupported image type!"); btnCalc.setEnabled(true); btnShow.setEnabled(false); btnSaveBin.setEnabled(false); btnCancel.setEnabled(true); btnHelp.setEnabled(true); } } catch (TypeNotSupportedException ex) { Logger.getLogger(HDRResponseFunctionCalculatorFrame.class.getName()) .log(Level.SEVERE, null, ex); } } // GEN-LAST:event_btnCalcActionPerformed
private void btnShowActionPerformed( java.awt.event.ActionEvent evt) { // GEN-FIRST:event_btnShowActionPerformed double[] yVal = new double[calculator.getResponseFunctionCalculatorSettings().getLevels()]; for (int i = 0; i < yVal.length; i++) { yVal[i] = i; } PlotWindow plot; switch (out.getType()) { case ImagePlus.COLOR_RGB: plot = new PlotWindow("Response Function", "x", "y", out.getG()[0], yVal); plot.setColor(Color.GREEN); plot.addPoints(out.getG()[1], yVal, PlotWindow.LINE); plot.setColor(Color.BLUE); plot.addPoints(out.getG()[2], yVal, PlotWindow.LINE); plot.setColor(Color.RED); plot.draw(); break; case ImagePlus.GRAY16: plot = new PlotWindow("Response Function", "x", "y", out.getG()[0], yVal); plot.draw(); break; } } // GEN-LAST:event_btnShowActionPerformed