cesium加载gltf模型
cesium加载gltf模型
一、采用vue-cesium;在项目里加载依赖包。命令如下:
npm i --save vue-cesium
在main.js中加入如下代码:
https://www.npmjs.com/package/vue-cesium
在你的相关组件里加入如下代码:
在index.html中引入相关css
<link rel="stylesheet" href="Cesium/Widgets/widgets.css" />
代码如下:
<vc-viewer>
<vc-entity :description="description" :position="position">
<vc-graphics-model :uri="uri" @ready="subReady"></vc-graphics-model>
</vc-entity>
</vc-viewer> data () {
return {
position: { lng: 39.9942785653, lat: 116.3675724221 },
uri: './data/scene.gltf',
description: '你好 姚素素'
};
}, methods: {
getJson () {
this.$axios.get("api/");
},
subReady ({ Cesium, viewer, cesiumObject }) {
viewer.zoomTo(viewer.entities)
}
}
第二种方法:
在index.html中引入相关css与cesium
在相关组件中引入如下代码,空间的隐藏自己根据需要看着办
mounted () {
let viewer = new Cesium.Viewer("cesiumContainer", {
geocoder: false,
homeButton: false,
sceneModePicker: false,
baseLayerPicker: false,
fullscreenButton: false,
scene3DOnly: true, //如果设置为true,则所有几何图形以3D模式绘制以节约GPU资源
navigationInstructionsInitiallyVisible: false,
navigationHelpButton: false,
animation: false,
timeline: false,
fulllscreenButtond: false,
vrButton: false,
infoBox: false,
// 加载谷歌卫星影像
imageryProvider: new Cesium.UrlTemplateImageryProvider({
url: "http://mt1.google.cn/vt/lyrs=s&hl=zh-CN&x={x}&y={y}&z={z}&s=Gali"
})
});
//加载gltf格式数据到cesium
var scene = viewer.scene; var position = Cesium.Cartesian3.fromDegrees(39.9942785653,116.3675724221, 0);
var heading = Cesium.Math.toRadians(135);
var pitch = 0;
var roll = 0;
var hpr = new Cesium.HeadingPitchRoll(heading, pitch, roll);
var orientation = Cesium.Transforms.headingPitchRollQuaternion(position, hpr); var entity = viewer.entities.add({
position : position,
orientation : orientation,
model : {
uri: "./data/scene.gltf",
minimumPixelSize : 128,
maximumScale : 20000
}
});
viewer.trackedEntity = entity;
},
第三种方法:
1.在index.html中引入
<link rel="stylesheet" href="Cesium/Widgets/widgets.css" />
<script src="Cesium/Cesium.js"></script>
//js最好在body底部引入
2.添加如下代码:
mounted () {
let viewer = new Cesium.Viewer("cesiumContainer", {
geocoder: false,
homeButton: false,
sceneModePicker: false,
baseLayerPicker: false,
fullscreenButton: false,
scene3DOnly: true, //如果设置为true,则所有几何图形以3D模式绘制以节约GPU资源
navigationInstructionsInitiallyVisible: false,
navigationHelpButton: false,
animation: false,
timeline: false,
fulllscreenButtond: false,
vrButton: false,
infoBox: false,
// 加载谷歌卫星影像
// imageryProvider: new Cesium.UrlTemplateImageryProvider({
// url: "http://mt1.google.cn/vt/lyrs=s&hl=zh-CN&x={x}&y={y}&z={z}&s=Gali"
// })
}); var scene = viewer.scene;
var entity = viewer.entities.add({
position: Cesium.Cartesian3.fromDegrees(
114.20574928735117,
22.321435975427892
),
model: {
uri: "./data/scene.gltf",
heightReference: Cesium.HeightReference.CLAMP_TO_GROUND,
color: Cesium.Color.GAINSBORO,
colorBlendAmount: 0.4
}
}); viewer.camera.setView({
destination: Cesium.Rectangle.fromDegrees(
114.2044562729353,
22.324313503282323,
114.20933770113695,
22.32079076841488
)
});
},
相关控件自己根据需要进行控制
如果有不懂得,可以加群讨论854184700
cesium加载gltf模型的更多相关文章
- cesium加载gltf模型点击以及列表点击定位弹窗
前言 cesium 官网的api文档介绍地址cesium官网api,里面详细的介绍 cesium 各个类的介绍,还有就是在线例子:cesium 官网在线例子,这个也是学习 cesium 的好素材. 之 ...
- Cesium 加载 gltf 模型
var viewer = new Cesium.Viewer('cesiumContainer', { /*帮助*/ navigationHelpButton: true, baseLayerPick ...
- Three.js加载gltf模型
效果图 demo import './index.css'; var stats; stats = new Stats(); document.body.appendChild( stats.dom ...
- cesium 加载倾斜摄影模型(这里有一坑)
代码如下: // Construct the default list of terrain sources. var terrainModels = Cesium.createDefaultTerr ...
- WebGL简易教程(十五):加载gltf模型
目录 1. 概述 2. 实例 2.1. 数据 2.2. 程序 2.2.1. 文件读取 2.2.2. glTF格式解析 2.2.3. 初始化顶点缓冲区 2.2.4. 其他 3. 结果 4. 参考 5. ...
- cesium 学习(五) 加载场景模型
cesium 学习(五) 加载场景模型 一.前言 现在开始实际的看看效果,目前我所接触到基本上都是使用Cesium加载模型这个内容,以及在模型上进行操作.So,现在进行一些加载模型的学习,数据的话可以 ...
- ceisum_加载倾斜摄影模型
osgb转换为3Dtiles格式(使用工具转换) 然后加载到cesium中(加载代码见下,可以控制模型高度) var offset = function(height,tileset) { conso ...
- Cesium加载三维倾斜摄影数据
具体技术来源自论文 基于Cesium的倾斜摄影三维模型Web加载与应用研究. 技术架构图 应用实例 利用一个实际实例来详细说明如何利用Cesium加载倾斜摄影数据,并进行可视化和交互操作. 首先,利用 ...
- 6_1 持久化模型与再次加载_探讨(1)_三种持久化模型加载方式以及import_meta_graph方式加载持久化模型会存在的变量管理命名混淆的问题
笔者提交到gitHub上的问题描述地址是:https://github.com/tensorflow/tensorflow/issues/20140 三种持久化模型加载方式的一个小结论 加载持久化模型 ...
随机推荐
- [BZOJ3626] [LNOI2014]LCA(树链剖分)
[BZOJ3626] [LNOI2014]LCA(树链剖分) 题面 给出一棵N个点的树,要求支持Q次询问,每次询问一个点z与编号为区间[l,r]内的点分别求最近公共祖先得到的最近公共祖先深度和.N, ...
- Server Tomcat v8.5 Server at localhost failed to start.
问题描述:新建了一个项目,建立servlet文件然后改了下@WebServlet("floorButtonServlet")映射的路径,重启debug之后服务器启动失败. 在网上查 ...
- jenkins部署的零碎知识
环境要求 1)版本控制子系统(SVN):SVN服务器.项目对应版本库.版本库中钩子程序(提交代码后,触发Jenkins自动打包并部署到应用服务器)(2)持续集成子系统(存在Jenkins的服务器):J ...
- 312-金胜维 P系列2.5寸 480G SATA3 SSD固态硬盘
金胜维 P系列2.5寸 480G SATA3 SSD固态硬盘 一.概述 P系列为KingSpec金胜维针对入门级消费群体推出的一款高性价SSD固态硬盘,采用7mm超薄金属冲压外壳,板载优质TL ...
- Sass-@for
在制作网格系统的时候,大家应该对 .col1~.col12 这样的印象较深.在 CSS 中你需要一个一个去书写,但在 Sass 中,可以使用 @for 循环来完成.在 Sass 的 @for 循环中有 ...
- HTML基础 结构,标题<h1>和段落<p> 写一个三毛语录
先看代码: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <tit ...
- JAVA中位数排序
package quickSort; public class QuickSort { private static int count; /** * 测试 * @param args */ publ ...
- python代码整体左移或右移
IDE 是 PyCharm 选中代码块: 1)右移:直接 Tab 2)左移:Shift + Tab
- Graphics 绘图
Graphics类提供基本绘图方法,Graphics2D类提供更强大的绘图能力. Graphics类提供基本的几何图形绘制方法,主要有:画线段.画矩形.画圆.画带颜色的图形.画椭圆.画圆弧.画多边形等 ...
- 终极解决方案: Invalid character found in the request target.
终极解决方案:(导出可能出现) 我的tomcat版本是8.5.32,导出时遇到以下报错. 报错日志: Invalid character found in the request target. Th ...