W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
panoviewer 動態(tài)庫提供了在小程序中播放全景圖的方法,底層基于百度 webVR SDK Hydreigon 實(shí)現(xiàn)。
使用動態(tài)庫的方法參見小程序文檔:使用動態(tài)庫,在 app.json 中增添一項(xiàng) dynamicLib,與 pages 同級。
"dynamicLib": {
"myDynamicLib": {
"provider": "panoviewer"
}
},
在每個(gè)使用到圖表組件的頁面,配置 *.json 文件如:
{
"usingSwanComponents": {
"panoviewer": "dynamicLib://myDynamicLib/panoviewer"
}
}
<panoviewer options="{{ options }}" style="width: 100%; height: 100%; display: block"></panoviewer>
這是一種最基本的配置方式。style
也可以在 *.css
中聲明,需要保證 <panoviewer>
是有寬度和高度的。options
在 *.js
中綁定到頁面的 data 中:
const options = ...;
Page({
data: {
options: options
}
});
其中,options 是配置項(xiàng),定義了全景圖的物料資源地址和渲染交互配置,一個(gè)典型的配置如下所示:
options = {
"image": "https://xxx.com/.../xxx.jpg",
"smallPlanet": 3000,
"config": {
"projectionType": "equirectangular"
}
};
<panoviewer> 上支持的屬性包括:
屬性名稱 | 類型 | 說明 |
---|---|---|
options | Object | 配置項(xiàng) |
配置項(xiàng)名稱 | 類型 | 說明 |
---|---|---|
image | Object/string | 投影模式對應(yīng)的資源配置 |
projectionType | string | 投影模式名稱 |
smallPlanet | number | 小行星動畫時(shí)長,如果未設(shè)置則表示無動畫 |
動態(tài)庫支持多種投影模式,包括球形、立方體、EAC、手機(jī)全景、分級分塊,投影模式對應(yīng)的名稱如下表:
投影模式 | 名稱 |
---|---|
球形 | equirectangular |
立方體 | cubemap |
EAC | cubestrip |
手機(jī)全景 | panorama |
分級分塊 | multires |
除分級分塊模式外,其他模式的 image 字段為資源 url,分級分塊模式的 image 參數(shù)是切片腳本生成的配置,說明如下:
配置項(xiàng)名稱 | 類型 | 說明 |
---|---|---|
basePath | string | 分塊圖的根目錄 |
path | string | 分塊圖的格式化方式 |
fallbackPath | string | 縮略圖路徑 |
extension | string | 圖像格式 |
tileResolution | string | 分塊 size |
maxLevel | number | 最大級別 |
cubeResolution | number | 立方體單面 size |
示例配置如下:
{
image: {
basePath:
"https://hydreigon-publish.cdn.bcebos.com/swan-hydreigon/pano/lujiazui-4k/",
path: "/%l/%s%y_%x",
fallbackPath: "/fallback/%s",
extension: "jpg",
tileResolution: 512,
maxLevel: 3,
cubeResolution: 1304
},
config: {
projectionType: "multires"
}
}
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: