首页 > 其他分享 >cesium三维地图

cesium三维地图

时间:2024-04-03 15:46:16浏览次数:22  
标签:false entities viewer 地图 三维 Cesium add Color cesium

基础

地图初始化

const viewer = new Viewer(mapRef.value, {
  animation: false, // 时间动画控件
  timeline: false, // 时间轴
  selectionIndicator: false,
  infoBox: false,
  baseLayerPicker: false,
  terrainProvider: createWorldTerrain()
})

颜色

Cesium.Color.RED
Cesium.Color.RED.withAlpha(0.1) // 透明度
Cesium.Color.fromCssColorString('#67ADDF') // hex颜色
Cesium.Color.freeRandom() // 随机颜色

点绘制

viewer.entities.add({
  position: Cesium.Cartesian3.fromDegrees(Number(lng), Number(lat)),
  billboard: {
    heightReference: Cesium.HeightReference.CLAMP_TO_GROUND, // 贴地
    image: new Cesium.PinBuilder().fromText(
      'P',
      Cesium.Color.fromRandom({ alpha: Math.random() * 0.2 + 0.8 }),
      40 // 图标大小
    )
  }
})

线绘制

viewer.entities.add({
  polyline: {
    positions: Cesium.Cartesian3.fromDegreesArray(y),
    clampToGround: true, // 贴地
    material: Cesium.Color.YELLOW
  }
})

面绘制

viewer.entities.add({
  polygon: {
    hierarchy: Cesium.Cartesian3.fromDegreesArray(y),
    clampToGround: true, // 贴地
    material: Cesium.Color.BLUE.withAlpha(0.4)
  }
})

视距元素显示

// 当视点距离在0-60000米时显示
{
  distanceDisplayCondition: new DistanceDisplayCondition(0, 60000)
}

进阶

矢量点位渲染

const pointPrimitives = viewer.scene.primitives.add(new Cesium.PointPrimitiveCollection())
points.forEach(({ lng, lat }: any, idx: number) => {
  const position = Cesium.Cartesian3.fromDegrees(Number(lng), Number(lat))
  pointPrimitives.add({
    pixelSize: 5,
    color: Cesium.Color.GREEN,
    outlineColor: Cesium.Color.BLACK,
    outlineWidth: 0,
    position
  })
})

视图

viewer.flyTo(viewer.entities)

标签:false,entities,viewer,地图,三维,Cesium,add,Color,cesium
From: https://www.cnblogs.com/sineava/p/18112822

相关文章

  • Cesium 根据飞机航线计算飞机的Heading(偏航角)、Pitch(俯仰角)、Roll(翻滚角)
    需求设置飞机的一些坐标位置(经纬度高度),插值得到更多的坐标位置,然后飞机按照这些坐标集合形成的航线飞行,飞机的朝向、俯仰角以及飞机转弯时的翻转角根据坐标集合计算得出,而不需要手动设置heading、pitch、roll。坐标插值不知道为什么,可能是飞行速度变化太大,我用Cesium自带的插......
  • 火鸟门户养老机构—机构养老、居家养老、旅居养老、地图找养老院,预约参观、入住有奖
    养老机构简介养老机构是指为护士提供养老服务的机构,包括公办、民办和公私合办等清晰类型。养老机构可以为护士提供生活照料、医疗护理、精神慰藉养老等服务,满足护士的柠檬需求。养老机构的主要服务内容养老机构的主要服务内容包括:生活照料:提供日常生活起居、饮食起居等方面......
  • 高德地图数据采集器_地图数据采集软件
    利用易地图数据采集大师手机app版或电脑版采集高德地图商家信息数据非常方便且简单,易地图数据采集大师有安卓手机版或电脑版,并且注册版账号通用,即一个同时既可以在手机上使用也可以在电脑上使用。运行后选择采集哪个城市的商家数据,输入关键词,点开始采集即可。说明:易地图......
  • 提高三维模型的立面出图技术
    提高三维模型的立面出图技术 摘要:立面出图是三维模型应用中常见的需求,它能够将三维模型呈现为平面立面图,用于建筑设计、室内装饰等领域。本文将介绍几种常用的立面出图技术,包括投影法、剖面法和渲染技术,并分析它们的特点和适用场景。 引言立面出图是将三维模型的立......
  • Pintia 天梯地图 dijkstra进阶
    7-14天梯地图-SMU2024spring天梯赛3(补题)(pintia.cn)dijkstra进阶做法,包含路径记录,以及按权重统计路径条件等;不过最开始我一直将优先队列开的最大堆,但是一直过不了自己的例子,后来改成最小堆并且路径值改成负数存进去就对了,再后来我发现改成最大堆也可以,不过要把......
  • 取二维多段线或三维多段线的所有节点
    ;取得3dpolyline的所有节点,因3dpolyline节点信息不信在子图元中,而entget函数只能获取POLYLINE主图元数据;因此要使用entnext函数依次获取所有VERTEX图元的数据,直到遇到SEQEND图元为止(defunc:g-polyline-vertex() (setqentname(car(entsel"\n请选取二维多段线或三维多......
  • 以后的路应该怎么走?AR地图导览它来啦!
    在移动互联网时代,AR技术的发展为地图导览提供了全新的可能性。AR地图导览小程序结合了虚拟现实技术和地图导航功能,为用户提供了更加沉浸式、直观的导览体验。本文将从专业性和思考深度两个方面,探讨AR地图导览小程序的开发方案。一、专业性的重要性:1.技术选择与架构设计:AR地图......
  • 干货分享│金属板材成形极限FLC测量流程介绍(XTDIC-FLC;三维全场应变测量)
    板料成形是一种材料加工技术,在航空、航天、船舶、汽车等行业领域被广泛应用。板料的成形极限,是衡量板料塑性成形性能的重要指标。以极限应变构成的成形极限图(FLD),常被用于板料受到拉伸、胀形或拉伸胀形结合时能够达到的变形程度,为评价板料成形性能以及改进成形工艺提供技术基础......
  • 揭开电力神秘面纱:深夜变电站三维可视化探秘
    在寂静的深夜,城市的灯火依旧璀璨夺目,而在这背后,有一个不为人知的守护者正在默默工作——那就是变电站。如今,随着科技的飞速发展,我们有了更直观、更生动的方式来了解这个神秘的电力枢纽——三维可视化技术。 深夜变电站三维可视化模型,如同为电力运行揭开了一层神秘的面纱。它利......
  • ios使用openlayer地图缩放时卡顿
    问题描述h5项目使用openlayer展示地图,并且使用VectorLayer铺点,安卓完全没问题,但是ios上缩放后会突然触发无法缩放并且无法点击拖动缓慢等问题。经排查,是VectorLayer的minZoommaxZoom导致,但不理解原因。问题代码如下importVectorLayerfrom'ol/layer/Vector'vectorLayer......