java.awt.image.WritableRenderedImage.getWritableTile()方法的使用及代码示例

x33g5p2x  于2022-02-03 转载在 其他  
字(8.7k)|赞(0)|评价(0)|浏览(125)

本文整理了Java中java.awt.image.WritableRenderedImage.getWritableTile()方法的一些代码示例,展示了WritableRenderedImage.getWritableTile()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。WritableRenderedImage.getWritableTile()方法的具体详情如下:
包路径:java.awt.image.WritableRenderedImage
类名称:WritableRenderedImage
方法名:getWritableTile

WritableRenderedImage.getWritableTile介绍

暂无

代码示例

代码示例来源:origin: geotools/geotools

  1. /**
  2. * Sets every samples in the given image to the given value. This method is typically used for
  3. * clearing an image content.
  4. *
  5. * @param image The image to fill.
  6. * @param value The value to to given to every samples.
  7. */
  8. public static void fill(final WritableRenderedImage image, final Number value) {
  9. int y = image.getMinTileY();
  10. for (int ny = image.getNumYTiles(); --ny >= 0; ) {
  11. int x = image.getMinTileX();
  12. for (int nx = image.getNumXTiles(); --nx >= 0; ) {
  13. final WritableRaster raster = image.getWritableTile(x, y);
  14. try {
  15. fill(raster.getDataBuffer(), value);
  16. } finally {
  17. image.releaseWritableTile(x, y);
  18. }
  19. }
  20. }
  21. }

代码示例来源:origin: Geomatys/geotoolkit

  1. /**
  2. * Update current writable raster from tiles array coordinates.
  3. */
  4. @Override
  5. protected void updateCurrentRaster(int tileX, int tileY) {
  6. super.updateCurrentRaster(tileX, tileY);
  7. if (currentWritableDataArray != null) writableRenderedImage.releaseWritableTile(prectX, prectY);
  8. currentWritableDataArray = ((DataBufferByte) writableRenderedImage.getWritableTile(tileX, tileY).getDataBuffer()).getData();
  9. this.prectX = tileX;
  10. this.prectY = tileY;
  11. }

代码示例来源:origin: Geomatys/geotoolkit

  1. /**
  2. * {@inheritDoc }.
  3. */
  4. @Override
  5. protected void updateCurrentRaster(int tileX, int tileY) {
  6. super.updateCurrentRaster(tileX, tileY);
  7. if (currentWritableRaster != null) writableRenderedImage.releaseWritableTile(prectX, prectY);
  8. this.currentWritableRaster = writableRenderedImage.getWritableTile(tileX, tileY);
  9. this.currentWritableRaster = writableRenderedImage.getWritableTile(tileX, tileY);
  10. this.currentWritableDataArray = ((DataBufferFloat) currentWritableRaster.getDataBuffer()).getData();
  11. this.prectX = tileX;
  12. this.prectY = tileY;
  13. }

代码示例来源:origin: Geomatys/geotoolkit

  1. /**
  2. * {@inheritDoc }.
  3. */
  4. @Override
  5. protected void updateCurrentRaster(int tileX, int tileY) {
  6. super.updateCurrentRaster(tileX, tileY);
  7. if (currentWritableRaster != null) writableRenderedImage.releaseWritableTile(prectX, prectY);
  8. this.currentWritableRaster = writableRenderedImage.getWritableTile(tileX, tileY);
  9. this.currentWritableDataArray = ((DataBufferByte) currentWritableRaster.getDataBuffer()).getData();
  10. this.prectX = tileX;
  11. this.prectY = tileY;
  12. }

代码示例来源:origin: Geomatys/geotoolkit

  1. /**
  2. * Update current writable raster from tiles array coordinates.
  3. */
  4. @Override
  5. protected void updateCurrentRaster(int tileX, int tileY) {
  6. super.updateCurrentRaster(tileX, tileY);
  7. if (currentWritableRaster != null) writableRenderedImage.releaseWritableTile(prectX, prectY);
  8. currentWritableRaster = writableRenderedImage.getWritableTile(tileX, tileY);
  9. this.prectX = tileX;
  10. this.prectY = tileY;
  11. }

代码示例来源:origin: Geomatys/geotoolkit

  1. /**
  2. * {@inheritDoc }.
  3. */
  4. @Override
  5. protected void updateCurrentRaster(int tileX, int tileY) {
  6. super.updateCurrentRaster(tileX, tileY);
  7. if (currentWritableRaster != null) writableRenderedImage.releaseWritableTile(prectX, prectY);
  8. this.currentWritableRaster = writableRenderedImage.getWritableTile(tileX, tileY);
  9. prectX = tileX;
  10. prectY = tileY;
  11. }

代码示例来源:origin: Geomatys/geotoolkit

  1. /**
  2. * Update current writable raster from tiles array coordinates.
  3. */
  4. @Override
  5. protected void updateCurrentRaster(int tileX, int tileY) {
  6. super.updateCurrentRaster(tileX, tileY);
  7. if (currentWritableDataArray != null) writableRenderedImage.releaseWritableTile(prectX, prectY);
  8. currentWritableDataArray = ((DataBufferFloat) writableRenderedImage.getWritableTile(tileX, tileY).getDataBuffer()).getData();
  9. this.prectX = tileX;
  10. this.prectY = tileY;
  11. }

代码示例来源:origin: eu.agrosense.client/grid-api

  1. public void setRasterValue(Coordinate coordinate, int value) {
  2. checkState();
  3. if (!boundingBox.contains(coordinate.x, coordinate.y)) {
  4. throw new IllegalArgumentException("Can only add raster values for coordinates (" + coordinate + ") within the bounding box (" + boundingBox + ")");
  5. }
  6. Point p = this.gridCellSize.getCell(boundingBox, coordinate);
  7. // LOGGER.log(Level.FINEST, "raster value set to {0} on cell {1}", new Object[]{value, p});
  8. WritableRenderedImage raster = getRenderedImage();
  9. WritableRaster tile = raster.getWritableTile(p.x, p.y);
  10. try {
  11. tile.setSample(p.x, p.y, 0, value);
  12. } catch (ArrayIndexOutOfBoundsException e) {
  13. LOGGER.log(Level.WARNING, "ArrayIndexOutOfBoundsException for p.x={0} and p.y={1}", new Object[]{p.x, p.y});
  14. }
  15. raster.releaseWritableTile(p.x, p.y);
  16. }

代码示例来源:origin: apache/sis

  1. /**
  2. * Fetches from the image a tile for the current {@link #tileX} and {@link #tileY} coordinates.
  3. * All fields prefixed by {@code current} are updated by this method. This method also updates
  4. * the {@link #y} field, but caller is responsible for updating the {@link #x} field.
  5. */
  6. private void fetchTile() {
  7. currentRaster = null;
  8. if (destination != null) {
  9. destRaster = destination.getWritableTile(tileX, tileY);
  10. if (destination == image) {
  11. currentRaster = destRaster;
  12. }
  13. }
  14. if (currentRaster == null) {
  15. currentRaster = image.getTile(tileX, tileY);
  16. }
  17. final int minX = currentRaster.getMinX();
  18. final int minY = currentRaster.getMinY();
  19. currentLowerX = Math.max(lowerX, minX);
  20. y = Math.max(lowerY, minY);
  21. currentUpperX = Math.min(upperX, minX + tileWidth);
  22. currentUpperY = Math.min(upperY, minY + tileHeight);
  23. if (currentRaster.getNumBands() != numBands) {
  24. throw new RasterFormatException(Resources.format(Resources.Keys.IncompatibleTile_2, tileX, tileY));
  25. }
  26. }

代码示例来源:origin: Geomatys/geotoolkit

  1. /**
  2. * Sets every samples in the given image to the given value. This method is typically used
  3. * for clearing an image content.
  4. *
  5. * @param image The image to fill.
  6. * @param value The value to be given to every samples.
  7. */
  8. public static void fill(final WritableRenderedImage image, final Number value) {
  9. int y = image.getMinTileY();
  10. for (int ny = image.getNumYTiles(); --ny >= 0; y++) {
  11. int x = image.getMinTileX();
  12. for (int nx = image.getNumXTiles(); --nx >= 0; x++) {
  13. final WritableRaster raster = image.getWritableTile(x, y);
  14. try {
  15. fill(raster.getDataBuffer(), value);
  16. } finally {
  17. image.releaseWritableTile(x, y);
  18. }
  19. }
  20. }
  21. }

代码示例来源:origin: org.geotools/gt-coverage

  1. /**
  2. * Sets every samples in the given image to the given value. This method is typically used
  3. * for clearing an image content.
  4. *
  5. * @param image The image to fill.
  6. * @param value The value to to given to every samples.
  7. */
  8. public static void fill(final WritableRenderedImage image, final Number value) {
  9. int y = image.getMinTileY();
  10. for (int ny = image.getNumYTiles(); --ny >= 0;) {
  11. int x = image.getMinTileX();
  12. for (int nx = image.getNumXTiles(); --nx >= 0;) {
  13. final WritableRaster raster = image.getWritableTile(x, y);
  14. try {
  15. fill(raster.getDataBuffer(), value);
  16. } finally {
  17. image.releaseWritableTile(x, y);
  18. }
  19. }
  20. }
  21. }

代码示例来源:origin: Geomatys/geotoolkit

  1. final Raster top = (tileY != minTileY) ? image.getTile(tileX, tileY-1) : null;
  2. final Raster bottom = (tileY != maxTileY) ? image.getTile(tileX, tileY+1) : null;
  3. final WritableRaster raster = image.getWritableTile(tileX, tileY);
  4. try {
  5. fill(raster, top, bottom, bounds, x, y, oldSamples, newSamples, stack);

代码示例来源:origin: Geomatys/geotoolkit

  1. if (fillValue.length != numBands)
  2. throw new IllegalArgumentException("fillValue table length and numbands are different : "+fillValue.length+" numbands = "+this.numBands);
  3. assert(numBands == imageDest.getWritableTile(imageDest.getMinTileX(), imageDest.getMinTileY()).getNumBands())
  4. : "destination image numbands different from source image numbands";
  5. this.destIterator = PixelIteratorFactory.createDefaultWriteableIterator(this.imageDest, this.imageDest, resampleArea);

代码示例来源:origin: Geomatys/geotoolkit

  1. if (fillValue.length != numBands)
  2. throw new IllegalArgumentException("fillValue table length and numbands are different : "+fillValue.length+" numbands = "+this.numBands);
  3. assert(numBands == imageDest.getWritableTile(imageDest.getMinTileX(), imageDest.getMinTileY()).getNumBands())
  4. : "destination image numbands different from source image numbands";
  5. this.destIterator = PixelIteratorFactory.createDefaultWriteableIterator(this.imageDest, this.imageDest, resampleArea);

代码示例来源:origin: Geomatys/geotoolkit

  1. public ResampleTest() {
  2. final ColorSpace cs = ColorSpace.getInstance(ColorSpace.CS_GRAY);
  3. final ColorModel cm = new ComponentColorModel(cs, new int[]{Double.SIZE}, false, false, Transparency.OPAQUE, DataBuffer.TYPE_DOUBLE);
  4. final ImageTypeSpecifier imgTypeSpec = new ImageTypeSpecifier(cm, cm.createCompatibleSampleModel(1, 1));
  5. sourceImg = imgTypeSpec.createBufferedImage(3, 3);
  6. final WritableRaster raster = sourceImg.getWritableTile(0, 0);
  7. raster.setSample(0, 0, 0, 1);
  8. raster.setSample(1, 0, 0, 1);
  9. raster.setSample(2, 0, 0, 1);
  10. raster.setSample(0, 1, 0, 1);
  11. raster.setSample(1, 1, 0, 2);
  12. raster.setSample(2, 1, 0, 1);
  13. raster.setSample(0, 2, 0, 1);
  14. raster.setSample(1, 2, 0, 1);
  15. raster.setSample(2, 2, 0, 1);
  16. }

代码示例来源:origin: Geomatys/geotoolkit

  1. final ImageTypeSpecifier imgTypeSpec = new ImageTypeSpecifier(cm, cm.createCompatibleSampleModel(1, 1));
  2. sourceImg = imgTypeSpec.createBufferedImage(4, 4);
  3. final WritableRaster raster = sourceImg.getWritableTile(0, 0);

代码示例来源:origin: Geomatys/geotoolkit

  1. final ImageTypeSpecifier imgTypeSpec = new ImageTypeSpecifier(cm, cm.createCompatibleSampleModel(1, 1));
  2. sourceImg = imgTypeSpec.createBufferedImage(4, 4);
  3. final WritableRaster raster = sourceImg.getWritableTile(0, 0);

相关文章