/** * Update the data of the {@link #getMorphedAccessorModel() morphed * accessor model} based on the given weights. * * @param weights The morph target weights. */ void updateMorphedAccessorData(float weights[]) { AccessorFloatData morphedAccessorData = (AccessorFloatData) morphedAccessorModel.getAccessorData(); AccessorFloatData baseAccessorData = (AccessorFloatData) baseAccessorModel.getAccessorData(); combine3D( morphedAccessorData, baseAccessorData, targetAccessorFloatDatas, weights); } }
targetAccessorModel.getAccessorData(); AccessorFloatData targetAccessorFloatData = (AccessorFloatData)targetAccessorData;
/** * Create a new {@link AccessorModel} that describes the same data as * the given {@link AccessorModel}, but in a compact form. The returned * {@link AccessorModel} will refer to a newly created * {@link BufferViewModel} and a newly created {@link BufferModel} that * contain exactly the data for the accessor.<br> * <br> * The given {@link AccessorModel} is assumed to have a <code>float</code> * component type. * * @param accessorModel The {@link AccessorModel} * @param bufferUriString The URI string for the {@link BufferModel} * @return The new {@link AccessorModel} instance. */ private static AccessorModel instantiate( AccessorModel accessorModel, String bufferUriString) { AccessorModel instantiatedAccessorModel = createAccessorModel( accessorModel.getComponentType(), accessorModel.getCount(), accessorModel.getElementType(), bufferUriString); AccessorData accessorData = accessorModel.getAccessorData(); AccessorFloatData accessorFloatData = (AccessorFloatData)accessorData; AccessorData instantiatedAccessorData = instantiatedAccessorModel.getAccessorData(); AccessorFloatData instantiatedAccessorFloatData = (AccessorFloatData)instantiatedAccessorData; setElements(instantiatedAccessorFloatData, accessorFloatData); return instantiatedAccessorModel; }
AccessorData inputData = input.getAccessorData(); if (!(inputData instanceof AccessorFloatData)) AccessorData outputData = output.getAccessorData(); if (!(outputData instanceof AccessorFloatData))
AccessorData accessorData = accessorModel.getAccessorData(); AccessorFloatData accessorFloatData = (AccessorFloatData)accessorData;
/** * Create the {@link Accessor} object from the given * {@link AccessorModel} * * @param accessorModel The {@link AccessorModel} * @param bufferViewIndex The {@link BufferView} index * @return The {@link Accessor} object */ private static Accessor createAccessor( AccessorModel accessorModel, int bufferViewIndex) { Accessor accessor = new Accessor(); accessor.setBufferView(bufferViewIndex); accessor.setByteOffset(accessorModel.getByteOffset()); accessor.setComponentType(accessorModel.getComponentType()); accessor.setCount(accessorModel.getCount()); accessor.setType(accessorModel.getElementType().toString()); AccessorData accessorData = accessorModel.getAccessorData(); accessor.setMax(AccessorDatas.computeMax(accessorData)); accessor.setMin(AccessorDatas.computeMin(accessorData)); return accessor; }
/** * Create the {@link Accessor} object from the given * {@link AccessorModel} * * @param accessorModel The {@link AccessorModel} * @param bufferViewId The {@link BufferView} ID * @return The {@link Accessor} object */ private static Accessor createAccessor( AccessorModel accessorModel, String bufferViewId) { Accessor accessor = new Accessor(); accessor.setBufferView(bufferViewId); accessor.setByteOffset(accessorModel.getByteOffset()); accessor.setComponentType(accessorModel.getComponentType()); accessor.setCount(accessorModel.getCount()); accessor.setType(accessorModel.getElementType().toString()); accessor.setByteStride(accessorModel.getByteStride()); AccessorData accessorData = accessorModel.getAccessorData(); accessor.setMax(AccessorDatas.computeMax(accessorData)); accessor.setMin(AccessorDatas.computeMin(accessorData)); return accessor; }