Summary
Methods:
| addControl |
添加指定控件 |
| addFeatures |
添加要素 |
| addPopups |
添加弹窗 |
| addSolutions |
添加解决方案 |
| destroy |
销毁全景图服务 |
| detectFeaturesAtPixel |
拾取要素 |
| flyTo |
旋转/缩放动画在于缩放和旋转在效果体现上可能不是同时,以及动画的时间会根据参数进行相应计算 |
| getAllControls |
返回当前场景所有的控件 |
| getAutorotateStatus |
检查是否处于自动旋转状态 |
| getCenter |
返回全景图的中心点 |
| getControlsByType |
根据控件类型返回相应控件 |
| getCoordinateFromPixel |
转换屏幕坐标变成球体经纬度坐标 |
| getCurrentView |
获取当前视图参数 |
| getDebugEnable |
获得当前辅助显示是否开启的状态 |
| getFeatures |
获取要素数 |
| getFullScreenEnabled |
检查页面是否全屏状态 |
| getId |
返回全景实例的唯一标志 |
| getLatitudeRange |
获得设置latitudeRange 纬度范围 |
| getLongitudeRange |
获得longitudeRange 经度范围 |
| getPanEnable |
获取当前全景图是否允许拖拽 |
| getPixelFromCoordinate |
球体经纬度坐标转换到屏幕坐标 |
| getPopups |
获取弹窗,以数组形式返回 |
| getSize |
返回当前视图的大小 |
| getStereoViewEnabled |
获取立体状态是否开启 |
| getType |
返回当前类型 |
| getZoomEnable |
获取当前全景图是否允许缩放 |
| getZoomLevel |
返回当前全景图的缩放级别 |
| off |
结束事件 |
| on |
绑定事件 |
| once |
事件绑定一次失效 |
|
打印全景图 |
|
| refresh |
刷新场景 |
| removeControl |
移除指定控件 |
| removeFeatures |
删除要素 |
| removePopups |
删除弹窗 |
| removeSolutions |
移除解决方案 |
| resize |
重置容器大小 |
| rotate |
根据经纬度旋转场景 |
| setDebugEnable |
开启/关闭显示辅助调试控件,可以辅助显示全景正在观看的中心和右下角显示全景坐标 |
| setFullScreenEnable |
开启或者关闭全屏 由于js的安全性考虑,此方法只能通过用户鼠标、键盘等事件中才能触发,即“对于一些非用户事件,比如onload、timeout等之类的事件中调用requestFullScreen是无法生效的 |
| setLatitudeRange |
设置latitudeRange 垂直旋转范围(纬度范围) |
| setLongitudeRange |
设置longitudeRange 水平旋转范围(经度范围) |
| setMaxZoom |
设置全景最大缩放级别 |
| setMinZoom |
设置全景最小缩放级别 |
| setPanEnable |
开启或者关闭全景图拖拽功能,包括鼠标动作和键盘动作 |
| setStereoViewEnabled |
开启/关闭立体视图 |
| setZoomEnable |
开启或者关闭全景图缩放功能,包括鼠标动作和键盘动作 |
| startAutorotate |
开启自动旋转 |
| startCrystalBall |
开启水晶球效果 |
| startFisheye |
开启鱼眼效果 |
| stopAutorotate |
停止自动旋转 |
| stopCrystalBall |
关闭水晶球效果 |
| stopFisheye |
停止鱼眼效果 |
| stopFly |
停止动画 |
| zoom |
缩放到指定级别 |
| zoomIn |
放大全景 |
| zoomOut |
缩小全景 |
Constructor
new PanoScene(container, serviceUrl, callback)
Parameters:
| Name | Type | Description |
|---|---|---|
container |
HTMLElement | String | 全景图容器,div元素容器或者容器id |
serviceUrl |
String | 空间信息平台的全景图服务地址 |
callback |
function | 回调方法 |
Throws:
-
当浏览器不支持canvas抛出错误
-
当没有传全景图图片时候抛出错误
-
当div容器没有传入的时候
Example
let pano=hmapEx.PanoScene('div',serviceUrl,callback);
Methods
-
addControl(control)
-
添加指定控件
Parameters:
Name Type Description controlmodule:control~Control 控件。
-
addFeatures(features, groupNameopt)
-
添加要素
Parameters:
Name Type Attributes Description featuresArray.<module:feature> 要素数组
groupNameString <optional>
组名称(可选参数),内部会按照这个组名称进行分类归组,方便逻辑管理
Throws:
features 不是数组的时候抛出异常
-
addPopups(popups, groupNameopt)
-
添加弹窗
Parameters:
Name Type Attributes Description popupsArray.<module:Popup> 弹窗数组,必须为数组
groupNameString <optional>
组名称(可选参数),内部会按照这个组名称进行分类归组,方便逻辑管理
Throws:
popup 不是数组的时候抛出异常
-
addSolutions(solutions)
-
添加解决方案
Parameters:
Name Type Description solutionsArray.<module:solution~Solution> -
destroy()
-
销毁全景图服务
-
detectFeaturesAtPixel(pixel, groupName) → {Array.<module:feature>}
-
拾取要素
Parameters:
Name Type Description pixelObject 一个屏幕像素,可由事件对象上获得
Name Type Description xNumber X方向上屏幕的值
yNumber Y方向上屏幕的值
groupNamestring 组名称 可用于查询特定图层的数据 当不传值得时候默认为查询全部图层
Returns:
Array.<module:feature> -
flyTo(options) → {Promise}
-
旋转/缩放动画在于缩放和旋转在效果体现上可能不是同时,以及动画的时间会根据参数进行相应计算
Parameters:
Name Type Description optionsObject 旋转或者放大的配置参数 {longitude:0,latitude:0,zoom}
Name Type Attributes Description positionArray.<Number> 转转目标位置
zoomNumber 缩放大小
durationNumber <optional>
动画时长默认1.5s 单位秒
waystring <optional>
动画旋转方式 默认 ANIMATION_TYPE.IN_OUT_SINE 其他参数应看 ANIMATION_TYPE 的其他值
Returns:
Promise -
getAllControls()
-
返回当前场景所有的控件
-
getAutorotateStatus() → {Boolean}
-
检查是否处于自动旋转状态
Returns:
Boolean -
getCenter() → {Object|Number|Number}
-
返回全景图的中心点
Returns:
-
Object
-
obj
-
Number
-
obj.longitude 经度
-
Number
-
obj.latitude 纬度
-
Object
-
-
getControlsByType(type) → {Array.<module:control~Control>}
-
根据控件类型返回相应控件
Parameters:
Name Type Description typeString 控件类型
Returns:
Array.<module:control~Control> -
getCoordinateFromPixel(viewerPoint) → {Array.<Number>}
-
转换屏幕坐标变成球体经纬度坐标
Parameters:
Name Type Description viewerPointObject 返回经纬度坐标
Name Type Description xNumber 屏幕坐标 x
yNumber 屏幕坐标 y
Returns:
Array.<Number> -position
-
getCurrentView() → {Object|Number|Number|Number|Number|Number}
-
获取当前视图参数
Returns:
-
Object
-
object 视图参数
-
Number
-
object.maxZoom 当前最大缩放级别
-
Number
-
object.minZoom 当前最小缩放级别
-
Number
-
object.longitude 当前全景中心点经度
-
Number
-
object.latitude 当前全景中心点纬度
-
Number
-
object.zoomLevel 当前缩放级别
-
Object
-
-
getDebugEnable() → {Boolean}
-
获得当前辅助显示是否开启的状态
Returns:
Boolean -
getFeatures(groupName) → {Array.<module:feature>}
-
获取要素数
Parameters:
Name Type Description groupNameString 传入字符串根据组名去获取,不传入参数则获取所有要素
Returns:
Array.<module:feature> -
getFullScreenEnabled() → {boolean}
-
检查页面是否全屏状态
Returns:
boolean -
getId() → {String}
-
返回全景实例的唯一标志
Returns:
String -
getLatitudeRange() → {Array.<Number>}
-
获得设置latitudeRange 纬度范围
Returns:
Array.<Number> -
getLongitudeRange() → {Array.<Number>}
-
获得longitudeRange 经度范围
Returns:
Array.<Number> -
getPanEnable() → {Boolean}
-
获取当前全景图是否允许拖拽
Returns:
Boolean -
getPixelFromCoordinate(position) → {Object|Number|Number}
-
球体经纬度坐标转换到屏幕坐标
Parameters:
Name Type Description positionArray.<Number> 球体经纬度坐标
Returns:
-
Object
-
position
-
Number
-
position.x 屏幕X坐标
-
Number
-
position.y 屏幕Y坐标
-
Object
-
-
getPopups(groupName)
-
获取弹窗,以数组形式返回
Parameters:
Name Type Description groupNameString 传入字符串根据组名去获取,不传入参数则获取所有
-
getSize() → {Object|Number|Number}
-
返回当前视图的大小
Returns:
-
Object
-
size
-
Number
-
size.width 宽度
-
Number
-
size.height 高度
-
Object
-
-
getStereoViewEnabled() → {Boolean}
-
获取立体状态是否开启
Returns:
Boolean -
getType() → {String}
-
返回当前类型
Returns:
String -
getZoomEnable() → {Boolean}
-
获取当前全景图是否允许缩放
Returns:
Boolean -
getZoomLevel() → {number}
-
返回当前全景图的缩放级别
Returns:
number -
off(eventType, callback)
-
结束事件
Parameters:
Name Type Description eventTypeString 事件类型
callbackfunction 注册事件监听的回调函数
-
on(eventType, callback)
-
绑定事件
Parameters:
Name Type Description eventTypeString 事件类型
callbackfunction 注册事件监听的回调函数
-
once(eventType, callback)
-
事件绑定一次失效
Parameters:
Name Type Description eventTypeString 事件类型
callbackfunction 注册事件监听的回调函数
-
print()
-
打印全景图
-
refresh()
-
刷新场景
-
removeControl(control)
-
移除指定控件
Parameters:
Name Type Description controlmodule:control~Control | String 控件对象或者控件类型名称
-
removeFeatures(features)
-
删除要素
Parameters:
Name Type Description featuresArray.<module:feature> | String 要删除的数组数据,传入数组则删除数组的要素,传入组名则删除这个组的弹窗,不传任何参数则删除所有要素
-
removePopups(popups)
-
删除弹窗
Parameters:
Name Type Description popupsArray.<module:Popup> | String 要删除的数组数据,传入数组则删除数组的要素,传入组名则删除这个组的弹窗,不传任何参数则删除所有弹窗
-
removeSolutions(solutions,参数可以是数组或者没有参数,没有参数则认为删除所有,数组则按照数组删除)
-
移除解决方案
Parameters:
Name Type Description solutions,参数可以是数组或者没有参数,没有参数则认为删除所有,数组则按照数组删除Array.<module:solution~Solution> -
resize(size)
-
重置容器大小
Parameters:
Name Type Description sizeObject 容器大小
Name Type Description widthNumber 宽度
heightNumber 高度
-
rotate(position, ignoreRangeopt)
-
根据经纬度旋转场景
Parameters:
Name Type Attributes Default Description positionArray.<Number> ignoreRangeboolean <optional>
false 忽视经度和纬度的范围限制
-
setDebugEnable(enableDebug)
-
开启/关闭显示辅助调试控件,可以辅助显示全景正在观看的中心和右下角显示全景坐标
Parameters:
Name Type Description enableDebugBoolean -
setFullScreenEnable(enableFullScreen)
-
开启或者关闭全屏 由于js的安全性考虑,此方法只能通过用户鼠标、键盘等事件中才能触发,即“对于一些非用户事件,比如onload、timeout等之类的事件中调用requestFullScreen是无法生效的
Parameters:
Name Type Description enableFullScreenBoolean -
setLatitudeRange(value)
-
设置latitudeRange 垂直旋转范围(纬度范围)
Parameters:
Name Type Description valueArray.<Number> 垂直旋转范围 当不传入参数的时候为不限制旋转,即焦点可以到[-π/2,π/2]
-
setLongitudeRange(value)
-
设置longitudeRange 水平旋转范围(经度范围)
Parameters:
Name Type Description valueArray.<Number> 水平旋转范围,当不传入参数的时候不进行水平方向旋转的限制,即焦点可以到[0,2π]
-
setMaxZoom(maxzoom, iszoom)
-
设置全景最大缩放级别
Parameters:
Name Type Default Description maxzoomNumber 最大缩放级别
iszoomBoolean false 是否执行放大操作,默认false
-
setMinZoom(minZoom, iszoom)
-
设置全景最小缩放级别
Parameters:
Name Type Default Description minZoomNumber 最小缩放级别
iszoomBoolean false 是否执行缩小操作,默认false
-
setPanEnable(enablePan)
-
开启或者关闭全景图拖拽功能,包括鼠标动作和键盘动作
Parameters:
Name Type Description enablePanBoolean -
setStereoViewEnabled(enable)
-
开启/关闭立体视图
Parameters:
Name Type Description enableBoolean -
setZoomEnable(enableZoom)
-
开启或者关闭全景图缩放功能,包括鼠标动作和键盘动作
Parameters:
Name Type Description enableZoomBoolean -
startAutorotate(options)
-
开启自动旋转
Parameters:
Name Type Description optionsObject 配置参数
Name Type Attributes Description stopDelayNumber <optional>
多少秒之后开启自动旋转 默认0秒
inactivityDelayNumber <optional>
用户停止活动之后多少秒开启自动旋转,默认5秒
-
startCrystalBall(value)
-
开启水晶球效果
Parameters:
Name Type Default Description valueNumber 155 设置球与相机的距离,默认155,现在范围在1-200
-
startFisheye(value)
-
开启鱼眼效果
Parameters:
Name Type Default Description valueNumber 80 开启鱼眼的时候限制的最大zoom值,默认是80
-
stopAutorotate()
-
停止自动旋转
-
stopCrystalBall()
-
关闭水晶球效果
-
stopFisheye()
-
停止鱼眼效果
-
stopFly() → {Promise}
-
停止动画
Returns:
Promise -
zoom(level)
-
缩放到指定级别
Parameters:
Name Type Description levelNumber 缩放层级 [1,100]
-
zoomIn()
-
放大全景
-
zoomOut()
-
缩小全景