public static void main(String[] args){ Scanner scan = new Scanner(System.in); while (true){ System.out.println("Enter float to convert or 'x' to exit: "); String s = scan.nextLine(); if (s.equals("x")) break; float flt = Float.valueOf(s); short half = FastMath.convertFloatToHalf(flt); float flt2 = FastMath.convertHalfToFloat(half); System.out.println("Input float: "+flt); System.out.println("Result float: "+flt2); } } }
public void read(Image image, int layer, TexturePixel pixel, int index) { ByteBuffer data = image.getData(layer); switch (image.getFormat()) { case Luminance8: pixel.fromIntensity(data.get(index)); break; case Luminance8Alpha8: pixel.fromIntensity(data.get(index)); pixel.setAlpha(data.get(index + 1)); break; case Luminance16F: pixel.intensity = FastMath.convertHalfToFloat(data.getShort(index)); break; case Luminance16FAlpha16F: pixel.intensity = FastMath.convertHalfToFloat(data.getShort(index)); pixel.alpha = FastMath.convertHalfToFloat(data.getShort(index + 2)); break; case Luminance32F: pixel.intensity = Float.intBitsToFloat(data.getInt(index)); break; default: throw new IllegalStateException("Unknown luminance format type."); } }
case RGB16F_to_RGB111110F: case RGB16F_to_RGB9E5: pixel.fromARGB(1, FastMath.convertHalfToFloat(data.getShort(index)), FastMath.convertHalfToFloat(data.getShort(index + 2)), FastMath.convertHalfToFloat(data.getShort(index + 4))); break; case RGBA16F: pixel.fromARGB(FastMath.convertHalfToFloat(data.getShort(index + 6)), FastMath.convertHalfToFloat(data.getShort(index)), FastMath.convertHalfToFloat(data.getShort(index + 2)), FastMath.convertHalfToFloat(data.getShort(index + 4))); break; case RGBA32F:
store.set(FastMath.convertHalfToFloat((short) components[1]), FastMath.convertHalfToFloat((short) components[2]), FastMath.convertHalfToFloat((short) components[3]), FastMath.convertHalfToFloat((short) components[0])); break; case ImageCodec.FLAG_F32:
store.set(FastMath.convertHalfToFloat((short)components[1]), FastMath.convertHalfToFloat((short)components[2]), FastMath.convertHalfToFloat((short)components[3]), FastMath.convertHalfToFloat((short)components[0])); break; case ImageCodec.FLAG_F32:
store.set(FastMath.convertHalfToFloat((short)components[1]), FastMath.convertHalfToFloat((short)components[2]), FastMath.convertHalfToFloat((short)components[3]), FastMath.convertHalfToFloat((short)components[0])); break; case ImageCodec.FLAG_F32:
store.set(FastMath.convertHalfToFloat((short) components[1]), FastMath.convertHalfToFloat((short) components[2]), FastMath.convertHalfToFloat((short) components[3]), FastMath.convertHalfToFloat((short) components[0])); break; case ImageCodec.FLAG_F32:
store.set(FastMath.convertHalfToFloat((short)components[1]), FastMath.convertHalfToFloat((short)components[2]), FastMath.convertHalfToFloat((short)components[3]), FastMath.convertHalfToFloat((short)components[0])); break; case ImageCodec.FLAG_F32: