Open flomin opened 11 years ago
This method can be used after modifications to a Sprite texture to update the Sprite with a call to onUpdateTextureCoordinates().
E.g. with this method to truncate the Sprite texture:
public static void truncateSpriteTextureRegion(final Sprite pSprite, final ITextureRegion pOriginalTextureRegion, final float pLeftX, final float pRightX, final float pTopY, final float pBottomY, final VertexBufferObjectManager pVertexBufferObjectManager) { final float lTruncX, lTruncY, lTruncWidth, lTruncHeight; if (pOriginalTextureRegion.isRotated()) { lTruncHeight = pOriginalTextureRegion.getWidth() - pLeftX - pRightX; lTruncWidth = pOriginalTextureRegion.getHeight() - pTopY - pBottomY; lTruncX = pOriginalTextureRegion.getTextureX() + pBottomY; lTruncY = pOriginalTextureRegion.getTextureY() + pLeftX; } else { lTruncHeight = pOriginalTextureRegion.getHeight() - pTopY - pBottomY; lTruncWidth = pOriginalTextureRegion.getWidth() - pLeftX - pRightX; lTruncX = pOriginalTextureRegion.getTextureX() + pLeftX; lTruncY = pOriginalTextureRegion.getTextureY() + pTopY; } pSprite.getTextureRegion().set(lTruncX, lTruncY, lTruncWidth, lTruncHeight); pSprite.markTextureRegionChanged(); if (pOriginalTextureRegion.isRotated()) { pSprite.setWidth(lTruncHeight); pSprite.setHeight(lTruncWidth); } else { pSprite.setWidth(lTruncWidth); pSprite.setHeight(lTruncHeight); } }
This method can be used after modifications to a Sprite texture to update the Sprite with a call to onUpdateTextureCoordinates().
E.g. with this method to truncate the Sprite texture: