Java 类com.badlogic.gdx.utils.DataInput 实例源码

项目:jenjin    文件:SkeletonBinary.java   
private Vertices readVertices (DataInput input, int vertexCount) throws IOException {
    int verticesLength = vertexCount << 1;
    Vertices vertices = new Vertices();
    if (!input.readBoolean()) {
        vertices.vertices = readFloatArray(input, verticesLength, scale);
        return vertices;
    }
    FloatArray weights = new FloatArray(verticesLength * 3 * 3);
    IntArray bonesArray = new IntArray(verticesLength * 3);
    for (int i = 0; i < vertexCount; i++) {
        int boneCount = input.readInt(true);
        bonesArray.add(boneCount);
        for (int ii = 0; ii < boneCount; ii++) {
            bonesArray.add(input.readInt(true));
            weights.add(input.readFloat() * scale);
            weights.add(input.readFloat() * scale);
            weights.add(input.readFloat());
        }
    }
    vertices.vertices = weights.toArray();
    vertices.bones = bonesArray.toArray();
    return vertices;
}
项目:vis-editor    文件:SkeletonBinary.java   
private Vertices readVertices (DataInput input, int vertexCount) throws IOException {
    int verticesLength = vertexCount << 1;
    Vertices vertices = new Vertices();
    if (!input.readBoolean()) {
        vertices.vertices = readFloatArray(input, verticesLength, scale);
        return vertices;
    }
    FloatArray weights = new FloatArray(verticesLength * 3 * 3);
    IntArray bonesArray = new IntArray(verticesLength * 3);
    for (int i = 0; i < vertexCount; i++) {
        int boneCount = input.readInt(true);
        bonesArray.add(boneCount);
        for (int ii = 0; ii < boneCount; ii++) {
            bonesArray.add(input.readInt(true));
            weights.add(input.readFloat() * scale);
            weights.add(input.readFloat() * scale);
            weights.add(input.readFloat());
        }
    }
    vertices.vertices = weights.toArray();
    vertices.bones = bonesArray.toArray();
    return vertices;
}
项目:jenjin    文件:SkeletonBinary.java   
/** @return May be null. */
private Skin readSkin (DataInput input, String skinName, boolean nonessential) throws IOException {
    int slotCount = input.readInt(true);
    if (slotCount == 0) return null;
    Skin skin = new Skin(skinName);
    for (int i = 0; i < slotCount; i++) {
        int slotIndex = input.readInt(true);
        for (int ii = 0, nn = input.readInt(true); ii < nn; ii++) {
            String name = input.readString();
            Attachment attachment = readAttachment(input, skin, slotIndex, name, nonessential);
            if (attachment != null) skin.addAttachment(slotIndex, name, attachment);
        }
    }
    return skin;
}
项目:jenjin    文件:SkeletonBinary.java   
private float[] readFloatArray (DataInput input, int n, float scale) throws IOException {
    float[] array = new float[n];
    if (scale == 1) {
        for (int i = 0; i < n; i++)
            array[i] = input.readFloat();
    } else {
        for (int i = 0; i < n; i++)
            array[i] = input.readFloat() * scale;
    }
    return array;
}
项目:jenjin    文件:SkeletonBinary.java   
private short[] readShortArray (DataInput input) throws IOException {
    int n = input.readInt(true);
    short[] array = new short[n];
    for (int i = 0; i < n; i++)
        array[i] = input.readShort();
    return array;
}
项目:jenjin    文件:SkeletonBinary.java   
private void readCurve (DataInput input, int frameIndex, CurveTimeline timeline) throws IOException {
    switch (input.readByte()) {
    case CURVE_STEPPED:
        timeline.setStepped(frameIndex);
        break;
    case CURVE_BEZIER:
        setCurve(timeline, frameIndex, input.readFloat(), input.readFloat(), input.readFloat(), input.readFloat());
        break;
    }
}
项目:libgdxjam    文件:SkeletonBinary.java   
/** @return May be null. */
private Skin readSkin (DataInput input, String skinName, boolean nonessential) throws IOException {
    int slotCount = input.readInt(true);
    if (slotCount == 0) return null;
    Skin skin = new Skin(skinName);
    for (int i = 0; i < slotCount; i++) {
        int slotIndex = input.readInt(true);
        for (int ii = 0, nn = input.readInt(true); ii < nn; ii++) {
            String name = input.readString();
            skin.addAttachment(slotIndex, name, readAttachment(input, skin, name, nonessential));
        }
    }
    return skin;
}
项目:libgdxjam    文件:SkeletonBinary.java   
private float[] readFloatArray (DataInput input, float scale) throws IOException {
    int n = input.readInt(true);
    float[] array = new float[n];
    if (scale == 1) {
        for (int i = 0; i < n; i++)
            array[i] = input.readFloat();
    } else {
        for (int i = 0; i < n; i++)
            array[i] = input.readFloat() * scale;
    }
    return array;
}
项目:libgdxjam    文件:SkeletonBinary.java   
private short[] readShortArray (DataInput input) throws IOException {
    int n = input.readInt(true);
    short[] array = new short[n];
    for (int i = 0; i < n; i++)
        array[i] = input.readShort();
    return array;
}
项目:libgdxjam    文件:SkeletonBinary.java   
private int[] readIntArray (DataInput input) throws IOException {
    int n = input.readInt(true);
    int[] array = new int[n];
    for (int i = 0; i < n; i++)
        array[i] = input.readInt(true);
    return array;
}
项目:libgdxjam    文件:SkeletonBinary.java   
private void readCurve (DataInput input, int frameIndex, CurveTimeline timeline) throws IOException {
    switch (input.readByte()) {
    case CURVE_STEPPED:
        timeline.setStepped(frameIndex);
        break;
    case CURVE_BEZIER:
        setCurve(timeline, frameIndex, input.readFloat(), input.readFloat(), input.readFloat(), input.readFloat());
        break;
    }
}
项目:SpaceShooter    文件:SkeletonBinary.java   
/** @return May be null. */
private Skin readSkin (DataInput input, String skinName, boolean nonessential) throws IOException {
    int slotCount = input.readInt(true);
    if (slotCount == 0) return null;
    Skin skin = new Skin(skinName);
    for (int i = 0; i < slotCount; i++) {
        int slotIndex = input.readInt(true);
        for (int ii = 0, nn = input.readInt(true); ii < nn; ii++) {
            String name = input.readString();
            skin.addAttachment(slotIndex, name, readAttachment(input, skin, name, nonessential));
        }
    }
    return skin;
}
项目:SpaceShooter    文件:SkeletonBinary.java   
private float[] readFloatArray (DataInput input, float scale) throws IOException {
    int n = input.readInt(true);
    float[] array = new float[n];
    if (scale == 1) {
        for (int i = 0; i < n; i++)
            array[i] = input.readFloat();
    } else {
        for (int i = 0; i < n; i++)
            array[i] = input.readFloat() * scale;
    }
    return array;
}
项目:SpaceShooter    文件:SkeletonBinary.java   
private short[] readShortArray (DataInput input) throws IOException {
    int n = input.readInt(true);
    short[] array = new short[n];
    for (int i = 0; i < n; i++)
        array[i] = input.readShort();
    return array;
}
项目:SpaceShooter    文件:SkeletonBinary.java   
private int[] readIntArray (DataInput input) throws IOException {
    int n = input.readInt(true);
    int[] array = new int[n];
    for (int i = 0; i < n; i++)
        array[i] = input.readInt(true);
    return array;
}
项目:SpaceShooter    文件:SkeletonBinary.java   
private void readCurve (DataInput input, int frameIndex, CurveTimeline timeline) throws IOException {
    switch (input.readByte()) {
    case CURVE_STEPPED:
        timeline.setStepped(frameIndex);
        break;
    case CURVE_BEZIER:
        setCurve(timeline, frameIndex, input.readFloat(), input.readFloat(), input.readFloat(), input.readFloat());
        break;
    }
}
项目:SaveUA    文件:MapEntry.java   
/**
 * @param path путь к карте
 * @param local если true, то карта в локальном хранилище, иначe в internal
 * (assets)
 */
public MapEntry(String path, boolean local) {
    this.local = local;
    this.path = path;

    FileHandle fh;

    if (local) {
        fh = Gdx.files.local(path);
    } else {
        fh = Gdx.files.internal(path);
    }

    if (!fh.exists()) {
        name = "Not found";
    } else {
        try {
            ZipInputStream zis = new ZipInputStream(fh.read());
            zis.getNextEntry();
            DataInput data = new DataInput(zis);
            name = data.readUTF();
            maxGamers = data.readInt();
            w = data.readInt();
            h = data.readInt();
            data.close();
            zis.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
项目:vis-editor    文件:SkeletonBinary.java   
/** @return May be null. */
private Skin readSkin (DataInput input, String skinName, boolean nonessential) throws IOException {
    int slotCount = input.readInt(true);
    if (slotCount == 0) return null;
    Skin skin = new Skin(skinName);
    for (int i = 0; i < slotCount; i++) {
        int slotIndex = input.readInt(true);
        for (int ii = 0, nn = input.readInt(true); ii < nn; ii++) {
            String name = input.readString();
            skin.addAttachment(slotIndex, name, readAttachment(input, skin, slotIndex, name, nonessential));
        }
    }
    return skin;
}
项目:vis-editor    文件:SkeletonBinary.java   
private float[] readFloatArray (DataInput input, int n, float scale) throws IOException {
    float[] array = new float[n];
    if (scale == 1) {
        for (int i = 0; i < n; i++)
            array[i] = input.readFloat();
    } else {
        for (int i = 0; i < n; i++)
            array[i] = input.readFloat() * scale;
    }
    return array;
}
项目:vis-editor    文件:SkeletonBinary.java   
private short[] readShortArray (DataInput input) throws IOException {
    int n = input.readInt(true);
    short[] array = new short[n];
    for (int i = 0; i < n; i++)
        array[i] = input.readShort();
    return array;
}
项目:vis-editor    文件:SkeletonBinary.java   
private void readCurve (DataInput input, int frameIndex, CurveTimeline timeline) throws IOException {
    switch (input.readByte()) {
    case CURVE_STEPPED:
        timeline.setStepped(frameIndex);
        break;
    case CURVE_BEZIER:
        setCurve(timeline, frameIndex, input.readFloat(), input.readFloat(), input.readFloat(), input.readFloat());
        break;
    }
}