123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138 |
- ; (function (window, document, undefined) {
- $.ajax({
- url: "http://121.43.55.7:10082/activate/verify/verify",//路径
- type: "POST", //提交方式
- async: false,
- data: {
- "key": "ce92ac35b727c5749ffa337cae755917",
- "address": location.hostname
- },// 数据,这里使用的是Json格式进行传输
- success: function (result) {//返回数据根据结果进行相应的处理
- window.Skyscenery = Cesium
- var viewerFunc = Cesium.Viewer;
- Cesium = undefined;
- delete Skyscenery.VERSION;
- window.Skyscenery.version = '1.0.0'
- if (typeof module === 'object' && typeof module.exports === 'object') {
- module.exports = Skyscenery;
- } else if (typeof define === 'function' && define.amd) {
- define(Skyscenery);
- }
- Skyscenery.Viewer.prototype.viewer = null;
- Skyscenery.Viewer = function () {
- var viewer = new viewerFunc(arguments[0], arguments[1])
- Skyscenery.Viewer.prototype.viewer = viewer
- return viewer;
- }
- Skyscenery.add3DTilesData = function (name, viewer) {
- var viewerObj = viewer
- if (name != undefined) {
- if (typeof name != "string") {
- throw "name parameter error"
- }
- } else {
- throw "name cannot be empty"
- }
- if (viewerObj == undefined) {
- viewerObj = Skyscenery.Viewer.prototype.viewer
- }
- try {
- var tileset = new Skyscenery.Cesium3DTileset({
- url: "http://122.228.13.28:1008/3DTiles/oujiangkou/" + name + "/tileset.json",
- skipLevelOfDetail: true, //开启跳级加载
- maximumMemoryUsage: 1024, //最大内存占用 推荐显存的一般
- preferLeaves: true,
- maximumScreenSpaceError: 16,
- maximumNumberOfLoadedTiles: 2000,
- });
- viewerObj.scene.primitives.add(tileset);
- return tileset;
- } catch (error) {
- throw "viewer error"
- }
- };
- Skyscenery.createMatrix4 = function (matrixParam) {
- var tileModelTool = matrixParam;
- if (matrixParam.scale != undefined) {
- if (typeof matrixParam.scale != "number") {
- throw "scale parameter error"
- }
- } else {
- matrixParam.scale = 1
- }
- if (matrixParam.longitude != undefined) {
- if (typeof matrixParam.longitude != "number") {
- throw "longitude parameter error"
- }
- } else {
- matrixParam.longitude = 116
- }
- if (matrixParam.latitude != undefined) {
- if (typeof matrixParam.latitude != "number") {
- throw "latitude parameter error"
- }
- } else {
- matrixParam.latitude = 39
- }
- if (matrixParam.height != undefined) {
- if (typeof matrixParam.height != "number") {
- throw "height parameter error"
- }
- } else {
- matrixParam.height = 0
- }
- if (matrixParam.rx != undefined) {
- if (typeof matrixParam.rx != "number") {
- throw "rx parameter error"
- }
- } else {
- matrixParam.rx = 0
- }
- if (matrixParam.ry != undefined) {
- if (typeof matrixParam.ry != "number") {
- throw "ry parameter error"
- }
- } else {
- matrixParam.ry = 0
- }
- if (matrixParam.rz != undefined) {
- if (typeof matrixParam.rz != "number") {
- throw "rz parameter error"
- }
- } else {
- matrixParam.rz = 0
- }
- var mx = Skyscenery.Matrix3.fromRotationX(
- Skyscenery.Math.toRadians(tileModelTool.rx)
- );
- var my = Skyscenery.Matrix3.fromRotationY(
- Skyscenery.Math.toRadians(tileModelTool.ry)
- );
- var mz = Skyscenery.Matrix3.fromRotationZ(
- Skyscenery.Math.toRadians(tileModelTool.rz)
- );
- var rotationX = Skyscenery.Matrix4.fromRotationTranslation(mx);
- var rotationY = Skyscenery.Matrix4.fromRotationTranslation(my);
- var rotationZ = Skyscenery.Matrix4.fromRotationTranslation(mz);
- //平移 修改经纬度
- var position = Skyscenery.Cartesian3.fromDegrees(
- tileModelTool.longitude,
- tileModelTool.latitude,
- tileModelTool.height
- );
- var m = Skyscenery.Transforms.eastNorthUpToFixedFrame(position);
- //旋转、平移矩阵相乘
- Skyscenery.Matrix4.multiply(m, rotationX, m);
- Skyscenery.Matrix4.multiply(m, rotationY, m);
- Skyscenery.Matrix4.multiply(m, rotationZ, m);
- //缩放 修改缩放比例
- var scale = Skyscenery.Matrix4.fromUniformScale(tileModelTool.scale);
- Skyscenery.Matrix4.multiply(m, scale, m);
- return m;
- };
- },
- error: function (err) {
- console.log("Failed to import plug-in package. Please contact technical personnel!")
- }
- });
- }(window, document));
|