public boolean doSelectCoord() throws HeadlessException { SingleCoordSelectionPanel pan = new SingleCoordSelectionPanel(); // pan.setMaxX(this.expContext.getNrcols()); // pan.setMaxY(this.expContext.getNrrows()); if (maincont.getAbsDataAreaCoord() != null) { pan.setCoord1(maincont.getAbsDataAreaCoord()); } int ans = JOptionPane.showConfirmDialog( this, pan, "Enter a selection:", JOptionPane.OK_CANCEL_OPTION); if (ans == JOptionPane.CANCEL_OPTION) { return true; } // RELATIVE to current sub experiment WellCoordinate c1 = new WellCoordinate( pan.getCoord1().getCol() - maincont.getExp().getColOffset(), pan.getCoord1().getRow() - maincont.getExp().getRowOffset()); WellCoordinate c2 = c1.add(100, 100); WellSelection sel = new WellSelection(c1, c2); WellCoordinate abs = pan.getCoord1(); if (maincont.getAbsDataAreaCoord() != null && abs.equals(maincont.getAbsDataAreaCoord())) { GuiUtils.showNonModalMsg("Same coordinates, I won't to anything", "Process"); return true; } maincont.setAbsDataAreaCoord(abs); LookupUtils.publish(wellSelectionContent, sel); return false; }
private void subtractActionPerformed( java.awt.event.ActionEvent evt) { // GEN-FIRST:event_subtractActionPerformed RasterData data = maincont.getData(); if (data == null) { JOptionPane.showMessageDialog(this, "I have no data yet to subtract anything from :-)"); return; } if (subtract_type == null) { subtract_type = maincont.getFiletype(); } FlowSelection pan = new FlowSelection( "Select the flow and file type you wish to subtract from the currently selected data"); pan.setFlow(subtract_flow); pan.setFiletype(subtract_type); int ans = JOptionPane.showConfirmDialog( this, pan, "Data Subtraction", JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE); if (ans != JOptionPane.OK_OPTION) { return; } subtract_flow = pan.getFlow(); subtract_type = pan.getFiletype(); // otherwise load the data and then subtract RasterData sub = null; DataAccessManager manager = DataAccessManager.getManager(maincont.getExp().getWellContext()); try { p("Loading subregion, RELATIVE coord " + maincont.getRelativeDataAreaCoord()); sub = manager.getRasterDataForArea( null, maincont.getRasterSize(), maincont.getRelativeDataAreaCoord(), pan.getFlow(), pan.getFiletype(), null, 0, -1); // now subtract first frame } catch (Exception ex) { p("Error when loading: " + ErrorHandler.getString(ex)); } if (sub == null) { JOptionPane.showMessageDialog( this, "I could not load flow " + pan.getFlow() + ", " + pan.getFiletype() + ", @ " + maincont.getAbsDataAreaCoord()); return; } String what = "raw"; if (this.automatic_nn) { GuiUtils.showNonModalMsg("Computing NN before subtraction"); sub = computeNN(null, sub); what = "NN subtracted"; } data.subtract(sub); JOptionPane.showMessageDialog( this, "I subtracted the " + what + " data from " + pan.getFlow() + ", " + pan.getFiletype() + ", @ " + maincont.getAbsDataAreaCoord()); this.rasterViewUpdate(); } // GEN-LAST:event_subtractActionPerformed
public void rasterViewCreate(boolean load, String title) { p("=========rasterViewCreate called: load=" + load); // if (load) { // Exception e = new Exception("Tracing call"); // p(ErrorHandler.getString(e)); // } if (!getExpContext()) { return; } if (load) { if (selection != null) GuiUtils.showNonModalMsg( "Loading " + selection + " for " + maincont.getFiletype() + ", flow " + maincont.getFlow(), "Process"); } String base = "?"; if (maincont.getFiletype() == RawType.ACQ) { base = "" + maincont.getExp().getWellContext().getBase(maincont.getFlow()); } this.flowPanel.setToolTipText( "<html>Base for flow " + maincont.getFlow() + ":" + base + "<br>Flow order: " + maincont.getExp().getFlowOrder() + "</html>"); raster = new RasterView(maincont, load); this.panImage.removeAll(); panImage.add(raster); // repaint(); // p("adding raster view"); if (load) { this.getUserPreferences(); } raster.update(load, maincont); // paintImmediately(0,0,1000,1000); panImage.repaint(); raster.repaint(); if (load) { title = "Raw data"; } title += " flow " + maincont.getFlow() + "=" + base; chartViewCreate(title); invalidate(); revalidate(); // this.paintAll(getGraphics()); repaint(); if (load) { if (this.automatic_nn) { p("also doing nn - disable nn"); this.btnNN.setEnabled(false); btnNN.setText(""); btnNN.setToolTipText( "Automatically computing NN - check Explorer Options if you wish to change it!"); RasterData data = computeNN(null); maincont.setData(data); rasterViewCreate( false, "After masked neighbor subtraction, span=" + maincont.getSpan() + ", BG mask=" + maincont.getBgMask()); } else { this.btnNN.setEnabled(true); btnNN.setText("Compute NN"); btnNN.setToolTipText( "Click to compute NN bg subtraction - check Explorer Options if you wish <b>automate</b> this!"); } } }