parseImages method
dynamic
parseImages()
Implementation
parseImages() {
var images = {};
var blobs = {};
if (fbxTree.Objects["Video"] != null) {
var videoNodes = fbxTree.Objects["Video"];
for (var nodeID in videoNodes.keys) {
var videoNode = videoNodes[nodeID];
var id = parseInt(nodeID);
images[id] = videoNode["RelativeFilename"] ?? videoNode["Filename"];
// raw image data is in videoNode.Content
if (videoNode["Content"] != null) {
// var arrayBufferContent = ( videoNode["Content"] is ArrayBuffer ) && ( videoNode["Content"].byteLength > 0 );
var arrayBufferContent = (videoNode["Content"] is TypedData) &&
(videoNode["Content"].byteLength > 0);
var base64Content =
(videoNode["Content"] is String) && (videoNode["Content"] != '');
if (arrayBufferContent || base64Content) {
var image = this.parseImage(videoNodes[nodeID]);
blobs[videoNode.RelativeFilename ?? videoNode.Filename] = image;
}
}
}
}
for (var id in images.keys) {
var filename = images[id];
if (blobs[filename] != null)
images[id] = blobs[filename];
else
images[id] = images[id].split('\\').removeLast();
}
return images;
}