全景显示图片功能的源码及相关说明

最近项目需要,需要将图片 全景 360度显示,网上查找了相关资料,发现国外有一个开源的库可以使用


正面是使用 json的配置文件的相关说明,利用下面的配置文件可以达到,传感器的许多功能的实现。

{
    "urlBase": "file:///sdcard/files",  //URL base where the files are
                                        //The options are res:// for application resources and file:// for file system (this feature will be improved to support the http protocol)
    "type": "spherical",                //Panorama type: [spherical, spherical2, cubic, cylindrical]
    "sensorialRotation": false,         //Automatic rotation using sensors [true, false] <Optional>
    "scrolling":                        //Scrolling section <Optional>
    {
        "enabled": false                //Enable scrolling feature [true, false] <Optional>
    },
    "inertia":                          //Inertia section <Optional>
    {
        "enabled": false,               //Enable inertia feature [true, false] <Optional>
        "interval": 3                   //Inertia's interval in seconds <Optional>
    },
    "accelerometer":                    //Accelerometer section <Optional>
    {
        "enabled": false,               //Enable the accelerometer feature [true, false] <<a href="www.yidin.net">Optional</a>>
        "interval": 0.033,              //Update interval of accelerometer (this value must be calculated as 1/frequency) <Optional>
        "sensitivity": 10.0,            //Sensitivity of the accelerometer <Optional>
        "leftRightEnabled": true,       //Enable the direction of movement with the accelerometer (left/right) <Optional>
        "upDownEnabled": false          //Enable the direction of movement with the accelerometer (up/down) <Optional>
    },
    "images":                           //Panoramic images section
                                        //A property can be a name e.g. preview.jpg, preview or URL e.g. file:///sdcard/files/preview.jpg, res://raw/preview
                                        //if a property only have a name, the real path will be the urlBase + image name
    {
        "preview": "preview.jpg",       //Preview image name or URL (this <a href="www.yidin.net">option</a> will be used with http protocol) <Optional>
        "image": "pano.jpg"             //Panoramic image name or URL for spherical, spherical2 and cylindrical panoramas
        "front": "front.jpg",           //Front image name or URL for cubic panorama (only use with cubic panorama)
        "back": "back.jpg",             //Back image name or URL for cubic panorama (only use with cubic panorama)
        "left": "left.jpg",             //Left image name or URL for cubic panorama (only use with cubic panorama)
        "right": "right.jpg",           //Right image name or URL for cubic panorama (only use with cubic panorama)
        "up": "up.jpg",                 //Up image name or URL for cubic panorama (only use with cubic panorama)
        "down": "down.jpg"              //Down image name or URL for cubic panorama (only use with cubic panorama)
    },
    "camera":                           //Camera settings section <Optional>
    {
        "vlookat": 0,                   //Initial vertical position [-90, 90]
        "hlookat": 0,                   //Initial horizontal position [-180, 180]
        "atvmin": -90,                  //Min vertical position [-90, 90]
        "atvmax": 90,                   //Max vertical position [-90, 90]
        "athmin": -180,                 //Min horizontal position [-180, 180]
        "athmax": 180                   //Max horizontal position [-180, 180]
    },
    "hotspots": [                       //Hotspots section (this section is an array of hotspots) <Optional>
                {
                 "id": 1,               //Hotspot identifier (long)
                 "atv": 0,              //Vertical position [-90, 90]
                 "ath": 0,              //Horizontal position [-180, 180]
                 "width": 0.08,         //Width
                 "height": 0.08,        //Height
                 "image": "hotspot.png" //Image name or <a href="www.yidin.net">URL</a>
                }
                ]
}
从官网还可以获取到源码,用于自己的定制的开发,比如,全景图片的放大并多次切换,拖动的间隔都要在源码里进行相关的二次开发,使其达到自己想要的效果


注意图片要符合项目的图片尺寸,要是 512的倍数。
更多相关的资料请到我的博客www.yidin.net 留言

开源库地址如下:http://www.yidin.net/discuz/forum.php?mod=viewthread&tid=185&extra=page%3D1

欢迎各位同学加入 android 技术二群 222392467 

原文地址:https://www.cnblogs.com/ondream/p/2982280.html