export function createPoint (BMap, options = {}) { const {lng, lat} = options return new BMap.Point(lng, lat) } export function createPixel (BMap, options = {}) { const {x, y} = options return new BMap.Pixel(x, y) } export function createBounds (BMap, options = {}) { const {sw, ne} = options return new BMap.Bounds(createPoint(BMap, sw), createPoint(BMap, ne)) } export function createSize (BMap, options = {}) { const {width, height} = options return new BMap.Size(width, height) } export function createIcon (BMap, options = {}) { const {url, size, opts = {}} = options return new BMap.Icon(url, createSize(BMap, size), { anchor: opts.anchor && createSize(BMap, opts.anchor), imageSize: opts.imageSize && createSize(BMap, opts.imageSize), imageOffset: opts.imageOffset && createSize(BMap, opts.imageOffset), infoWindowAnchor: opts.infoWindowAnchor && createSize(BMap, opts.infoWindowAnchor), printImageUrl: opts.printImageUrl }) } export function createLabel (BMap, options = {}) { const {content, opts} = options return new BMap.Label(content, { offset: opts.offset && createSize(BMap, opts.offset), position: opts.position && createPoint(BMap, opts.position), enableMassClear: opts.enableMassClear }) }