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模型的更多相关文章

  1. cesium加载gltf模型点击以及列表点击定位弹窗

    前言 cesium 官网的api文档介绍地址cesium官网api,里面详细的介绍 cesium 各个类的介绍,还有就是在线例子:cesium 官网在线例子,这个也是学习 cesium 的好素材. 之 ...

  2. Cesium 加载 gltf 模型

    var viewer = new Cesium.Viewer('cesiumContainer', { /*帮助*/ navigationHelpButton: true, baseLayerPick ...

  3. Three.js加载gltf模型

    效果图 demo import './index.css'; var stats; stats = new Stats(); document.body.appendChild( stats.dom ...

  4. cesium 加载倾斜摄影模型(这里有一坑)

    代码如下: // Construct the default list of terrain sources. var terrainModels = Cesium.createDefaultTerr ...

  5. WebGL简易教程(十五):加载gltf模型

    目录 1. 概述 2. 实例 2.1. 数据 2.2. 程序 2.2.1. 文件读取 2.2.2. glTF格式解析 2.2.3. 初始化顶点缓冲区 2.2.4. 其他 3. 结果 4. 参考 5. ...

  6. cesium 学习(五) 加载场景模型

    cesium 学习(五) 加载场景模型 一.前言 现在开始实际的看看效果,目前我所接触到基本上都是使用Cesium加载模型这个内容,以及在模型上进行操作.So,现在进行一些加载模型的学习,数据的话可以 ...

  7. ceisum_加载倾斜摄影模型

    osgb转换为3Dtiles格式(使用工具转换) 然后加载到cesium中(加载代码见下,可以控制模型高度) var offset = function(height,tileset) { conso ...

  8. Cesium加载三维倾斜摄影数据

    具体技术来源自论文 基于Cesium的倾斜摄影三维模型Web加载与应用研究. 技术架构图 应用实例 利用一个实际实例来详细说明如何利用Cesium加载倾斜摄影数据,并进行可视化和交互操作. 首先,利用 ...

  9. 6_1 持久化模型与再次加载_探讨(1)_三种持久化模型加载方式以及import_meta_graph方式加载持久化模型会存在的变量管理命名混淆的问题

    笔者提交到gitHub上的问题描述地址是:https://github.com/tensorflow/tensorflow/issues/20140 三种持久化模型加载方式的一个小结论 加载持久化模型 ...

随机推荐

  1. let/const及块级作用域

    本系列是在平时阅读.学习.实际项目中有关于es6中的新特性.用发的简单总结,目的是记录以备日后温习:本系列预计包含let/const.箭头函数.解构.常用新增方法.Symbol.Set&Map ...

  2. Swift编程语言学习1.6——可选值

    可选值 使用可选(optionals)来处理值可能缺失的情况.可选表示: 有值,等于 x   或者没有值 注意: C 和 Objective-C 中并没有可选这个概念.最接近的是 Objective- ...

  3. Vue小白篇 - Vue介绍

    Vue ?啥是Vue?能干嘛? vue 的介绍 Vue 是一套用于构建用户界面的 渐进式框架 ,与其它大型框架不同的是, Vue 被设计为可以自底向上逐层应用.Vue 的核心库只关注视图层 前端三大框 ...

  4. elasticsearch 基础 —— Update API

    Update API 更新API允许基于提供的脚本更新文档.该操作从索引获取文档(与分片并置),运行脚本(使用可选的脚本语言和参数),并对结果进行索引(也允许删除或忽略操作).它使用版本控制来确保在& ...

  5. 靶场练习--sqli(3&4)

    第三关 先解决一下第二关遗留下来的问题,嘻嘻.看来数据库原理应当过一遍~ 1.首先判断是否有SQL注入,然后再看是数字型.字符型.发现这里是字符型. 2.order by 查询字段数,记得后面要加一个 ...

  6. ansible笔记(二)--配置文件详解

    配置文件ansible.cfg约有350行语句,大多数为注释行默认配置项.该文件遵循INI格式,分为如下几类配置.(1)[defaults] [defaults] # inventory = /etc ...

  7. 【抓包工具之Fiddler】增加IP列;session高亮

    Fiddler 在处理每个session时,脚本文件CustomRules.js中的方法都会运行,该脚本使得你可以隐藏,标识或任意修改负责的session.规则脚本在运行状态下就可以修改并重新编译,不 ...

  8. html5 图片360旋转

    test.html <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...

  9. ARC093F Dark Horse 容斥原理+DP

    题目传送门 https://atcoder.jp/contests/arc093/tasks/arc093_d 题解 由于不论 \(1\) 在哪个位置,一轮轮下来,基本上过程都是相似的,所以不妨假设 ...

  10. Java中的String、StringBuffer、StringBuilder区别以及Java之StringUtils的用法

    1.String.StringBuffer.StringBuilder的区别 String是Java中基础类型,是immutable类(不可变)的典型实现,利用string进行拼接是会产生过多无用对象 ...