jerry

第 3 位会员

会员
个人信息
  • 加入于 2018-06-23 14:12:52
  • 最后登录时间 1天前
个人成就
  • 发表文章次数 156
  • 发布回复次数 70
  • 个人主页浏览次数 26
cesium加载obj转成的3dtiles文件,写js控制旋转结果不对,有人碰到过这个问题吗?14天前

现在的工具 obj转3dtiles,好像都是转成单文件,没有建LOD结构的,那位牛人知道有没有能建LOD的 obj或者gltf转3dtiles的工具?

Cesium获取点云属性22天前

点云转3D Tiles工具:

目前应该没有直接 .xyz 到 3dtiles , https://github.com/Oslandia/py3dtiles

不过这个仓库也好久没人更新了。

如何让模型既可以透明又可以实体26天前

请教如何让globe半透明

计算height调整高度时报错TypeError: this._root is undefined26天前

有人知道我这个实体高度 改成20 输出也是20 为什么高度没变

有工具将3dtiles 转osgb吗?1个月前

for (var i = 0; i < osgbmodle.length; i++) {
	var osgbpositonitem = osgbpositon[i];
	var longitude = osgbpositonitem[0];
	var latitude = osgbpositonitem[1];
	var index = osgbpositonitem[2];
	var lurl = vm.url + osgbmodle[i];
	var tileset = new Cesium.Cesium3DTileset({
		url: vm.url + osgbmodle[i]
	});
	 console.log("aa"+vm.ul+osgbmodle[i]);
	viewer.scene.primitives.add(tileset);

	tileset.readyPromise.then(function (argument) {
		var position = Cesium.Cartesian3.fromDegrees(longitude, latitude, index);
		var mat = Cesium.Transforms.eastNorthUpToFixedFrame(position);
		var rotationX = Cesium.Matrix4.fromRotationTranslation(Cesium.Matrix3.fromRotationZ(Cesium.Math.toRadians(heading)));
		Cesium.Matrix4.multiply(mat, rotationX, mat);
		tileset._root.transform = mat;
		// tileset.maximumScreenSpaceError =maximumScreenSpaceError;
	});
}

遍历加载osgb模型,只有最后一个模型加载成功。大神帮忙看看吧

求助,在加载的模型上画线,画的线高于模型,没有 紧贴模型,在周围地形则可以贴地1个月前

我有一个3d tiles模型贴不到地上来,其他模型都可以,就这个不行,设置都是一样的,有没有人遇到过类似的问题,也不报错,有没有什么办法可以调试?

osgb转Cesium 3D tiles工具1个月前

请问各位大牛有没有方法生成osgb的LOD?

用超图的desktop 9d将obj转换为osgb后,发现没有osgb的LOD,只有一个比较大的osgb文件,加载很慢

在cesium怎么做淹没分析这个功能 需要用到哪块儿 的函数 和知识点 谢谢 大家 了1个月前

淹没分析不就是给entity贴个水的材质,然后动态升高?

cesium 的VR模式,支持HTC VIVE?3个月前

测试了,不支持vive的

Cesium加载ArcGIS Server发WMS的服务3个月前

cesium加载geoserver发布的epsg:4326的tms服务,不知道为啥出不来?求指教

请教camera.flyTo从一个点飞到另一个点4个月前

当离散的距离线段比较小的时候,应该就是匀速的了,可以试试。

天地图应用开发许可申请说明!!!尽快修改天地图数据接口5个月前

//天地图
          tianditu(){
            this.viewer.imageryLayers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider({
              url: "http://t0.tianditu.com/img_w/wmts?service=wmts&request=GetTile&version=1.0.0&LAYER=img&tileMatrixSet=w&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}&style=default&format=tiles&tk=您的token",
              layer: "tdtBasicLayer",
              style: "default",
              format: "image/jpeg",
              tileMatrixSetID: "GoogleMapsCompatible",
              show: false,
              }));

            //注记
            this.viewer.imageryLayers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider({
              url: "http://t0.tianditu.com/cia_w/wmts?service=wmts&request=GetTile&version=1.0.0&LAYER=cia&tileMatrixSet=w&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}&style=default&format=tiles&tk=您的token",
              layer: "tdtImgAnnoLayer",
              style: "default",
              format: "image/jpeg",
              tileMatrixSetID: "GoogleMapsCompatible",
              show: false,
            }));
          },

          tiandituStreet(){
            this.viewer.imageryLayers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider({
              url: "http://t0.tianditu.com/cva_w/wmts?service=wmts&request=GetTile&version=1.0.0&LAYER=cva&tileMatrixSet=w&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}&style=default.jpg&tk=您的token",
              layer: "tdtAnnoLayer",
              style: "default",
              format: "image/jpeg",
              tileMatrixSetID: "GoogleMapsCompatible",
            }));
          }

cesium加载tms外面感觉有一层白雾8个月前

viewer.scene.skyAtmosphere.show = false;

是这个吗?不管用啊

能不能做那种把一个大场景分成几个小场景来加载8个月前

如果不在模型制作那边操作的话,可以用代码控制加载吗

有人研究过ie11下不支持深度拾取没9个月前

ie下不支持从笛卡尔坐标系中获取添加的实体和位置信息

cesium 支持的移动端手势都有啥?9个月前

Cesium 手势控制:手势包括使用鼠标或手指来控制地图缩放、地图移动、地图旋转、地图倾斜、地图点击等功能,并支持开启和禁用手势控-》 ScreenSpaceCameraController + ScreenSpaceEventHandler

cesium怎么实现视角回绕一个区域旋转9个月前

仅供参考,来源于他人的分享:


var start = null;
var stop = null;
var CimMap = null;
var Viewer = null;
var camera = null;

var longitude =113.9758022295;
var latitude = 22.5944962474;
var radius = 0.03;

function initAutoRotateParameters(cimMap, viewer){
    CimMap = cimMap;
    Viewer = viewer;

    camera = viewer.camera;
    camera.position = new CimMap.Cartesian3(0.25, 0.0, 0.0);
    camera.direction = new CimMap.Cartesian3(1.0, 0.0, 0.0);
    camera.up = new CimMap.Cartesian3(0.0, 0.0, 1.0);
    camera.right = new CimMap.Cartesian3(0.0, -1.0, 0.0);

    Viewer.scene.globe.enableLighting = true;
    Viewer.scene.globe.depthTestAgainstTerrain = true;

// Follow the path of a plane. See the interpolation Sandcastle example.
    CimMap.Math.setRandomNumberSeed(3);

    start = CimMap.JulianDate.fromDate(new Date(2015, 2, 25, 8));
    stop = CimMap.JulianDate.addSeconds(start, 360, new CimMap.JulianDate());

    Viewer.clock.startTime = start.clone();
    Viewer.clock.stopTime = stop.clone();
    Viewer.clock.currentTime = start.clone();
    Viewer.clock.clockRange = CimMap.ClockRange.LOOP_STOP;
    Viewer.clock.multiplier = 10.0;
    Viewer.clock.shouldAnimate = true;

    var entity = Viewer.entities.add({
        availability : new CimMap.TimeIntervalCollection([new CimMap.TimeInterval({
            start : start,
            stop : stop
        })]),
        position : computeCirclularFlight(longitude, latitude, radius)
    });

    entity.position.setInterpolationOptions({
        interpolationDegree : 2,
        interpolationAlgorithm : CimMap.HermitePolynomialApproximation
    });

// Set initial camera position and orientation to be when in the model's reference frame.

    Viewer.scene.postUpdate.addEventListener(function(scene, time) {
        var position = entity.position.getValue(time);
        if (!CimMap.defined(position)) {
            return;
        }

        var transform;
        if (!CimMap.defined(entity.orientation)) {
            transform = CimMap.Transforms.eastNorthUpToFixedFrame(position);
        } else {
            var orientation = entity.orientation.getValue(time);
            if (!CimMap.defined(orientation)) {
                return;
            }

            transform = CimMap.Matrix4.fromRotationTranslation(CimMap.Matrix3.fromQuaternion(orientation), position);
        }

        // Save camera state
        var offset = CimMap.Cartesian3.clone(camera.position);
        var direction = CimMap.Cartesian3.clone(camera.direction);
        var up = CimMap.Cartesian3.clone(camera.up);

        // Set camera to be in model's reference frame.
        camera.lookAtTransform(transform);

        // Reset the camera state to the saved state so it appears fixed in the model's frame.
        CimMap.Cartesian3.clone(offset, camera.position);
        CimMap.Cartesian3.clone(direction, camera.direction);
        CimMap.Cartesian3.clone(up, camera.up);
        CimMap.Cartesian3.cross(direction, up, camera.right);
    });
}

function computeCirclularFlight(lon, lat, radius) {
    var property = new CimMap.SampledPositionProperty();
    var startAngle = CimMap.Math.nextRandomNumber() * 360.0;
    var endAngle = startAngle + 360.0;

    var increment = (CimMap.Math.nextRandomNumber() * 2.0 - 1.0) * 10.0 + 45.0;
    for (var i = startAngle; i < endAngle; i += increment) {
        var radians = CimMap.Math.toRadians(i);
        var timeIncrement = i - startAngle;
        var time = CimMap.JulianDate.addSeconds(start, timeIncrement, new CimMap.JulianDate());
        var position = CimMap.Cartesian3.fromDegrees(lon + (radius * 1.5 * Math.cos(radians)), lat + (radius * Math.sin(radians)), CimMap.Math.nextRandomNumber() * 500 + 1800);
        property.addSample(time, position);
    }
    return property;
}


换角度的时候 红线会断裂10个月前

确实是遮挡了 我花了两条线和一个wall -> 1条悬空的线 一条贴地的线 中间是墙 cesium有没有类似于padding的属性呢

Your Site Analytics