cesium
Version:
CesiumJS is a JavaScript library for creating 3D globes and 2D maps in a web browser without a plugin.
54 lines (44 loc) • 2.77 kB
JavaScript
/* This file is automatically rebuilt by the Cesium build process. */
define(['./when-e6e3e713', './Check-1df6b9a0', './Math-c5f6c994', './Cartesian2-1d7364fa', './Transforms-943e8463', './RuntimeError-717c34db', './WebGLConstants-7f7d68ac', './ComponentDatatype-2b8834a4', './GeometryAttribute-3a303898', './GeometryAttributes-6cf4559b', './AttributeCompression-d68d64ef', './GeometryPipeline-2d6c52b2', './EncodedCartesian3-d723731d', './IndexDatatype-e2961542', './IntersectionTests-c05f88ce', './Plane-2e419ea5', './PrimitivePipeline-efe6e32e', './WebMercatorProjection-2eb538cc', './createTaskProcessorWorker'], function (when, Check, _Math, Cartesian2, Transforms, RuntimeError, WebGLConstants, ComponentDatatype, GeometryAttribute, GeometryAttributes, AttributeCompression, GeometryPipeline, EncodedCartesian3, IndexDatatype, IntersectionTests, Plane, PrimitivePipeline, WebMercatorProjection, createTaskProcessorWorker) { 'use strict';
/* global require */
var moduleCache = {};
function getModule(moduleName) {
var module = moduleCache[moduleName];
if (!when.defined(module)) {
if (typeof exports === 'object') {
// Use CommonJS-style require.
moduleCache[module] = module = require('Workers/' + moduleName);
} else {
// Use AMD-style require.
// in web workers, require is synchronous
require(['Workers/' + moduleName], function(f) {
module = f;
moduleCache[module] = f;
});
}
}
return module;
}
function createGeometry(parameters, transferableObjects) {
var subTasks = parameters.subTasks;
var length = subTasks.length;
var resultsOrPromises = new Array(length);
for (var i = 0; i < length; i++) {
var task = subTasks[i];
var geometry = task.geometry;
var moduleName = task.moduleName;
if (when.defined(moduleName)) {
var createFunction = getModule(moduleName);
resultsOrPromises[i] = createFunction(geometry, task.offset);
} else {
//Already created geometry
resultsOrPromises[i] = geometry;
}
}
return when.when.all(resultsOrPromises, function(results) {
return PrimitivePipeline.PrimitivePipeline.packCreateGeometryResults(results, transferableObjects);
});
}
var createGeometry$1 = createTaskProcessorWorker(createGeometry);
return createGeometry$1;
});