Skip to main content

consts常量

QE内置了一些常量consts,可在项目初始化时进行设置。

是否使用WebGL2

可通过框架中 getProperlyWebGLVersion 方法来查看当前系统支持的WebGL版本,来决定是否开启,默认是开启的。当我们使用到三维风场,体渲染等图层的时候需要开启。

import { consts, getProperlyWebGLVersion } from "quickearth"
consts.useWebGL2 = getProperlyWebGLVersion() === 2 ? true : false; //是否使用WebGL2渲染
是否检测高清屏

checkRetina 是否检测高清屏,只对二维图层生效,这里是总开关,具体还需要看图层本身的支持。

下面示例中是移动端开启Retina检测

import {consts, isMobile} from "quickearth";
consts.checkRetina = isMobile() ? true : false;

retina生效需要三个条件同时满足:

  • 全局配置启用,即 consts.checkRetina = true
  • 二维图层在构建时的配置参数ignoreRetina不设置或者设置为false。该参数只有格点标签图层默认是true,其余二维图层默认都没设置该参数,即ignoreRetina默认false
  • 二维图层本身支持;
格点标签图层出于性能考虑,默认是关闭retina识别的。即格点标签图层的ignoreRetina默认为true。如果需要支持Retina高清渲染,在构建图层时,将ignoreRetina设置为false。
retina的比例

retinaRatio 默认通过window对象获取,如果这里设置,则设置为固定值。retina生效后,使用该值。

默认的资源文件路径

resourcePath 配置的是默认的资源文件路径,使用资源管理器加载资源的时候,如果提供的不是绝对路径,则认为提供的是该目录下的相对路径。resourcePath 默认值是 "public"

资源配置对象demo.config.json中很多相对路径,那资源最终路径就是"/public/demos/..."

const resourceConfig: IResourceConfigPredefined = {
  //这里是资源的类型 
  "images": {
    //这里是资源的ID
    "plane": "demos/images/plane.png",
    "level1": "demos/images/level1.jpg",
    "level2": "demos/images/level2.jpg",
    "level3": "demos/images/level3.jpg",
    "level4": "demos/images/level4.jpg",
  },
  "stopRules": {
    "color-precp": "demos/styles/precp.color.rules.json",
    "color-temp": "demos/styles/temp.color.rules.json"
  },
  "featureStyles": {
    "tempStyle": "demos/styles/temp.feature.style.json",
  }
}
图例颜色文件夹位置

defaultLegendPath 配置的是默认的图例颜色文件夹位置,默认值是 public/styles/colors目录。使用框架中的 predefinedLegendNames 时,对应图例颜色文件的实际存放位置。

加载器loader的指示字符

fieldLoaderIndicator 配置的是加载器loader的指示字符,默认是"#",不可以是?和&。

属性选择器的标记字符

fieldPropertiesIndicator 配置的是字段从属性表中获取值时的标记字符,默认是$。不可以是?和&。

如下示例中 "$Station_Name" 就是使用属性选择器。

layer.setDrawOptions({
  point: {
    size: 3,
    label: [
      {
        text: {
          data: "$Station_Name",
          offset: [0, 15],
        }
      }
    ]
  }
})
主题的标记字符

themeIndicator 配置的是主题的标记字符,如可以使用 color-temp@dark#res,表示深色主题。这样在初始化的时候如果将浅色作为默认主题,则配置为color-temp#res,此时通过map的setTheme设置为dark主题,则图层会自动使用color-temp@dark进行渲染。

自定义的pane

leaflet默认值如下: tile:200, overlay:400(leaflet中的矢量的默认位置), shadow:500, marker:600, tooltip:650, popup:700

customPanes 配置的默认值如下:

  • feature:450。如等值线,格点填值
  • station:480。如自动站等站点图层
  • filled:380。如格点填色
  • topmap:430。如地图名字,在格点相关图层之上,feature图层之下
  • bottommap:260。tile之上,格点之下的图层。
const tempStationLayer = new LGeoJSONLayer({
  name: "自动站",
  pane: consts.customPanes.station.name
})
默认缺测值

defaultUndef 配置的是默认缺测值,默认值是999999。当格点数据和格点数据解析器中没有提供缺测值信息时,会使用此处设置的默认缺测值。

是否开启调试模式

Debug 配置的是是否开启调试模式,默认是开启的。可使用QE中的日志服务 logger 输出调试信息。生产环境中可设置为 false 来减少调试信息的输出。

import { logger } from "quickearth";
logger.debug("测试一下"); //如果consts.Debug = false,则不会输出