SuperMap.Util

常用的一些函数。

Summary
SuperMap.Util 常用的一些函数。
Properties
ImgPath {SuperMap.ImgPath} 设置控件图片的路径。该变量需在控件初始化之前设置。默认为 “”。
Functions
destinationVincenty 根据传入的起始点计算目标点的经纬度(度)、角方向(度)和距离(米)。
distVincenty 给出两个带有地理坐标的点对象,计算这些点在椭球表面上的距离。
Constants
INCHES_PER_UNIT {SuperMap.INCHES_PER_UNIT} 每单位的英尺数。
Properties
DOTS_PER_INCH {SuperMap.DOTS_PER_INCH} 分辨率与比例尺之间转换的常量,默认值72。
Constants
Browser {SuperMap.Browser} 浏览器名称,依赖于userAgent属性,BROWSER_NAME可以是空,或者以下浏览器:
IS_GECKO {SuperMap.IS_GECKO} 如果userAgent捕获到浏览器使用的是Gecko引擎则返回true。
Functions
getBrowser {Object} 获取浏览器名称、版本、设备名称。对应的属性分别为 name, version, device。
getFormattedLonLat 格式化字符串。 Parameters: coordinate - {Float} 要格式化的坐标值。 axis - {String} 将要被格式化的axis,可以是经度,纬度,默认为纬度,经度则为”lon”。 dmsOption - {String} 指定的输出精度,可以是: ‘dms’显示度、分、秒; ‘dm’显示度、分; ‘d’显示度;
getScrollbarWidth {Integer} 返回scrollbarWidth。
SuperMap.Util.calculateDpi 计算iServer服务的REST图层的显示分辨率,需要从iServer的REST图层表述中获取viewBounds、viewer、scale、coordUnit、datumAxis 五个参数, 来进行计算。
SuperMap.Util.cloneObject 克隆一份Object对象
SuperMap.Util.committer 与服务器进行通信。
SuperMap.Util.copyAttributesWithClip 将源对象上的属性拷贝到目标对象上。(不拷贝 CLASS_NAME 和方法)
SuperMap.Util.getResolutionFromScaleDpi 根据比例尺和dpi计算屏幕分辨率。
SuperMap.Util.getScaleFromResolutionDpi 根据resolution、dpi、coordUnit和datumAxis计算比例尺。
SuperMap.Util.toJSON 将对象转换成 JSON 字符串。

Properties

ImgPath

{SuperMap.ImgPath} 设置控件图片的路径。该变量需在控件初始化之前设置。默认为 “”。

Functions

distVincenty

SuperMap.Util.distVincenty = function( p1,
p2 )

给出两个带有地理坐标的点对象,计算这些点在椭球表面上的距离。

Parameters

p1 {SuperMap.LonLat} 带有地理坐标的点对象或者带有经纬度属性的对象。
p2 {SuperMap.LonLat} 带有地理坐标的点对象或者带有经纬度属性的对象。

Returns

{Float} 传入的两点在椭球表面上的距离(单位:km)。

destinationVincenty

SuperMap.Util.destinationVincenty = function( lonlat,
brng,
dist )

根据传入的起始点计算目标点的经纬度(度)、角方向(度)和距离(米)。

Parameters

lonlat {SuperMap.LonLat} (或者带有经纬度属性的任何对象)起点。
brng {Float} 角方向(度)。
dist {Float} 距离(米)。

Returns

{SuperMap.LonLat} 目标点。

Constants

INCHES_PER_UNIT

{SuperMap.INCHES_PER_UNIT} 每单位的英尺数。

Properties

DOTS_PER_INCH

{SuperMap.DOTS_PER_INCH} 分辨率与比例尺之间转换的常量,默认值72。

Constants

IS_GECKO

{SuperMap.IS_GECKO} 如果userAgent捕获到浏览器使用的是Gecko引擎则返回true。

Browser

{SuperMap.Browser} 浏览器名称,依赖于userAgent属性,BROWSER_NAME可以是空,或者以下浏览器:

  • ”opera” -- Opera
  • ”msie” -- Internet Explorer
  • ”safari” -- Safari
  • ”firefox” -- Firefox
  • ”mozilla” -- Mozilla

Functions

getBrowser

SuperMap.Util.getBrowser = function()

Returns

{Object} 获取浏览器名称、版本、设备名称。对应的属性分别为 name, version, device。

支持的浏览器包括:

  • ’opera’ -- Opera
  • ’msie’ -- Internet Explorer
  • ’safari’ -- Safari
  • ’firefox’ -- Firefox

getScrollbarWidth

SuperMap.Util.getScrollbarWidth = function()

Returns

{Integer} 返回scrollbarWidth。

getFormattedLonLat

SuperMap.Util.getFormattedLonLat = function( coordinate,
axis,
dmsOption )

格式化字符串。 Parameters: coordinate - {Float} 要格式化的坐标值。 axis - {String} 将要被格式化的axis,可以是经度,纬度,默认为纬度,经度则为”lon”。 dmsOption - {String} 指定的输出精度,可以是: ‘dms’显示度、分、秒; ‘dm’显示度、分; ‘d’显示度;

Returns

{String} 格式化为字符串的坐标值。

SuperMap.Util.calculateDpi

SuperMap.Util.calculateDpi = function ( viewBounds,
viewer,
scale,
coordUnit,
datumAxis )

计算iServer服务的REST图层的显示分辨率,需要从iServer的REST图层表述中获取viewBounds、viewer、scale、coordUnit、datumAxis 五个参数, 来进行计算。

Parameters

viewBounds {SuperMap.Bounds} 地图的参照可视范围,即地图初始化时默认的地图显示范围。
viewer {SuperMap.Size} 地图初始化时默认的地图图片的尺寸。
scale {Number} 地图初始化时默认的显示比例尺。
coordUnit {String} 投影坐标系统的地图单位。
datumAxis {Number} 地理坐标系统椭球体长半轴。用户自定义地图的Options时,若未指定该参数的值, 则系统默认为WGS84参考系的椭球体长半轴6378137。

Returns

{Number} 返回图层显示分辨率。

SuperMap.Util.toJSON

SuperMap.Util.toJSON = function ( obj )

将对象转换成 JSON 字符串。

Parameters

obj {Object} 要转换成 JSON 的 Object 对象。

Returns

{String} 返回转换后的 JSON 对象。

SuperMap.Util.getResolutionFromScaleDpi

SuperMap.Util.getResolutionFromScaleDpi = function ( scale,
dpi,
coordUnit,
datumAxis )

根据比例尺和dpi计算屏幕分辨率。

Parameters

scale {Number} 比例尺。
dpi {Number} 图像分辨率,表示每英寸内的像素个数。
coordUnit {String} 投影坐标系统的地图单位。
datumAxis {Number} 地理坐标系统椭球体长半轴。用户自定义地图的Options时,若未指定该参数的值, 则DPI默认按照WGS84参考系的椭球体长半轴6378137来计算。

Returns

{Number} 返回当前比例尺下的屏幕分辨率。

SuperMap.Util.getScaleFromResolutionDpi

SuperMap.Util.getScaleFromResolutionDpi = function ( resolution,
dpi,
coordUnit,
datumAxis )

根据resolution、dpi、coordUnit和datumAxis计算比例尺。

Parameters

resolution {Number} 用于计算比例尺的地图分辨率。
dpi {Number} 图像分辨率,表示每英寸内的像素个数。
coordUnit {String} 投影坐标系统的地图单位。
datumAxis {Number} 地理坐标系统椭球体长半轴。用户自定义地图的Options时,若未指定该参数的值, 则DPI默认按照WGS84参考系的椭球体长半轴6378137来计算。

Returns

{Number} 返回当前屏幕分辨率下的比例尺。

SuperMap.Util.committer

SuperMap.Util.committer = function ( options )

与服务器进行通信。

Parameters

options {Object} 参数。

Allowed options properties

method {String} 请求方式,包括GET,POST,PUT, DELETE。
url {String} 发送请求的地址。
params {Object} 作为查询字符串添加到url中的一组键值对,此参数只适用于GET方式发送的请求。
data {Object } 除GET请求外其他类型请求,发送到服务器的数据。
success {Function} 请求成功后的回调函数。
failure {Function} 请求失败后的回调函数。
scope {Object} 如果回调函数是对象的一个公共方法,设定该对象的范围。
isInTheSameDomain {Boolean} 请求是否在当前域中。

SuperMap.Util.copyAttributesWithClip

SuperMap.Util.copyAttributesWithClip = function( destination,
source,
clip )

将源对象上的属性拷贝到目标对象上。(不拷贝 CLASS_NAME 和方法)

Parameters

destination {Object} 目标对象。
source {Object} 源对象。
clip {Array{String}} 源对象中禁止拷贝到目标对象的属性,目的是防止目标对象上不可修改的属性被篡改。

SuperMap.Util.cloneObject

SuperMap.Util.cloneObject = function( obj )

克隆一份Object对象

Parameters

object {Object} 需要克隆的对象。 Returns: {Object} 返回对象的拷贝对象,注意是新的对象,不是指向
SuperMap.Util.distVincenty = function( p1,
p2 )
给出两个带有地理坐标的点对象,计算这些点在椭球表面上的距离。
SuperMap.Util.destinationVincenty = function( lonlat,
brng,
dist )
根据传入的起始点计算目标点的经纬度(度)、角方向(度)和距离(米)。
SuperMap.Util.getBrowser = function()
{Object} 获取浏览器名称、版本、设备名称。对应的属性分别为 name, version, device。
SuperMap.Util.getScrollbarWidth = function()
{Integer} 返回scrollbarWidth。
SuperMap.Util.getFormattedLonLat = function( coordinate,
axis,
dmsOption )
格式化字符串。 Parameters: coordinate - {Float} 要格式化的坐标值。 axis - {String} 将要被格式化的axis,可以是经度,纬度,默认为纬度,经度则为”lon”。 dmsOption - {String} 指定的输出精度,可以是: ‘dms’显示度、分、秒; ‘dm’显示度、分; ‘d’显示度;
SuperMap.Util.calculateDpi = function ( viewBounds,
viewer,
scale,
coordUnit,
datumAxis )
计算iServer服务的REST图层的显示分辨率,需要从iServer的REST图层表述中获取viewBounds、viewer、scale、coordUnit、datumAxis 五个参数, 来进行计算。
SuperMap.Util.toJSON = function ( obj )
将对象转换成 JSON 字符串。
SuperMap.Util.getResolutionFromScaleDpi = function ( scale,
dpi,
coordUnit,
datumAxis )
根据比例尺和dpi计算屏幕分辨率。
SuperMap.Util.getScaleFromResolutionDpi = function ( resolution,
dpi,
coordUnit,
datumAxis )
根据resolution、dpi、coordUnit和datumAxis计算比例尺。
SuperMap.Util.committer = function ( options )
与服务器进行通信。
SuperMap.Util.copyAttributesWithClip = function( destination,
source,
clip )
将源对象上的属性拷贝到目标对象上。(不拷贝 CLASS_NAME 和方法)
SuperMap.Util.cloneObject = function( obj )
克隆一份Object对象
这个类用来表示经度和纬度对。
表示边界类实例。使用bounds之前需要设置left,bottom, right, top四个属性,这些属性的初始值为null。
此类描绘一对高宽值的实例。
Close