List of usage examples for com.badlogic.gdx.graphics Pixmap Pixmap
public Pixmap(byte[] encodedData, int offset, int len)
From source file:net.mwplay.cocostudio.ui.widget.TImage.java
License:Apache License
public static TImage makeAlphaImage(float w, float h) { Pixmap pixmap = new Pixmap((int) w, (int) h, Pixmap.Format.RGBA8888); pixmap.setColor(Color.BLACK); pixmap.fill();/*from w ww. ja va2 s .co m*/ Texture texture = new Texture(pixmap); TImage image = new TImage(texture); image.addAction(Actions.alpha(0.5f)); return image; }
From source file:net.mwplay.cocostudio.ui.widget.TImage.java
License:Apache License
public static TImage makeImage(float w, float h, Color color) { Pixmap pixmap = new Pixmap((int) w, (int) h, Pixmap.Format.RGBA8888); pixmap.setColor(color);//from w w w. ja va 2 s . co m pixmap.fill(); Texture texture = new Texture(pixmap); TImage image = new TImage(texture); return image; }
From source file:net.noviden.towerdefense.MapCreator.MapThumbnail.java
License:Open Source License
public static SpriteDrawable createThumbnail(Map map, int dims) { Pixmap pixmap = new Pixmap(dims, dims, Pixmap.Format.RGB565); // draw border around pixmap pixmap.setColor(Color.PURPLE); pixmap.drawRectangle(0, 0, pixmap.getWidth(), pixmap.getHeight()); // draw paths pixmap.setColor(Color.RED);//from w w w .jav a 2 s. c o m for (Path path : map.getGenericPaths()) { for (int j = 0; j < path.set.size() - 1; j++) { Point a = path.set.get(j), b = path.set.get(j + 1); int ax = (int) (a.x * dims), ay = (int) (a.y * dims), bx = (int) (b.x * dims), by = (int) (b.y * dims); pixmap.drawLine(ax, ay, bx, by); } } Texture texture = new Texture(pixmap); Sprite sprite = new Sprite(texture); SpriteDrawable spriteDrawable = new SpriteDrawable(sprite); return spriteDrawable; }
From source file:net.shad.s3gdxcodec.test.S3CodecGdxMain.java
License:Apache License
/** * Create video file//from ww w . j av a 2 s .com */ @Override public void create() { pixmap = new Pixmap(512, 512, Pixmap.Format.RGBA8888); encoder = new PixmapEncoder(); try { fileHandle = Gdx.files.internal("test.mp4"); Gdx.app.log("create ", "Save file to: " + fileHandle.path()); encoder.initalize(fileHandle.file(), pixmap.getWidth(), pixmap.getHeight()); for (int i = 0; i < 1024; i++) { fractalMandelbrot(pixmap, 0.0, 0.0, 0.2 + (0.01 * i), 0.2 + (0.01 * i), 192); pixmapToPicture = encoder.pixmapToPicture(pixmap); encoder.encodeFrame(pixmapToPicture); } encoder.close(); } catch (IOException ex) { Logger.getLogger(S3CodecGdxMain.class.getName()).log(Level.SEVERE, null, ex); } }
From source file:net.shad.s3rend.gfx.pixmap.disort.RotoZoom.java
License:Apache License
/** * * @param pixmap// www. j a va2 s . c o m * @param amplify - The bulge value */ public static void generate(final Pixmap pixmap, float centerX, float centerY, float rotate, float zoomX, float zoomY) { int width = pixmap.getWidth(); int height = pixmap.getHeight(); // // Rotate // rotate = rotate * PI2; // // Zoom // zoomX = (float) Math.pow(.5f, zoomX - 1); zoomY = (float) Math.pow(.5f, zoomY - 1); float c = (float) (Math.cos(rotate)); float s = (float) (Math.sin(rotate)); float tw2 = (float) width / 2.0f; float th2 = (float) height / 2.0f; float ys = s * -th2; float yc = c * -th2; Pixmap dstPixmap = new Pixmap(width, height, pixmap.getFormat()); dstPixmap.setColor(Color.RED); dstPixmap.fill(); for (int y = 0; y < width; y++) { // // x' = cos(x)-sin(y) + Center X; // float u = (((c * -tw2) - ys) * zoomX) + centerX; // // y' = sin(x)+cos(y) + Center Y; // float v = (((s * -tw2) + yc) * zoomY) + centerY; for (int x = 0; x < height; x++) { int ut = u >= 0 ? (int) u : (int) u - 1; int vt = v >= 0 ? (int) v : (int) v - 1; // // Texels // 1 | 2 // ------- // 3 | 4 // // // Texel1 // int rgb = pixmap.getPixel(vt, ut); int r = (rgb & 0xff000000) >>> 24; int g = (rgb & 0x00ff0000) >>> 16; int b = (rgb & 0x0000ff00) >>> 8; int a = (rgb & 0x000000ff); int outR = r; int outG = g; int outB = b; int outA = 255; // // Texel2 // rgb = pixmap.getPixel(vt, ut + height); r = (rgb & 0xff000000) >>> 24; g = (rgb & 0x00ff0000) >>> 16; b = (rgb & 0x0000ff00) >>> 8; outR += r; outG += g; outB += b; // // Texel3 // rgb = pixmap.getPixel((vt + width), ut); r = (rgb & 0xff000000) >>> 24; g = (rgb & 0x00ff0000) >>> 16; b = (rgb & 0x0000ff00) >>> 8; outR += r; outG += g; outB += b; // // Texel 4 // rgb = pixmap.getPixel(vt + width, ut + height); r = (rgb & 0xff000000) >>> 24; g = (rgb & 0x00ff0000) >>> 16; b = (rgb & 0x0000ff00) >>> 8; outR += r; outG += g; outB += b; // // Clamp // outR = (outR < 255) ? outR : 255; outR = (outR > 0) ? outR : 0; outG = (outG < 255) ? outG : 255; outG = (outG > 0) ? outG : 0; outB = (outB < 255) ? outB : 255; outB = (outB > 0) ? outB : 0; dstPixmap.drawPixel(x, y, ((int) outR << 24) | ((int) outG << 16) | ((int) outB << 8) | outA); // // Vectors X // u += c * zoomX; v += s * zoomY; } // // Vectors Y // ys += s; yc += c; } pixmap.drawPixmap(dstPixmap, 0, 0); }
From source file:net.shad.s3rend.gfx.pixmap.disort.Vortex.java
License:Apache License
/** * // w w w . java2s. c om * @param pixmap * @param centerX * @param centerY * @param rayX * @param rayY * @param twist */ public static void generate(final Pixmap pixmap, float centerX, float centerY, float rayX, float rayY, float twist) { int width = pixmap.getWidth(); int height = pixmap.getHeight(); // // Process operator // int dwCenterX = (int) (centerX * width); int dwCenterY = (int) (centerY * height); int dwRadiusX = (int) (rayX * width); int dwRadiusY = (int) (rayY * height); float f1_RadiusX = 1.0f / (float) dwRadiusX; float f1_RadiusY = 1.0f / (float) dwRadiusY; float radians = twist * PI2; Pixmap dstPixmap = new Pixmap(width, height, pixmap.getFormat()); dstPixmap.setColor(Color.BLACK); dstPixmap.fill(); for (int y = 0; y < height; y++) { for (int x = 0; x < width; x++) { // // Calculate distance // float dx = (float) (x - dwCenterX) * f1_RadiusX; float dy = (float) (y - dwCenterY) * f1_RadiusY; float d = (float) Math.sqrt(dx * dx + dy * dy); // // If distance more radius, olny copy pixels // if (d > 1.0) { int rgb = pixmap.getPixel(x, y); dstPixmap.drawPixel(x, y, rgb); } else { d = (float) Math.cos(d * PI1_2 - PI1_2); d = 1.0f - d; // // Rotate around middle // float nx = x - dwCenterX; float ny = y - dwCenterY; float rad = radians * d; float bx = nx; nx = (float) (bx * Math.cos(rad) - nx * Math.sin(rad) + dwCenterX); ny = (float) (bx * Math.sin(rad) + ny * Math.cos(rad) + dwCenterY); if (nx >= width) { nx = nx - width; } if (ny >= height) { ny = ny - height; } if (nx < 0) { nx = width + nx; } if (ny < 0) { ny = height + ny; } // // Bilinear sample nearest 4 pixels at rotated pos // int ix, iy; ix = (int) nx; iy = (int) ny; float fracX = nx - ix; float fracY = ny - iy; float ul = (1.0f - fracX) * (1.0f - fracY); float ll = (1.0f - fracX) * fracY; float ur = fracX * (1.0f - fracY); float lr = fracX * fracY; int wrapx = (ix + 1); int wrapy = (iy + 1); int rgb = pixmap.getPixel(ix, iy); int r = (rgb & 0xff000000) >>> 24; int g = (rgb & 0x00ff0000) >>> 16; int b = (rgb & 0x0000ff00) >>> 8; rgb = pixmap.getPixel(wrapx, iy); int r2 = (rgb & 0xff000000) >>> 24; int g2 = (rgb & 0x00ff0000) >>> 16; int b2 = (rgb & 0x0000ff00) >>> 8; rgb = pixmap.getPixel(ix, wrapy); int r3 = (rgb & 0xff000000) >>> 24; int g3 = (rgb & 0x00ff0000) >>> 16; int b3 = (rgb & 0x0000ff00) >>> 8; rgb = pixmap.getPixel(wrapx, wrapy); int r4 = (rgb & 0xff000000) >>> 24; int g4 = (rgb & 0x00ff0000) >>> 16; int b4 = (rgb & 0x0000ff00) >>> 8; r = (int) (r * ul + r2 * ur + r3 * ll + r4 * lr); g = (int) (g * ul + g2 * ur + g3 * ll + g4 * lr); b = (int) (b * ul + b2 * ur + b3 * ll + b4 * lr); // // Clamp // r = (r < 255) ? r : 255; r = (r > 0) ? r : 0; g = (g < 255) ? g : 255; g = (g > 0) ? g : 0; b = (b < 255) ? b : 255; b = (b > 0) ? b : 0; dstPixmap.drawPixel(x, y, ((int) r << 24) | ((int) g << 16) | ((int) b << 8) | 255); } } } pixmap.drawPixmap(dstPixmap, 0, 0); }
From source file:net.shad.s3rend.gfx.pixmap.filter.Normals.java
License:Apache License
/** * Main normal map filter process//from ww w. j a v a2s . c o m * @param pixmap * @param amplify - The bulge value */ public static void generate(final Pixmap pixmap, int amplify) { int width = pixmap.getWidth(); int height = pixmap.getHeight(); Pixmap dstPixmap = new Pixmap(width, height, pixmap.getFormat()); for (int y = 0; y < height; y++) { for (int x = 0; x < width; x++) { pixmap.drawLine(x, y, x, y); int rgb = pixmap.getPixel(x, y); int r = (rgb & 0xff000000) >>> 24; int g = (rgb & 0x00ff0000) >>> 16; int b = (rgb & 0x0000ff00) >>> 8; int a = (rgb & 0x000000ff); // // 1 Column // int rgbXnYn = pixmap.getPixel(x - 1, y - 1); int rXnYn = (rgbXnYn & 0xff000000) >>> 24; // int gXnYn=(rgbXnYn & 0x00ff0000) >>> 16; // int bXnYn=(rgbXnYn & 0x0000ff00) >>> 8; int rgbXnY = pixmap.getPixel(x - 1, y); int rXnY = (rgbXnY & 0xff000000) >>> 24; // int gXnY=(rgbXnY & 0x00ff0000) >>> 16; // int bXnY=(rgbXnY & 0x0000ff00) >>> 8; int rgbXnYp = pixmap.getPixel(x - 1, y + 1); int rXnYp = (rgbXnYp & 0xff000000) >>> 24; // int gXnYp=(rgbXnYp & 0x00ff0000) >>> 16; // int bXnYp=(rgbXnYp & 0x0000ff00) >>> 8; // // 2 Column // int rgbXYn = pixmap.getPixel(x, y - 1); int rXYn = (rgbXYn & 0xff000000) >>> 24; // int gXYn=(rgbXYn & 0x00ff0000) >>> 16; // int bXYn=(rgbXYn & 0x0000ff00) >>> 8; int rgbXYp = pixmap.getPixel(x, y + 1); int rXYp = (rgbXYp & 0xff000000) >>> 24; // int gXYp=(rgbXYp & 0x00ff0000) >>> 16; // int bXYp=(rgbXYp & 0x0000ff00) >>> 8; // // 3 Column // int rgbXpYn = pixmap.getPixel(x + 1, y - 1); int rXpYn = (rgbXpYn & 0xff000000) >>> 24; // int gXpYn=(rgbXpYn & 0x00ff0000) >>> 16; // int bXpYn=(rgbXpYn & 0x0000ff00) >>> 8; int rgbXpY = pixmap.getPixel(x + 1, y); int rXpY = (rgbXpY & 0xff000000) >>> 24; // int gXpY=(rgbXpY & 0x00ff0000) >>> 16; // int bXpY=(rgbXpY & 0x0000ff00) >>> 8; int rgbXpYp = pixmap.getPixel(x + 1, y + 1); int rXpYp = (rgbXpYp & 0xff000000) >>> 24; // int gXpYp=(rgbXpYp & 0x00ff0000) >>> 16; // int bXpYp=(rgbXpYp & 0x0000ff00) >>> 8; // // Y Sobel filter operation // // [ 1 2 1] // [ // [-1 -2 -1] // float dY = 0; dY += rXnYn * 1.0f; dY += rXYn * 2.0f; dY += rXpYn * 1.0f; dY += rXnYp * -1.0f; dY += rXYp * -2.0f; dY += rXpYp * -1.0f; // // X Sobel filter // // [-1 1] // [-2 2] // [-1 1] // float dX = 0; dX = rXnYn * -1.0f; dX += rXnY * -2.0f; dX += rXnYp * -1.0f; dX += rXpYn * 1.0f; dX += rXpY * 2.0f; dX += rXpYp * 1.0f; // // Compute the cross product of the two vectors // Vector3 norm = new Vector3(); norm.x = -dX * amplify / 255.0f; norm.y = -dY * amplify / 255.0f; norm.z = 1.0f; // // Normalize // norm.nor(); // // Store // [-1.0f->1.0f] -> [0 -> 255] // r = (int) ((norm.x + 1.0f) / 2.0f * 255.0f); g = (int) ((norm.y + 1.0f) / 2.0f * 255.0f); b = (int) ((norm.z + 1.0f) / 2.0f * 255.0f); dstPixmap.drawPixel(x, y, ((int) r << 24) | ((int) g << 16) | ((int) b << 8) | a); } } pixmap.drawPixmap(dstPixmap, 0, 0); }
From source file:nl.basroding.director.views.actors.basic.ListDeluxe.java
License:Apache License
public void setTableStyle(TableListStyle style) { this.tableStyle = style; Pixmap pixmap = new Pixmap(1, 1, Pixmap.Format.RGBA8888); pixmap.setColor(style.alternatingColor.r, style.alternatingColor.g, style.alternatingColor.b, style.alternatingColor.a);/*w w w . jav a 2s. c o m*/ pixmap.drawPixel(0, 0); pixmapTexture = new Texture(pixmap); pixmap.dispose(); }
From source file:nl.colorize.multimedialib.renderer.libgdx.GDXRenderer.java
License:Apache License
private Texture generateColorTexture(ColorRGB color) { Pixmap pixelData = new Pixmap(COLOR_TEXTURE_SIZE, COLOR_TEXTURE_SIZE, Pixmap.Format.RGBA8888); pixelData.setColor(color.getR() / 255f, color.getG() / 255f, color.getB() / 255f, 1f); pixelData.fillRectangle(0, 0, COLOR_TEXTURE_SIZE, COLOR_TEXTURE_SIZE); return new Texture(pixelData); }
From source file:org.ah.gcc.rover.desktop.DesktopGCCRoverController.java
License:Open Source License
@Override public void create() { // platformSpecific.init(); String fontName = "fonts/din-alternate-bold-64.fnt"; if (Gdx.graphics.getWidth() <= 320) { fontName = "fonts/din-alternate-bold-15.fnt"; }//from ww w. j av a 2 s . c o m font = new BitmapFont(Gdx.files.internal(fontName), true); glyphLayout = new GlyphLayout(); font.setColor(Color.BLACK); batch = new SpriteBatch(); img = new Texture("badlogic.jpg"); camera = new OrthographicCamera(Gdx.graphics.getWidth(), Gdx.graphics.getHeight()); cellSize = Gdx.graphics.getWidth() / 20; shapeRenderer = new ShapeRenderer(); leftjoystick = new JoyStick((int) cellSize * 8, (int) cellSize * 4, (int) cellSize * 4); rightjoystick = new JoyStick((int) cellSize * 8, (int) cellSize * 16, (int) cellSize * 4); leftExpo = new ExpoGraph((int) cellSize * 5, (int) cellSize * 2, (int) cellSize * 2, (int) cellSize * 2); rightExpo = new ExpoGraph((int) cellSize * 13, (int) cellSize * 2, (int) cellSize * 2, (int) cellSize * 2); leftExpo.setPercentage(0.75f); rightExpo.setPercentage(0.90f); roverSelectButton = new Button((int) cellSize * 6, 0, (int) cellSize * 8, (int) (cellSize * 1.5), new Button.ButtonCallback() { @Override public void invoke(boolean state) { if (state) { int selectedRover = roverDriver.getSelectedRover().getValue() + 1; if (selectedRover >= RoverHandler.ROVERS.length) { selectedRover = 0; } roverDriver.getSelectedRover().setValue(selectedRover); } } }); pov = new POV((int) cellSize * 9, (int) cellSize * 4, (int) cellSize * 2); button1 = new RoundButton((int) cellSize * 6, (int) cellSize * 11, (int) cellSize / 2); switchLT = new SquareButton((int) cellSize * 0, (int) (cellSize * 0), (int) cellSize * 4, (int) cellSize * 2); switchLT.setState(false); switchLB = new Switch((int) cellSize * 0, (int) (cellSize * 2), (int) cellSize * 2, Orientation.HORIZONTAL); switchLB.setState(false); switchRT = new SquareButton((int) cellSize * 16, (int) (cellSize * 0), (int) cellSize * 4, (int) cellSize * 2); switchRT.setState(false); switchRB = new Switch((int) cellSize * 16, (int) (cellSize * 2), (int) cellSize * 2, Orientation.HORIZONTAL); switchRB.setState(false); inputMultiplexer = new InputMultiplexer(); inputMultiplexer.addProcessor(this); inputMultiplexer.addProcessor(new GestureDetector(this)); Gdx.input.setInputProcessor(inputMultiplexer); screenController = new ScreenController(); realController = platformSpecific.getRealController(); screenController.setLeftJotstick(leftjoystick); screenController.setRightJotstick(rightjoystick); screenController.setHat(pov); screenController.setButton(switchLB, ControllerState.ButtonType.ORBIT_BUTTON); screenController.setButton(switchRB, ControllerState.ButtonType.LOCK_AXIS_BUTTON); screenController.setButton(switchLT, ControllerState.ButtonType.BOOST_BUTTON); screenController.setButton(switchRT, ControllerState.ButtonType.KICK_BUTTON); screenController.setButton(roverSelectButton, ControllerState.ButtonType.SELECT_BUTTON); if (realController != null) { comboController = new ComboController(screenController, realController); roverDriver = new RoverDriver(roverHandler, comboController); } else { roverDriver = new RoverDriver(roverHandler, screenController); } roverDriver.getLeftJoystick().addListener(new JoystickComponentListener() { @Override public void changed(JoystickState state) { leftjoystick.setValues(state.getX(), state.getY()); } }); roverDriver.getRightJoystick().addListener(new JoystickComponentListener() { @Override public void changed(JoystickState state) { rightjoystick.setValues(state.getX(), state.getY()); } }); roverDriver.getRoverSpeedValue().addListener(new PropertyChangeListener() { @Override public void propertyChange(PropertyChangeEvent evt) { roverSpeed = evt.getNewValue().toString(); } }); roverDriver.getReadDistanceValue().addListener(new PropertyChangeListener() { @Override public void propertyChange(PropertyChangeEvent evt) { roverTurningDistance = evt.getNewValue().toString(); } }); logoDrawer = new LogoDrawer(batch, camera); Pixmap pixmap = new Pixmap(32, 32, Format.RGBA8888); //Cursor customCursor = Gdx.graphics.newCursor(pixmap, 0, 0); //Gdx.graphics.setCursor(customCursor); }