GEE:构建和调用自己的 js 函数库

news/2024/10/22 8:10:16/

作者:CSDN @ _养乐多_

本文记录了在Google Earth Engine(GEE)上构建自己的 js 函数库的步骤。构建自己的函数库以方便代码调用和扩展。


文章目录

      • 一、创建lib文件
      • 二、调用lib库
      • 三、附加
          • 3.1 定义函数
          • 3.2 js 库中函数互相调用


一、创建lib文件

为了统一管理,我新建了一个专门用于保存js代码的文件夹,选择Repository,创建一个名为lib的工程。

在这里插入图片描述

并在lib工程下新建了一个ImageVisualization文件夹。

在这里插入图片描述

接着编写以下测试代码,

var eevis = {};eevis.pri = function(str){print(str);
}exports = eevis;

并将代码命名为printTest,并保存到lib工程下,

在这里插入图片描述

将该代码直接拖到ImageVisualization文件夹中,

在这里插入图片描述

接着,设置权限,

在这里插入图片描述

设置为任何人可读,如果不想让别人看到源码可以不设置。

在这里插入图片描述

设置完点击Done就可以。

二、调用lib库

注意:调用的路径到 Repository 之后就是冒号:,然后再写后面的路径。

var eevis = require('users/....../lib:ImageVisualization/printTest')eevis.pri('Hello World!')

三、附加

3.1 定义函数

再强调一遍,创建js库的代码中必须要有exports = 自定义的对象;这一句,要不然,gee识别不了,不会调用出定义的函数。

var eevis = {};eevis.pri = function(str){print(str);
}exports = eevis;
3.2 js 库中函数互相调用

在 js 库中使用 pri1 函数调用 pri 函数,

var eevis = {};eevis.pri = function(str){print(str);
}eevis.pri1 = function(){eevis.pri('测试');
}exports = eevis;

调用

var eevis = require('users/949384116/lib:ImageVisualization/printTest')eevis.pri('Hello World!')eevis.pri1()

结果如下图,

在这里插入图片描述


http://www.ppmy.cn/news/1259769.html

相关文章

Linux基础命令(测试相关)

软件测试相关linux基础命令笔记 操作系统 常见Linux: Redhat系列:RHSL、Centos、FedoraDebian系列:Debian、Ubuntu以上操作系统都是在原生Linux系统上,增加了一些软件或功能。linux的文件及路径特点 Linux没有盘符的概念&#xf…

从零开始学习 JavaScript APl(七):实例解析关于京东案例头部案例和放大镜效果!

大家好关于JS APl 知识点已经全部总结了,第七部部分全部都是案例部分呢!!(素材的可以去百度网盘去下载!!!) 目录 前言 一、个人实战文档 放大镜效果 思路分析: 关于其它…

TCP实现一对一聊天

一,创建类 二,类 1.ChatSocketServer类 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.ServerSocket; import java.net.Socket; import java.util.Sca…

通俗讲解分布式锁:场景和使用方法

对于锁大家肯定不会陌生,比如 synchronized 关键字 和 ReentrantLock 可重入锁,一般我们用其在多线程环境中控制对资源的并发访问。但是随着业务的发展,分布式的概念逐渐出现在我们系统中,我们在开发的过程中经常需要进行多个系统…

如何快速移植(从STM32F103到STM32F407)

最近用到F4的地方比较多,网上代码还是F1多一些,便需要移植代码,如何快速移植代码呢? 看下面这篇文章 外设 首先就是STM32的外设了。 STM32F407ZGT6的基本外设 STM32F407ZGT6 作为 MCU,该芯片是 STM32F407 里面配置…

案例044:基于微信小程序的消防隐患在线举报系统

文末获取源码 开发语言:Java 框架:SSM JDK版本:JDK1.8 数据库:mysql 5.7 开发软件:eclipse/myeclipse/idea Maven包:Maven3.5.4 小程序框架:uniapp 小程序开发软件:HBuilder X 小程序…

实战oj题——设计循环队列

前言:今天我们来实现循环队列。 各个接口的实现 创建队列: typedef struct {int* a;int front;int back;int k;} MyCircularQueue;我们的队列是由数组储存的,所以我们队列中得定义一个数组,front代表我们的首元素,ba…

Kontakt v7.7.2(音频采样器)

Native Instruments Kontakt 7是一款强大的软件采样器,它允许用户从各种来源采样音频并进行编辑和处理。它包含大量预设采样库,包括乐器、合成器、鼓组和声音效果等。此外,Kontakt 7还允许用户创建自己的采样库,以便根据自己的需要…