vue使用 BIMFACE demo

一个小案例

首先在 index.html 文件引入 js 文件

<script src="https://static.bimface.com/api/BimfaceSDKLoader/BimfaceSDKLoader@latest-release.js"></script>

然后在相应的页面编写 bim 代码。其实官网给的demo都是js的,只要把它转成vue语法就可以了。
https://bimface.com/developer-jsdemo

<template><div style="height: 90%;"><div class='buttons'><button class="button" id="btnLoadMap" @click="loadMap">加载地图</button></div><!-- 定义DOM元素,用于在该DOM元素中显示模型或图纸 --><div id="domId" style="height: 100%;"></div></div>
</template><script>export default {name: 'HelloWorld',data() {return {viewToken: '24448941b05340968a92ae84a2a*****',   // 这里替换成自己的viewer3D: '',app: '',viewAdded: false,isMapLoaded: false,loaderConfig: null,}},mounted() {var that = thisvar options = new BimfaceSDKLoaderConfig();options.viewToken = that.viewToken;BimfaceSDKLoader.load(options, that.successCallback, that.failureCallback);},methods: {setButtonText(btnId, text) {var dom = document.getElementById(btnId);if (dom != null && dom.nodeName == "BUTTON") {dom.innerText = text;}},// 加载成功回调函数successCallback(viewMetaData) {var that = thisvar dom4Show = document.getElementById('domId');// 设置WebApplication3D的配置项var webAppConfig = new Glodon.Bimface.Application.WebApplication3DConfig();webAppConfig.domElement = dom4Show;webAppConfig.enableLogarithmicDepthBuffer = true;// 创建WebApplication3D,用以显示模型var app = new Glodon.Bimface.Application.WebApplication3D(webAppConfig);app.addView(viewMetaData.viewToken);var viewer3D = app.getViewer();that.viewer3D = viewer3D;// 增加加载完成监听事件viewer3D.addEventListener(Glodon.Bimface.Viewer.Viewer3DEvent.ViewAdded, function () {that.viewAdded = true;//自适应屏幕大小window.onresize = function () {viewer3D.resize(document.documentElement.clientWidth, document.documentElement.clientHeight - 40)}// 渲染场景viewer3D.render();});},// 加载失败回调函数failureCallback(error) {console.log(error);},// 添加构件嵌套关系loadMap() {var that = thisif (!that.viewAdded) {return;}if (!that.isMapLoaded) {// 构造地图配置项var mapConfig = new Glodon.Bimface.Plugins.TileMap.MapConfig();mapConfig.viewer = that.viewer3D;// 设置模型载入的基点mapConfig.basePoint = {"x": -85689.088,"y": -62066.347}mapConfig.modelPosition = [121.63259566511255, 29.837978723638756];mapConfig.modelRotationZ = 0 * Math.PI / 180;mapConfig.modelAltitude = 0;// 构造地图对象var map = new Glodon.Bimface.Plugins.TileMap.Map(mapConfig);}}},}
</script><!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped>* {margin: 0;padding: 0;}html,body {height: 100%;}.buttons {font-size: 0;}.button {margin: 5px 0 5px 5px;width: 100px;height: 30px;border-radius: 3px;border: none;background: #32D3A6;color: #FFFFFF;}.main {display: flex;flex-direction: column;overflow: hidden;height: 100%;}#domId {}
</style>

vue使用 BIMFACE demo相关推荐

  1. Vue异步组件Demo

    Vue异步组件Demo 在大型应用中,我们可能需要将应用拆分为多个小模块,按需从服务器下载.为了进一步简化,Vue.js 允许将组件定义为一个工厂函数,异步地解析组件的定义.Vue.js 只在组件需要 ...

  2. antv-x6 vue流程图编辑器demo

    antv-x6 vue流程图编辑器demo 效果如下: 效果如下: <template><div class="content"><div class ...

  3. vue脚手架基础demo

    vue脚手架基础demo 目录 vue脚手架基础demo created_demo1示例 created_demo2示例 filters_demo3 v-once v-text_demo4 数据类型d ...

  4. vue前端开发demo示例

    vue前端开发demo示例 目录 vue前端开发demo示例 系统结构 js部分 界面部分 界面 系统结构 js部分 代码如下(示例): import request from '@/utils/re ...

  5. vue——二级菜单demo

    学习了vue,最近想着写一写demo练一练,今天写的二级菜单,中间踩过很多坑 1.存数据:最开始想着一级菜单存一个数组,二级菜单存不同的数组.那么问题来了,一级菜单和二级菜单应该是超级相关联的,如果分 ...

  6. VUE的组件DEMO

    组件的基本写法可以如下: HTML: <div id="components-demo"><button-counter self-data="this ...

  7. 基于Ant Design vue框架登录demo

    我们直接进入正题吧~~~ 先来看下效果图 那么前端代码呢~~~ 不着急,这就双手奉上哈~~ <a-col :span="12"><div class=" ...

  8. vue的项目demo(asp.net mvc5+vue2.5)

    本项目是asp.net mvc5+vue2.5的项目,用了挺长的时间进行摸索和研究,非常适合vue的初学者进行模仿和研究,可以举一反三对本项目进行扩展. 本项目前台显示是用vue2.5开发的,后台操作 ...

  9. vue 手机端demo

    有个想法写一个各种插件的用法 和实列出来 那样每次用什么就直接复制过来就好.大家感觉怎么样 尽情期待吧!努力开发中 快乐的小前端! 示列图如下 https://download.csdn.net/do ...

最新文章

  1. python 案例串接_来撸串,一个案例轻松认识Python 字符串——翻转拼接游戏
  2. 重新想象 Windows 8 Store Apps (49) - 输入: 获取输入设备信息, 虚拟键盘, Tab 导航, Pointer, Tap, Drag, Drop...
  3. 区块链与边缘计算(3)系统介绍
  4. 浅谈HSRP(热备份路由选择协议)
  5. 【推荐系统】推荐系统评测指标
  6. c语言常用指令翻译,c语言常见专业词汇带翻译
  7. 学了C++不会STL,简直少了左膀右臂
  8. 房贷是不是越多越久越好?
  9. 张正友标定法 【计算机视觉学习笔记--双目视觉几何框架系列】
  10. 用html做qq会员页面导航,untitledQQ会员页面导航3.html
  11. CentOS6.2下安装中文输入法
  12. 游戏开发之类实现String及其迭代器(C++基础)
  13. iOS.Debug.Simulator
  14. ajax调用微信退款接口,微信退款(在.net core 用http方式请求)
  15. Excel如何导出高清图片
  16. iOS中调用短信和邮箱的方法
  17. 光线追踪学习:GPU端光线追踪学习
  18. maptalks+three.js+vue webpack项目实现二维地图上贴三维模型
  19. WPS文档消除格式并消除大片空白格
  20. LeetCode 11-20 题

热门文章

  1. 从项目管理看应急管理体系建设
  2. 趣谈云计算:孙悟空脚踏七彩云,靠的就是云计算
  3. 如何用api实现量化交易?
  4. Jarvis OJ平台basic部分wirteup
  5. TrueCrypt简介、在VS2008下的编译过程
  6. 轮毂、轮辋、轮圈,你还分不清楚?
  7. 2021年求职秘籍丨如何在 IT 部门找到工作?4个步骤必不可少
  8. go语言并发下载电影和视频,根据m3u8索引url下载视频.下载网页中的图片,可以从当前页向下搜索层数.
  9. php怎么调用麦克风,使用麦克风时要知道的10大声学知识
  10. lotus notes