How to use the cesium.Math function in cesium

To help you get started, we’ve selected a few cesium examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github codice / ddf / ui / packages / catalog-ui-search / src / main / webapp / lib / cesium-drawhelper / DrawHelper.js View on Github external
function getExtent(mn, mx) {
    const e = new Cesium.Rectangle()

    // Re-order so west < east and south < north
    e.west = Math.min(mn.longitude, mx.longitude)
    e.east = Math.max(mn.longitude, mx.longitude)
    e.south = Math.min(mn.latitude, mx.latitude)
    e.north = Math.max(mn.latitude, mx.latitude)

    // Check for approx equal (shouldn't require abs due to re-order)
    const epsilon = Cesium.Math.EPSILON7

    if (e.east - e.west < epsilon) {
      e.east += epsilon * 2.0
    }

    if (e.north - e.south < epsilon) {
      e.north += epsilon * 2.0
    }

    return e
  }
github codice / ddf / ui / packages / catalog-ui-search / src / main / webapp / js / widgets / cesium.bbox.js View on Github external
modelToRectangle(model) {
    const toRad = Cesium.Math.toRadians
    const obj = model.toJSON()
    if (
      _.every(defaultAttrs, val => _.isUndefined(obj[val])) ||
      _.isEmpty(obj)
    ) {
      if (this.options.map.scene && this.options.map.scene.primitives) {
        this.options.map.scene.primitives.remove(this.primitive)
      }
      this.stopListening()
      return
    }
    _.each(obj, (val, key) => {
      obj[key] = toRad(val)
    })
    const rectangle = new Cesium.Rectangle()
    if (
github codice / ddf / ui / search-ui / standard / src / main / webapp / js / view / Map.view.js View on Github external
handler.setInputAction(function (movement) {
                    cartesian = scene.getCamera().controller.pickEllipsoid(movement.endPosition, ellipsoid);
                    if (cartesian) {
                        cartographic = ellipsoid.cartesianToCartographic(cartesian);
                        label.setShow(true);
                        label.setText('(' + Cesium.Math.toDegrees(cartographic.longitude).toFixed(2) + ', ' + Cesium.Math.toDegrees(cartographic.latitude).toFixed(2) + ')');
                        label.setPosition(cartesian);
                    } else {
                        label.setText('');
                    }
                }, Cesium.ScreenSpaceEventType.MOUSE_MOVE);
github codice / ddf / ui / packages / catalog-ui-search / src / main / webapp / component / visualization / maps / cesium / map.cesium.js View on Github external
function updateCoordinatesTooltip(position) {
    const cartesian = map.camera.pickEllipsoid(
      position,
      map.scene.globe.ellipsoid
    )
    if (Cesium.defined(cartesian)) {
      let cartographic = Cesium.Cartographic.fromCartesian(cartesian)
      mapModel.updateMouseCoordinates({
        lat: cartographic.latitude * Cesium.Math.DEGREES_PER_RADIAN,
        lon: cartographic.longitude * Cesium.Math.DEGREES_PER_RADIAN,
      })
    } else {
      mapModel.clearMouseCoordinates()
    }
  }
github AnalyticalGraphicsInc / 3d-tiles-tools / samples-generator / bin / 3d-tiles-samples-generator.js View on Github external
var createBuildingsTile = require('../lib/createBuildingsTile');
var createB3dm = require('../lib/createB3dm');
var createCmpt = require('../lib/createCmpt');
var createI3dm = require('../lib/createI3dm');
var createInstancesTile = require('../lib/createInstancesTile');
var createPointCloudTile = require('../lib/createPointCloudTile');
var createTilesetJsonSingle = require('../lib/createTilesetJsonSingle');
var getProperties = require('../lib/getProperties');
var saveTile = require('../lib/saveTile');
var saveTilesetJson = require('../lib/saveTilesetJson');
var util = require('../lib/utility');

var processGlb = gltfPipeline.processGlb;

var Cartesian3 = Cesium.Cartesian3;
var CesiumMath = Cesium.Math;
var clone = Cesium.clone;
var defaultValue = Cesium.defaultValue;
var defined  = Cesium.defined;
var Matrix4 = Cesium.Matrix4;
var Quaternion = Cesium.Quaternion;

var lowercase = util.lowercase;
var metersToLongitude = util.metersToLongitude;
var metersToLatitude = util.metersToLatitude;
var wgs84Transform = util.wgs84Transform;

var prettyJson = true;
var gzip = false;

var outputDirectory = 'output';
github AnalyticalGraphicsInc / gltf-pipeline / lib / generateNormals.js View on Github external
'use strict';
var Cesium = require('cesium');
var clone = require('clone');

var Cartesian3 = Cesium.Cartesian3;
var GeometryPipeline = Cesium.GeometryPipeline;
var WebGLConstants = Cesium.WebGLConstants;
var CesiumMath = Cesium.Math;
var defaultValue = Cesium.defaultValue;
var defined = Cesium.defined;

var RemoveUnusedProperties = require('./RemoveUnusedProperties');
var addExtensionsUsed = require('./addExtensionsUsed');
var cesiumGeometryToGltfPrimitive = require('./cesiumGeometryToGltfPrimitive');
var createAccessor = require('./createAccessor');
var gltfPrimitiveToCesiumGeometry = require('./gltfPrimitiveToCesiumGeometry');
var getPrimitiveAttributeSemantics = require('./getPrimitiveAttributeSemantics');
var getUniqueId = require('./getUniqueId');
var mergeBuffers = require('./mergeBuffers');
var processModelMaterialsCommon = require('./processModelMaterialsCommon');
var packArray = require('./packArray');
var readAccessor = require('./readAccessor');
var techniqueParameterForSemantic = require('./techniqueParameterForSemantic');
var writeAccessor = require('./writeAccessor');
github AnalyticalGraphicsInc / gltf-pipeline / specs / lib / writeResourcesSpec.js View on Github external
'use strict';
const fsExtra = require('fs-extra');
const path = require('path');
const dataUriToBuffer = require('../../lib/dataUriToBuffer');
const ForEach = require('../../lib/ForEach');
const readResources = require('../../lib/readResources');
const writeResources = require('../../lib/writeResources');

const Cesium = require('cesium');
const CesiumMath = Cesium.Math;

const gltfPath = 'specs/data/2.0/box-techniques-embedded/box-techniques-embedded.gltf';
const gltfWebpPath = 'specs/data/2.0/extensions/EXT_texture_webp/box-textured-embedded/box-textured-embedded.gltf';
const gltfWebpSeparatePath = 'specs/data/2.0/extensions/EXT_texture_webp/box-textured-separate/box-textured-with-fallback.gltf';
let gltf;
let gltfWebp;
let gltfWebpSeparate;

describe('writeResources', () => {
    beforeEach(async () => {
        gltf = fsExtra.readJsonSync(gltfPath);
        gltfWebp = fsExtra.readJsonSync(gltfWebpPath);
        gltfWebpSeparate = fsExtra.readJsonSync(gltfWebpSeparatePath);

        await readResources(gltf);
        await readResources(gltfWebp);
github PrincessGod / objTo3d-tiles / lib / obj2Tileset.js View on Github external
'use strict';
var path = require('path');
var Cesium = require('cesium');
var createSingleTileset = require('./createSingleTileset');
var tilesetOptionsUtility = require('./tilesetOptionsUtility');
var obj2B3dm = require('./obj2B3dm');
var obj2I3dm = require('./obj2I3dm');
var Cartesian3 = Cesium.Cartesian3;
var Matrix3 = Cesium.Matrix3;
var CMath = Cesium.Math;

var defaultValue = Cesium.defaultValue;
var getPoint3MinMax = tilesetOptionsUtility.getPoint3MinMax;

module.exports = obj2Tileset;

function obj2Tileset(objPath, outputpath, options) {
    var folder = path.dirname(outputpath);
    var tileFullName = path.basename(outputpath);
    var folderPrifix = options.b3dm ? 'Batched' : 'Instanced';
    var tilesetFolderName = folderPrifix + path.basename(objPath, '.obj');
    var tilePath = path.join(folder, tilesetFolderName, tileFullName);
    var tilesetPath = path.join(folder, tilesetFolderName, 'tileset.json');
    var tilesetOptions = options.tilesetOptions || {};
    if (options.b3dm) {
        return obj2B3dm(objPath, options)
github codice / ddf / ui / packages / catalog-ui-search / src / main / webapp / js / widgets / cesium.bbox.js View on Github external
setModelFromClicks(mn, mx) {
    let e = new Cesium.Rectangle(),
      epsilon = Cesium.Math.EPSILON14,
      modelProps

    if (!this.lastLongitude) {
      this.crossDateLine = false
      this.lastLongitude = mx.longitude
    } else {
      if (this.lastLongitude > 0 && mx.longitude > 0 && mn.longitude > 0) {
        //west of the date line
        this.crossDateLine = false
        //track direction of the bbox
        if (this.lastLongitude > mx.longitude) {
          if (this.dir === 'east') {
            if (mx.longitude < mn.longitude) {
              this.dir = 'west'
            }
          } else {
github AnalyticalGraphicsInc / gltf-pipeline / specs / lib / bakeAmbientOcclusionSpec.js View on Github external
'use strict';
var Cesium = require('cesium');
var clone = require('clone');

var CesiumMath = Cesium.Math;
var Cartesian3 = Cesium.Cartesian3;
var Matrix4 = Cesium.Matrix4;

var bakeAmbientOcclusion = require('../../lib/bakeAmbientOcclusion');
var NodeHelpers = require('../../lib/NodeHelpers');
var readGltf = require('../../lib/readGltf');
var StaticUniformGrid = require('../../lib/StaticUniformGrid');

var generateOptions = bakeAmbientOcclusion._generateOptions;
var generateRaytracerScene = bakeAmbientOcclusion._generateRaytracerScene;
var computeAmbientOcclusionAt = bakeAmbientOcclusion._computeAmbientOcclusionAt;
var raytraceAtTriangleCenters = bakeAmbientOcclusion._raytraceAtTriangleCenters;
var raytraceOverTriangleSamples = bakeAmbientOcclusion._raytraceOverTriangleSamples;
var extractInstructionWithFunctionCall = bakeAmbientOcclusion._extractInstructionWithFunctionCall;
var injectGlslAfterInstructionContaining = bakeAmbientOcclusion._injectGlslAfterInstructionContaining;