parseImage method

dynamic parseImage(
  1. dynamic videoNode
)

Implementation

parseImage(videoNode) {
  var content = videoNode.Content;
  String fileName = videoNode.RelativeFilename ?? videoNode.Filename;
  var extension = fileName.substring(fileName.lastIndexOf('.') + 1).toLowerCase();

  var type;

  switch (extension) {
    case 'bmp':
      type = 'image/bmp';
      break;

    case 'jpg':
    case 'jpeg':
      type = 'image/jpeg';
      break;

    case 'png':
      type = 'image/png';
      break;

    case 'tif':
      type = 'image/tiff';
      break;

    case 'tga':
      if (manager.getHandler('.tga') == null) {
        print('FBXLoader: TGA loader not found, skipping $fileName');
      }

      type = 'image/tga';
      break;

    default:
      print('FBXLoader: Image type "$extension" is not supported.');
      return;
  }

  if (content is String) {
    // ASCII format

    return 'data:$type;base64,$content';
  } else {
    // Binary Format

    var array = Uint8Array(content);
    return createObjectURL(Blob([array], {type: type}));
  }
}