@Override public void propertyChanged(String key) { // Auto-generate an output name from the input grid. if (key.equals(_inputGrid.getKey())) { updateOutputName(); } else if (key.equals(_filterMethodProp.getKey())) { _kernelString.set(getKernel()); updateOutputName(); } else if (key.equals(_size.getKey())) { if (_filterMethodProp.get().getFilter().validateSize(_size.get())) { _kernelString.set(getKernel()); updateOutputName(); } } }
public void validate(final IValidation results) { if (_scatterNumPoints.get() < 1) { results.error(SCATTER_NUM_POINTS, "The number of scatter points must be > 0."); } if (_histogramNumCells.get() < 1) { results.error(HISTOGRAM_NUM_CELLS, "The number of histogram cells must be > 0."); } if (_histogramMinValue.get() > _histogramMaxValue.get()) { results.error( HISTOGRAM_MIN_VALUE, "The histogram minimum value must be less than the maximum value."); } if (_pieNumWedges.get() < 2) { results.error(PIE_NUM_WEDGES, "The number of pie wedges must be >= 2."); } if (_gridImageNumRows.get() < 1) { results.error(GRID_IMAGE_NUM_ROWS, "The number of grid image rows must be > 0."); } if (_gridImageNumCols.get() < 1) { results.error(GRID_IMAGE_NUM_COLS, "The number of grid image columns must be > 0."); } }
public void updateOutputName() { String nameSuffix = "_" + _filterMethodProp.get().getAbbrev() + _size.get(); String outputName = _inputGrid.isNull() ? "" : _inputGrid .get() .getMapper() .createOutputDisplayName(_inputGrid.get().getDisplayName(), nameSuffix); _outputGridName.set(outputName); }
public String getKernel() { float[][] kernel = _filterMethodProp.get().getFilter().getDefaultKernel(_size.get()); StringBuilder builder = new StringBuilder(); Formatter formatter = new Formatter(builder); for (float[] row : kernel) { for (float element : row) { formatter.format(" %11.9f", element); } formatter.format("\n"); } return builder.toString(); }
/** @throws CoreException */ @Override public void run(IProgressMonitor monitor, ILogger logger, IRepository repository) throws CoreException { Grid3d property = _inputGrid.get(); int size = _size.get(); String propertyName = _outputGridName.get(); String outputComments = _outputComments.get(); float[][] kernel = _filterMethodProp.get().getFilter().getDefaultKernel(_size.get()); // apply the filter on the horizon float[][] result = _filterMethodProp.get().getFilter().execute(property, size, kernel, monitor); // Create the new property Grid3d newProperty = Grid3dFactory.create(repository, property, result, propertyName); newProperty.setComment(outputComments); try { newProperty.update(); } catch (IOException ex) { throw new RuntimeException(ex.getMessage()); } }
public void validate(final IValidation results) { // Validate the well bore radius is positive. final int size = _size.get(); if (size <= 0) { results.error(WELL_BORE_RADIUS, "Invalid bore radius: " + size); } else if (size == 0) { results.warning(WELL_BORE_RADIUS, "Zero bore radius specified."); } // Validate the well bore color is non-null. if (_color.isNull()) { results.error(WELL_BORE_COLOR, "No bore color specified."); } }
@Override public void validate(IValidation results) { // Validate the input grid is non-null and of the correct type. if (_inputGrid.isNull()) { results.error(_inputGrid, "No input grid specified."); } // Validate the output name is non-zero length. if (_outputGridName.isEmpty()) { results.error(_outputGridName, "No output grid name specified."); } // Validate the filter size if (!_filterMethodProp.get().getFilter().validateSize(_size.get())) { results.error(_size, _filterMethodProp.get().getFilter().getMessage()); } // Check if an entry already exists in the datastore. if (!_inputGrid.isNull() && !_outputGridName.isEmpty()) { if (Grid3dFactory.existsInStore(_inputGrid.get(), _outputGridName.get())) { results.warning(_outputGridName, "Exists in datastore and will be overwritten."); } } }
/** * Gets the radius to render the well bore. * * @return the well bore radius. */ public int getBoreRadius() { return _size.get(); }