zoukankan      html  css  js  c++  java
  • Web3D学习之-----全景图预览插件photo-sphere-viewer

      全景图展示的原理----大概知道一下~

      等距圆柱投影:又称方格投影。

      假想地球球面与一个圆柱面相切于赤道。并将球面上的所有经纬线投影到圆柱面上,经纬线被投影成两两互相垂直的直线,并且经距和纬距相等。

      这个圆柱的侧面展开就是一个全景图,可以算出:侧面的长为一个圆周,高为半个圆周。所以全景图的长宽比为 2 : 1。

      展示全景图:就是圆柱侧面投影的逆运算。把圆柱侧面贴到一个球上,我们在球中心看!

    1、photo-sphere-viewer插件官网是:Photo Sphere Viewer 

    2、在html中使用:

    <head>
            <meta charset="utf-8">
            <title>全景图</title>
            <style>
                #viewer {
                    width: 1000px;
                    height: 500px;
                }
            </style>
            <link rel="stylesheet"
                href="https://cdn.jsdelivr.net/npm/photo-sphere-viewer@4/dist/photo-sphere-viewer.min.css" />
        </head>
        <body>
            <div id="viewer"></div>
        </body>
        <script src="https://cdn.jsdelivr.net/npm/three/build/three.min.js"></script>
        <script src="https://cdn.jsdelivr.net/npm/uevent@2/browser.min.js"></script>
        <script src="https://cdn.jsdelivr.net/npm/photo-sphere-viewer@4/dist/photo-sphere-viewer.min.js"></script>
        <script>
            var viewer = new PhotoSphereViewer.Viewer({
                container: document.querySelector('#viewer'),
                panorama: 'img/11.jpeg'
            });
        </script>

    3、在vue脚手架中使用

    首先把插件下载到项目中:npm install photo-sphere-viewer

    <template>
        <div id="viewer"></div>
    </template>
    
    <script>
        import * as PhotoSphereViewer from 'photo-sphere-viewer'
        import 'photo-sphere-viewer/dist/photo-sphere-viewer.css'
        export default {
            data() {
                return {
                    factoryLink: require('../../assets/img/11.jpeg'), //测试全景图
                }
            },
            mounted() {
                //全景图展示
                var viewer = new PhotoSphereViewer.Viewer({
                    container: document.querySelector('#viewer'),
                    panorama: this.factoryLink
                });
            },
            methods: {
            },
        }
    </script>
    
    <style scoped>
        #viewer {
            width: 1200px;
            height: 600px;
        }
    </style>
  • 相关阅读:
    TCP与UDP在socket编程中的区别
    使用python selenium webdriver模拟浏览器
    Web性能测试参数
    DPDK学习之开篇介绍
    go环境import cycle not allowed问题处理
    使用etcd+confd管理nginx配置
    服务的扩展性
    linux 网络编程
    单片机成长之路(stm8基础篇)- 025 stm8 时钟切换
    单片机成长之路(51基础篇)- 024 基于 N76E003 的按键按键状态机
  • 原文地址:https://www.cnblogs.com/zhaoyingzhen/p/15131221.html
Copyright © 2011-2022 走看看