Move getImageSpritePixels to ImageUtil
This commit is contained in:
@@ -26,7 +26,6 @@
|
||||
package net.runelite.client.plugins.banktags.tabs;
|
||||
|
||||
import java.awt.image.BufferedImage;
|
||||
import java.awt.image.PixelGrabber;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import lombok.Getter;
|
||||
@@ -61,26 +60,9 @@ public enum TabSprites
|
||||
|
||||
for (TabSprites value : values())
|
||||
{
|
||||
map.put(value.spriteId, getSpritePixels(client, value.image));
|
||||
map.put(value.spriteId, ImageUtil.getImageSpritePixels(value.image, client));
|
||||
}
|
||||
|
||||
return map;
|
||||
}
|
||||
|
||||
private static SpritePixels getSpritePixels(Client client, BufferedImage image)
|
||||
{
|
||||
int[] pixels = new int[image.getWidth() * image.getHeight()];
|
||||
|
||||
try
|
||||
{
|
||||
new PixelGrabber(image, 0, 0, image.getWidth(), image.getHeight(), pixels, 0, image.getWidth())
|
||||
.grabPixels();
|
||||
}
|
||||
catch (InterruptedException ex)
|
||||
{
|
||||
log.debug("PixelGrabber was interrupted: ", ex);
|
||||
}
|
||||
|
||||
return client.createSpritePixels(pixels, image.getWidth(), image.getHeight());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -28,7 +28,6 @@ package net.runelite.client.plugins.interfacestyles;
|
||||
|
||||
import com.google.inject.Provides;
|
||||
import java.awt.image.BufferedImage;
|
||||
import java.awt.image.PixelGrabber;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import javax.imageio.ImageIO;
|
||||
@@ -47,6 +46,7 @@ import net.runelite.client.eventbus.Subscribe;
|
||||
import net.runelite.client.game.SpriteManager;
|
||||
import net.runelite.client.plugins.Plugin;
|
||||
import net.runelite.client.plugins.PluginDescriptor;
|
||||
import net.runelite.client.util.ImageUtil;
|
||||
|
||||
@Slf4j
|
||||
@PluginDescriptor(
|
||||
@@ -195,7 +195,7 @@ public class InterfaceStylesPlugin extends Plugin
|
||||
{
|
||||
log.debug("Loading: " + filePath);
|
||||
BufferedImage spriteImage = ImageIO.read(inputStream);
|
||||
return getImageSpritePixels(spriteImage);
|
||||
return ImageUtil.getImageSpritePixels(spriteImage, client);
|
||||
}
|
||||
catch (IOException ex)
|
||||
{
|
||||
@@ -209,23 +209,6 @@ public class InterfaceStylesPlugin extends Plugin
|
||||
return null;
|
||||
}
|
||||
|
||||
private SpritePixels getImageSpritePixels(BufferedImage image)
|
||||
{
|
||||
int[] pixels = new int[image.getWidth() * image.getHeight()];
|
||||
|
||||
try
|
||||
{
|
||||
new PixelGrabber(image, 0, 0, image.getWidth(), image.getHeight(), pixels, 0, image.getWidth())
|
||||
.grabPixels();
|
||||
}
|
||||
catch (InterruptedException ex)
|
||||
{
|
||||
log.debug("PixelGrabber was interrupted: ", ex);
|
||||
}
|
||||
|
||||
return client.createSpritePixels(pixels, image.getWidth(), image.getHeight());
|
||||
}
|
||||
|
||||
private void adjustWidgetDimensions()
|
||||
{
|
||||
for (WidgetOffset widgetOffset : WidgetOffset.values())
|
||||
@@ -284,7 +267,7 @@ public class InterfaceStylesPlugin extends Plugin
|
||||
|
||||
if (compassImage != null)
|
||||
{
|
||||
SpritePixels compass = getImageSpritePixels(compassImage);
|
||||
SpritePixels compass = ImageUtil.getImageSpritePixels(compassImage, client);
|
||||
client.setCompass(compass);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -30,16 +30,21 @@ import java.awt.Image;
|
||||
import java.awt.geom.AffineTransform;
|
||||
import java.awt.image.AffineTransformOp;
|
||||
import java.awt.image.BufferedImage;
|
||||
import java.awt.image.PixelGrabber;
|
||||
import java.awt.image.RescaleOp;
|
||||
import java.io.IOException;
|
||||
import java.util.Arrays;
|
||||
import javax.imageio.ImageIO;
|
||||
import javax.swing.GrayFilter;
|
||||
import java.util.function.Predicate;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import net.runelite.api.Client;
|
||||
import net.runelite.api.SpritePixels;
|
||||
|
||||
/**
|
||||
* Various Image/BufferedImage utilities.
|
||||
*/
|
||||
@Slf4j
|
||||
public class ImageUtil
|
||||
{
|
||||
/**
|
||||
@@ -407,4 +412,28 @@ public class ImageUtil
|
||||
{
|
||||
return new RescaleOp(scales, offsets, null).filter(image, null);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Converts the buffered image into a sprite image and returns it
|
||||
* @param image The image to be converted
|
||||
* @param client Current client instance
|
||||
* @return The buffered image as a sprite image
|
||||
*/
|
||||
public static SpritePixels getImageSpritePixels(BufferedImage image, Client client)
|
||||
{
|
||||
int[] pixels = new int[image.getWidth() * image.getHeight()];
|
||||
|
||||
try
|
||||
{
|
||||
new PixelGrabber(image, 0, 0, image.getWidth(), image.getHeight(), pixels, 0, image.getWidth())
|
||||
.grabPixels();
|
||||
}
|
||||
catch (InterruptedException ex)
|
||||
{
|
||||
log.debug("PixelGrabber was interrupted: ", ex);
|
||||
}
|
||||
|
||||
return client.createSpritePixels(pixels, image.getWidth(), image.getHeight());
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user