mapbox-gl 常用Expressions表达式

2024-08-30 17:28

本文主要是介绍mapbox-gl 常用Expressions表达式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 一、前言
    • 1.1 概念
    • 1.2 Mapbox gl提供的表达式计算器
  • 二、所有支持的运算符
    • 2.1 颜色运算符
      • 2.1.1 rgb
      • 2.1.2 rgba
      • 2.1.3 hsl
      • 2.1.4 hsla
      • 2.1.5 to-rgba
    • 2.2 Math 数学计算运算符
      • 2.2.1 +, -, *, /, %, ^
      • 2.2.2 abs, ceil, floor, round
      • 2.2.3 sin, cos, tan, asin, acos, atan
      • 2.2.4 e, ln, ln2, log10, log2, pi
      • 2.2.5 max, min
    • 2.3 zoom、Heatmap 运算符
  • 三、示例


一、前言

1.1 概念

表达式(expressions)是Mapbox GL JS的一个高级功能,它为数据的添加和渲染展示提供了更多的灵活性。
任何layout、paint或者filter的值都可以用一个expression表达式来细化,一个expression表达式定义了用如下计算器计算属性值的公式。

1.2 Mapbox gl提供的表达式计算器

Mapbox gl提供的表达式计算器有如下:

  • Mathematical operators(数学 运算):数学计算器用于数值计算和其他数值相关的属性
  • Logical operators(逻辑 运算):逻辑计算器用于计算布尔值和做条件决策
  • String operators(字符串 运算):字符计算器用于计算字符串
  • Data operators(数据 运算):提供调用数据源要素集属性的接口
  • Camera operators(相机 运算):提供定义当前地图视角参数的接口

二、所有支持的运算符

// prettier-ignore
type ExpressionName =// Types 类型| 'array' | 'boolean' | 'collator' | 'format' | 'literal' | 'number' | 'object' | 'string'| 'to-boolean' | 'to-color' | 'to-number' | 'to-string' | 'typeof'// Feature data 空间元素数据| 'feature-state' | 'geometry-type' | 'id' | 'line-progress' | 'properties'// Lookup| 'at' | 'get' | 'has' | 'length'// Decision| '!' | '!=' | '<' | '<=' | '==' | '>' | '>=' | 'all' | 'any'| 'case' | 'match' | 'coalesce'// Ramps, scales, curves| 'interpolate' | 'interpolate-hcl' | 'interpolate-lab' | 'step'// Variable binding| 'let' | 'var'// String 字符串| 'concat' | 'downcase' | 'is-supported-script' | 'resolved-locale' | 'upcase'// Color 颜色| 'rgb' | 'rgba'// Math 数学计算| '-' | '*' | '/' | '%' | '^' | '+' | 'abs' | 'acos' | 'asin' | 'atan' | 'ceil' | 'cos' | 'e'| 'floor' | 'ln' | 'ln2' | 'log10' | 'log2' | 'max' | 'min' | 'pi' | 'round' | 'sin' | 'sqrt' | 'tan'// Zoom, Heatmap| 'zoom' | 'heatmap-density';

2.1 颜色运算符

2.1.1 rgb

["rgb", number, number, number]: color

2.1.2 rgba

["rgba", number, number, number, number]: color

2.1.3 hsl

["hsl", number, number, number]: color

2.1.4 hsla

["hsla", number, number, number, number]: color

2.1.5 to-rgba

["to-rgba", color]: array<number, 4>

2.2 Math 数学计算运算符

2.2.1 +, -, *, /, %, ^

["+", number, number, ...]: number
["-", number, number]: number
["-", number]: number
["*", number, number, ...]: number
["/", number, number]: number
["%", number, number]: number
["^", number, number]: number

2.2.2 abs, ceil, floor, round

["abs", number]: number
["ceil", number]: number
["floor", number]: number
["round", number]: number

2.2.3 sin, cos, tan, asin, acos, atan

["sin", number]: number
["cos", number]: number
["tan", number]: number
["asin", number]: number
["acos", number]: number
["atan", number]: number

2.2.4 e, ln, ln2, log10, log2, pi

["e"]: number
["ln", number]: number
["ln2"]: number
["log10", number]: number
["log2", number]: number
["pi"]: number

2.2.5 max, min

["max", number, number, ...]: number
["min", number, number, ...]: number

2.3 zoom、Heatmap 运算符

["zoom"]: number
["heatmap-density"]: number

三、示例

在这里插入图片描述

这篇关于mapbox-gl 常用Expressions表达式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1121459

相关文章

JavaScript中比较两个数组是否有相同元素(交集)的三种常用方法

《JavaScript中比较两个数组是否有相同元素(交集)的三种常用方法》:本文主要介绍JavaScript中比较两个数组是否有相同元素(交集)的三种常用方法,每种方法结合实例代码给大家介绍的非常... 目录引言:为什么"相等"判断如此重要?方法1:使用some()+includes()(适合小数组)方法2

SpringBoot 获取请求参数的常用注解及用法

《SpringBoot获取请求参数的常用注解及用法》SpringBoot通过@RequestParam、@PathVariable等注解支持从HTTP请求中获取参数,涵盖查询、路径、请求体、头、C... 目录SpringBoot 提供了多种注解来方便地从 HTTP 请求中获取参数以下是主要的注解及其用法:1

Java Stream流以及常用方法操作实例

《JavaStream流以及常用方法操作实例》Stream是对Java中集合的一种增强方式,使用它可以将集合的处理过程变得更加简洁、高效和易读,:本文主要介绍JavaStream流以及常用方法... 目录一、Stream流是什么?二、stream的操作2.1、stream流创建2.2、stream的使用2.

MySQL常用字符串函数示例和场景介绍

《MySQL常用字符串函数示例和场景介绍》MySQL提供了丰富的字符串函数帮助我们高效地对字符串进行处理、转换和分析,本文我将全面且深入地介绍MySQL常用的字符串函数,并结合具体示例和场景,帮你熟练... 目录一、字符串函数概述1.1 字符串函数的作用1.2 字符串函数分类二、字符串长度与统计函数2.1

MySQL 内存使用率常用分析语句

《MySQL内存使用率常用分析语句》用户整理了MySQL内存占用过高的分析方法,涵盖操作系统层确认及数据库层bufferpool、内存模块差值、线程状态、performance_schema性能数据... 目录一、 OS层二、 DB层1. 全局情况2. 内存占js用详情最近连续遇到mysql内存占用过高导致

C++11右值引用与Lambda表达式的使用

《C++11右值引用与Lambda表达式的使用》C++11引入右值引用,实现移动语义提升性能,支持资源转移与完美转发;同时引入Lambda表达式,简化匿名函数定义,通过捕获列表和参数列表灵活处理变量... 目录C++11新特性右值引用和移动语义左值 / 右值常见的左值和右值移动语义移动构造函数移动复制运算符

Linux系统中查询JDK安装目录的几种常用方法

《Linux系统中查询JDK安装目录的几种常用方法》:本文主要介绍Linux系统中查询JDK安装目录的几种常用方法,方法分别是通过update-alternatives、Java命令、环境变量及目... 目录方法 1:通过update-alternatives查询(推荐)方法 2:检查所有已安装的 JDK方

MySQL CTE (Common Table Expressions)示例全解析

《MySQLCTE(CommonTableExpressions)示例全解析》MySQL8.0引入CTE,支持递归查询,可创建临时命名结果集,提升复杂查询的可读性与维护性,适用于层次结构数据处... 目录基本语法CTE 主要特点非递归 CTE简单 CTE 示例多 CTE 示例递归 CTE基本递归 CTE 结

MySQL字符串常用函数详解

《MySQL字符串常用函数详解》本文给大家介绍MySQL字符串常用函数,本文结合实例代码给大家介绍的非常详细,对大家学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录mysql字符串常用函数一、获取二、大小写转换三、拼接四、截取五、比较、反转、替换六、去空白、填充MySQL字符串常用函数一、

Java中Arrays类和Collections类常用方法示例详解

《Java中Arrays类和Collections类常用方法示例详解》本文总结了Java中Arrays和Collections类的常用方法,涵盖数组填充、排序、搜索、复制、列表转换等操作,帮助开发者高... 目录Arrays.fill()相关用法Arrays.toString()Arrays.sort()A