PIE-engine 教程 ——矢量集合的循环计算使用for循环(中国各省市面积统计)

简介: PIE-engine 教程 ——矢量集合的循环计算使用for循环(中国各省市面积统计)

   上一次我们提到了如何使用map()函数来完成相应的面积统计,本次我们将同样使用for驯化来完成我们所需要的全国各省市面积的统计,

(930条消息) PIE-engine 教程 ——矢量集合的循环计算使用map()映射函数(中国各省市面积统计)_此星光明的博客-CSDN博客

同样我们先看一下获取矢量集合中每一个矢量的位置应该如何获取:

getAt(index)

获得指定编号的Feature对象。

方法参数:

- featureCollection(FeatureCollection)

FeatureCollection实例

- index(Number)

Feature的编号

返回值:Feature

另外,我们用的是矢量集合,而并没有把他转化成geometry形式,所以我们要介绍一下geometry函数,这个函数的功能就是将你的矢量图形进行几何化,方便用于计算面积

geometry(maxError,proj,geodesic)

返回给定要素在给定投影下的几何形状。

方法参数:

- feature(Feature)

Feature实例

- maxError(MaxError)

未启用

- proj(Project)

坐标系,默认为WGS84

- geodesic(Boolean)

未启用

返回值:Geometry

代码:

/**
 * @File    :   map-05-FeatureCollection循环计算_使用for循环
 * @Time    :   2022/3/1
 * @Author  :   piesat
 * @Version :   1.0
 * @Contact :   400-890-0662
 * @License :   (C)Copyright 航天宏图信息技术股份有限公司
 * @Desc    :   FeatureCollection使用for循环
 */
var ftrCol = pie.FeatureCollection("NGCC/CHINA_PROVINCE_BOUNDARY");
print("ftrCol", ftrCol);
for (i = 0; i <= 34; i++) {
    var province = ftrCol.getAt(i).get("name");
    var geometry = ftrCol.getAt(i).geometry();
    var area = geometry.area().divide(1000000);
    print(province, area);
}
Map.addLayer(ftrCol, { color: "ff0000", fillColor: "00000000" }, "ftrCol");
Map.setCenter(118, 39.7, 3);

image.png

 

大家可以发现,这里我们如果使用for循环你必须知道你的矢量集合中有多少个个数,这样才能进行下一步操作,而使用map()的过程中不需要这个环节。


相关文章
|
Linux iOS开发 UED
Linux简介和比较:开源操作系统的优势与差异
Linux简介和比较:开源操作系统的优势与差异
977 0
|
机器学习/深度学习 编解码 计算机视觉
Transformer又一城 | Swin-Unet:首个纯Transformer的医学图像分割模型解读
Transformer又一城 | Swin-Unet:首个纯Transformer的医学图像分割模型解读
2543 0
|
存储 虚拟化 Docker
Windows11 Docker镜像存储路径更改(非C盘路径)
本文是博主学习Docker的记录,对于C盘空间有限的同学,希望对大家有所帮助。
3415 0
Windows11 Docker镜像存储路径更改(非C盘路径)
|
7月前
|
Ubuntu 网络协议 应用服务中间件
在 Ubuntu 上安装 Nginx
在 Ubuntu 上安装和配置 Nginx 非常简单。首先更新系统包,然后通过 `apt` 安装 Nginx,检查服务状态并配置防火墙规则。访问服务器 IP 测试是否成功显示默认页面。还可管理服务、创建虚拟主机及排查常见问题,适合新手快速上手部署高性能 Web 服务。
856 0
|
算法 搜索推荐 Java
数据结构与算法学习十三:基数排序,以空间换时间的稳定式排序,速度很快。
基数排序是一种稳定的排序算法,通过将数字按位数切割并分配到不同的桶中,以空间换时间的方式实现快速排序,但占用内存较大,不适合含有负数的数组。
285 0
数据结构与算法学习十三:基数排序,以空间换时间的稳定式排序,速度很快。
|
Kubernetes Cloud Native 关系型数据库
云原生数据基础设施之kubeblocks
云原生数据基础设施之kubeblocks
|
机器学习/深度学习 人工智能 自然语言处理
探索人工智能前沿:自然语言处理的最新进展
探索人工智能前沿:自然语言处理的最新进展
1068 2
|
自然语言处理 知识图谱
【笔记】探索生成范式:大型语言模型在信息提取中的作用
【笔记】探索生成范式:大型语言模型在信息提取中的作用
444 7
|
存储 Java 数据库
【微服务系列笔记】微服务概述
本文对比了单体应用和微服务架构。单体应用中所有功能模块在一个工程中,而微服务则按领域模型拆分为独立服务,每个服务有明确边界,可独立开发、部署和扩展。微服务允许使用不同语言和技术栈,每个服务有自己的数据库。微服务架构的优点包括易于开发维护、技术栈开放和错误隔离,但缺点包括增加运维成本、调用链路复杂、分布式事务处理困难以及学习成本高。实现微服务通常涉及SpringCloud等开发框架和Docker等运行平台。
385 2
|
存储 人工智能 安全
阿里云企业成长解决方案,含通用、企业上云、企业服务、教育等多场景
在数字化时代,企业的成长离不开云计算技术的支持。阿里云作为领先的云服务提供商,推出了全面的企业成长解决方案,涵盖通用场景、企业上云、新零售、企业服务、教育、游戏、医疗健康、文化传媒和工业制造等多个行业。这些解决方案旨在帮助企业轻松应对各种挑战,实现数字化转型和升级。
阿里云企业成长解决方案,含通用、企业上云、企业服务、教育等多场景