setModel method

  1. @override
bool setModel(
  1. ModelProvider model
)
override

Sets the 3D asset (OBJ source + texture ImageProvider). model Model provider ModelProvider. Returns true if the operation is successful, false otherwise.

Example:

ImageProvider texture = ImageProvider.fromImageProvider(
 const AssetImage('assets/model_texture.png'),
 cacheable: true,
);
ModelProvider modelProvider = ModelProvider(
 texture,
 onModelRequest: () async {
   final bytes = await File('/path/to/model.obj').readAsBytes();
   return ByteData.sublistView(bytes);
 },
);
bool modelOk = m.setModel(modelProvider);
print("Model setModel: $modelOk");

Implementation

@override
bool setModel(ModelProvider model) {
    final _setModelFfi = __lib.catchArgumentError(() => __lib.nativeLibrary.lookupFunction<
        Uint8 Function(Pointer<Void>, Pointer<Void>),
        int Function(Pointer<Void>, Pointer<Void>)
      >('navigine_sdk_flutter_ModelMapObject_setModel__Model'));
    final _modelHandle = navigine_sdk_flutter_ModelProvider_ToFfi(model);
    final _handle = this.handle;
    final __resultHandle = _setModelFfi(_handle, _modelHandle);
    navigine_sdk_flutter_ModelProvider_ReleaseFfiHandle(_modelHandle);
    final _result = navigine_sdk_flutter_bool_FromFfi(__resultHandle);
    navigine_sdk_flutter_bool_ReleaseFfiHandle(__resultHandle);
    return _result;
}