当前位置: 首页 > wzjs >正文

中国空间站实时位置如何网上快速接网站开发订单

中国空间站实时位置,如何网上快速接网站开发订单,四字顺口名字公司,黑科技概述 在Leaflet中,Icon类用于创建图标对象,可以用于标记点的图标。Icon类继承自Class类,提供了一些方法用于创建图标对象。 源码分析 源码实现 Icon类源码实现如下: export var Icon Class.extend({options: {popupAnchor: [0, 0],// 弹出框的锚点tooltipAnch…

概述

在Leaflet中,Icon类用于创建图标对象,可以用于标记点的图标。Icon类继承自Class类,提供了一些方法用于创建图标对象。

源码分析

源码实现

Icon类源码实现如下:

export var Icon = Class.extend({options: {popupAnchor: [0, 0],// 弹出框的锚点tooltipAnchor: [0, 0],// 弹出框和提示框的锚点crossOrigin: false, // 跨域处理},initialize: function (options) {setOptions(this, options);},createIcon: function (oldIcon) {return this._createIcon("icon", oldIcon);},createShadow: function (oldIcon) {return this._createIcon("shadow", oldIcon);},_createIcon: function (name, oldIcon) {var src = this._getIconUrl(name);if (!src) {if (name == "icon") {throw new Error("iconUrl not set in Icon options (see the docs.)");}return null;}var img = this._createImg(src,oldIcon && oldIcon.tagName === "IMG" ? oldIcon : null);this._setIconStyles(img, name);if (this.options.crossOrigin || this.options.crossOrigin === "") {img.crossOrigin =this.options.crossOrigin === true ? "" : this.options.crossOrigin;}return img;},_setIconStyles: function (img, name) {var options = this.options;var sizeOption = options[name + "Size"];if (typeof sizeOption === "number") {sizeOption = [sizeOption, sizeOption];}var size = point(sizeOption),anchor = point((name === "shadow" && options.shadowAnchor) ||options.iconAnchor ||(size && size.divideBy(2, true)));img.className = "leaflet-marker-" + name + " " + (options.className || "");if (anchor) {img.style.marginLeft = -anchor.x + "px";img.style.marginTop = -anchor.y + "px";}if (size) {img.style.width = size.x + "px";img.style.height = size.y + "px";}},_createImg: function (src, el) {el = el || document.createElement("img");el.src = src;return el;},_getIconUrl: function (name) {return ((Browser.retina && this.options[name + "RetinaUrl"]) ||this.options[name + "Url"]);},
});export function icon(options) {return new Icon(options);
}

源码详解

核心配置项

Icon类的配置项实际上比上述还要多,如下所示:

options= {iconUrl: null,        // 必须的图标路径iconRetinaUrl: null,  // Retina屏专用路径iconSize: null,       // 图标尺寸(像素)iconAnchor: null,     // 图标锚点位置popupAnchor: [0,0],   // 弹出框锚点偏移shadowUrl: null,      // 阴影图片路径crossOrigin: false    // 跨域处理shadowRetinaUrl: null,// Retina屏专用路径shadowSize: null,     // 阴影尺寸shadowAnchor: null,   // 阴影锚点位置className: null,      // 自定义类名
}
核心方法实现
  1. 初始化方法

Icon类继承于Class基类,因此其初始化方法为initialize。在初始化方法中,会调用setOptions方法来设置options属性,合并配置项。

  1. 图标创建流程

Icon类提供了两个方法:createIconcreateShadow,用于创建图标和阴影。这两个方法都会调用_createIcon方法,该方法根据传入的name参数来确定创建的是图标还是阴影。

_createIcon方法中,首先会根据参数name获取图片的路径,若图标的默认路径不存在则抛出异常。然后会调用_createImg创建图片的DOM元素设置src属性,再就是调用_setIconStyle方法设置图标的样式包括大小以及偏移值,偏移值主要是通过参数进行计算,最后根据参数crossOrigin设置图标的跨域属性。

  1. 动态URL选择
  • 自动检测Retina屏幕
  • 优先使用Retina专用高清图片
  1. 样式定位算法

样式定位算法,主要是通过CSS margin精确控制锚点的样式,因为图标的锚点默认在左上角,通过负的margin可以将图标的中心或者指定锚点位置对准地图上的坐标点,该方法也叫做负边距定位法

总结

Icon类的主要职责是根据提供的选项创建和管理图标及其阴影的DOM元素,处理不同分辨率的资源,设置正确的位置和样式,确保图标在地图上正确显示。通过选项配置,用户可以灵活地定制图标的各种属性,如大小、锚点位置、弹出窗口的位置偏移等。


文章转载自:

http://yqtLCIGT.sffwz.cn
http://r5MMgqBZ.sffwz.cn
http://EdvwePte.sffwz.cn
http://4mOAV6yH.sffwz.cn
http://VJRUI9Xb.sffwz.cn
http://tUeW2TIH.sffwz.cn
http://4vp86IM5.sffwz.cn
http://C5FJM6MB.sffwz.cn
http://rVXFUUEl.sffwz.cn
http://YdHWy0X7.sffwz.cn
http://ng5pIKTs.sffwz.cn
http://DhFXFwd0.sffwz.cn
http://dFb8ja9N.sffwz.cn
http://Gbs4nr61.sffwz.cn
http://TnKtoj6n.sffwz.cn
http://RDk5jQvw.sffwz.cn
http://E6BKiYxh.sffwz.cn
http://CabkBa9D.sffwz.cn
http://TolUH1r3.sffwz.cn
http://ACbTz8go.sffwz.cn
http://MFbzoPwK.sffwz.cn
http://FrDlBjbV.sffwz.cn
http://JYSyjdNv.sffwz.cn
http://yaFFqTAm.sffwz.cn
http://cxzlLUSl.sffwz.cn
http://T5TJb90z.sffwz.cn
http://pYyzsCQe.sffwz.cn
http://XGY6Tbud.sffwz.cn
http://YtGjU21Q.sffwz.cn
http://BpFqI6RN.sffwz.cn
http://www.dtcms.com/wzjs/741264.html

相关文章:

  • 网站建设方网站开发的基本流程 岗位及职责
  • 教做视频的网站制作企业推广网站
  • 网站维护是什么建设公司网站步骤
  • 建站之星模块外贸货源
  • 做母婴产品的网站设计签名免费网站
  • 深圳工程交易中心网安卓优化大师
  • 外贸网站建设不可缺少的灵活性钢琴室内设计效果图
  • 做网站开发有前途吗网站开发设计大概多少费用
  • 山西设计网站公司天津建设电工证查询网站
  • 做网站要花钱吗锦州如何做百度的网站
  • 廊坊网页模板建站崇州市微信端网站建
  • 服装行业做推广网站能不能自己做网站推广
  • 沈阳便宜做网站的怎么做模板网站
  • 网站建设方面的文章广州竞价托管代运营
  • 开发网站公司名称wordpress 百度商桥
  • 成都网站建设创新互联wordpress趋势图插件
  • 标准件网站开发传媒网站建设方案
  • 网站建设怎么制作网站阿里wordpress 安装
  • 成都网站建设冠辰哪家强wordpress建站 东莞
  • 网站建设与网页设计案例教程好的营销网站设计公司
  • 珠海营销网站建设网站模板免费下载酒店管理系统
  • 网站用户体验度房地产公司排名
  • 简单的景区介绍网页制作代码公司网站怎么优化
  • 竞价网站做不做链接最专业网站建设公司哪家好
  • 网站编辑人才队伍建设深圳市建设局工程交易中心网站
  • 做数学题目在哪个网站好公司做网站广告语
  • 网站建设设计费用摊销年限影视网站开发
  • 微信分享接口网站开发 php竞价网站做不做链接
  • 网站cms大全嵌入式开发工程师前景
  • 湖北工程建设总承包有限公司网站上海 建设工程质量监督站网站