Example usage for com.google.gwt.typedarrays.client Float32ArrayNative create

List of usage examples for com.google.gwt.typedarrays.client Float32ArrayNative create

Introduction

In this page you can find the example usage for com.google.gwt.typedarrays.client Float32ArrayNative create.

Prototype

public static native Float32ArrayNative create(int length) ;

Source Link

Usage

From source file:com.shc.webgl4j.client.WebGL10.java

License:Open Source License

/**
 * <p>{@code glBufferSubData} redefines some or all of the data store for the buffer object currently bound to
 * {@code target}. Data starting at byte offset {@code offset} and extending for {@code size} bytes is copied to the
 * data store from the memory pointed to by {@code data}. An error is thrown if {@code offset} and {@code size}
 * together define a range beyond the bounds of the buffer object's data store.</p>
 *
 * <p>{@link #GL_INVALID_ENUM} is generated if target is not {@link #GL_ARRAY_BUFFER} or {@link
 * #GL_ELEMENT_ARRAY_BUFFER}.</p>/*  w  w w.  j av a 2 s .c  om*/
 *
 * <p>{@link #GL_INVALID_VALUE} is generated if offset or size is negative, or if together they define a region of
 * memory that extends beyond the buffer object's allocated data store.</p>
 *
 * <p>{@link #GL_INVALID_OPERATION} is generated if the reserved buffer object name 0 is bound to target.</p>
 *
 * @param target Specifies the target buffer object. The symbolic constant must be {@link #GL_ARRAY_BUFFER} or
 *               {@link #GL_ELEMENT_ARRAY_BUFFER}.
 * @param offset Specifies the offset into the buffer object's data store where data replacement will begin,
 *               measured in bytes.
 * @param size   Specifies the size in bytes of the data store region being replaced.
 * @param data   Specifies the new data that will be copied into the data store.
 */
public static void glBufferSubData(int target, int offset, int size, float[] data) {
    checkContextCompatibility();
    Float32Array dataBuffer = Float32ArrayNative.create(data.length);
    dataBuffer.set(data);
    nglBufferSubData(target, offset, size, dataBuffer);
}

From source file:org.parallax3d.parallax.platforms.gwt.GwtGL20.java

License:Open Source License

public Float32Array copy(FloatBuffer buffer) {
    if (buffer == null)
        return Float32ArrayNative.create(0);

    if (GWT.isProdMode()) {
        return ((Float32Array) ((HasArrayBufferView) buffer).getTypedArray()).subarray(buffer.position(),
                buffer.remaining());//from   www  .  ja va2 s  . c om
    } else {
        ensureCapacity(buffer);
        for (int i = buffer.position(), j = 0; i < buffer.limit(); i++, j++) {
            floatBuffer.set(j, buffer.get(i));
        }
        return floatBuffer.subarray(0, buffer.remaining());
    }
}