Topojson:v0 和 v1 之间的差异列表?

2023-12-09

我正在合并代码,依赖 v0 的代码在 v1 上中断。

topojson.v0.min.js 和 topojson.v1.min.js 之间的语法有何变化?*

--

可疑语法列表:

  • V0 > V1
  • .对象 > .特征
  • .geometries > .features(在某些情况下还是总是?)
  • *.坐标 > *.几何.坐标
  • others ?

1.0.0 主要版本(请参阅发行说明)用 topojson.feature 替换了 topojson.object 函数,以获得更好的 GeoJSON 兼容性。

在以前版本的 TopoJSON 中,topojson.object 返回一个几何对象(可能是一个几何集合),与 TopoJSON 中几何对象的表示方式一致Topology。然而,与 GeoJSON 几何图形不同,TopoJSON 几何图形更像是特征,并且可以具有 id 和属性;同样,空几何图形被表示为空类型。

从 1.0.0 版本开始,topojson.feature替换 topojson.object,返回一个Feature或FeatureCollection,与转换为TopoJSON之前几何图形最初在GeoJSON中的表示方式一致。 (与在 GeoJSON 中一样,空几何图形表示为具有空几何对象的要素。)如中所述#37,这提供了与GeoJSON 规范以及处理 GeoJSON 的库。

要升级代码,您可以将 topojson.object 替换为 topojson.feature。然而,必须更改假设 topojson.object 返回几何图形的代码以处理该要素(或要素集合)现在由 topojson.feature 返回。例如,在 1.0 之前,如果您说:

svg.selectAll("path")
    .data(topojson.object(topology, topology.objects.states).geometries)
  .enter().append("path")
    .attr("d", path);

在1.0及以后版本,对应的代码为:

svg.selectAll("path")
    .data(topojson.feature(topology, topology.objects.states).features)
  .enter().append("path")
    .attr("d", path);

同样,如果您在 1.0 之前迭代点几何数组,您可能会说:

topojson.object(topology, topology.objects.points).geometries.forEach(function(point) {
  console.log("x, y", point.coordinates[0], point.coordinates[1]);
});

在1.0及以后版本,对应的代码为:

topojson.feature(topology, topology.objects.points).features.forEach(function(point) {
  console.log("x, y", point.geometry.coordinates[0], point.geometry.coordinates[1]);
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Topojson:v0 和 v1 之间的差异列表? 的相关文章

随机推荐

  • Ionic 隐藏导航栏而不是按钮

    我正在尝试寻找一种可能的方法来隐藏离子ion nav bar不隐藏ion nav barbuttons 我努力了 hide nav bar true 但它也隐藏了按钮 我已经搜索过并且也参考过this 但没有解决我的问题 问候 你只需要指定
  • 用于编辑源代码的 Docker 安装卷

    我的 Windows 系统上有 docker 设置 该应用程序的源代码位于C Application source地点 我希望这些信息在 docker 容器中可用 以便在开发过程中轻松更改代码 而无需重建映像 这就是我尝试过的 docker
  • 玩笑测试为 eventemitter 对象发出事件(express)

    试图从中获得灵感玩笑测试为 eventemitter 对象发出事件 http 没有解决我的痛苦express 假设有以下nodejs代码 server js const express require express const app e
  • 迁移到 Firebase Cloud Messaging:导入现有 Google 项目会对项目产生什么影响?

    In 设置 FCM它说 如果没有 请在 Firebase 控制台中创建一个 Firebase 项目 已经有一个了 如果您已经有一个现有的 Google 项目 与您的移动应用程序关联 单击导入 Google 项目 否则 单击 创建新项目 我有
  • 如何在 Spring Security 登录表单中进行额外验证?

    我想知道如何在 Spring Security 处理登录表单之前对其进行额外的验证 我正在考虑一些 LoginController LoginForm bean 但我不知道如何将它们组合在一起 如何配置它来工作 下面是我的 愿景 我搜索了一
  • 错误:rails 中的“不兼容的库版本”sqlite3-1.3.11

    我在 Ubuntu 系统 16 04 上工作 我的问题是每当我设置任何 Rails 项目并尝试运行rails s然后我收到 sqlite3 的 库版本不兼容 错误 如下所示 home jiggs rvm gems ruby 2 3 1 al
  • 字节中的位数是否等于 char 类型中的位数?

    C 标准有强制要求吗 是否存在一个字节中的位数不等于类型中的位数的平台char Yes Both are equal to CHAR BIT C标准定义CHAR BIT as 不是位字段 字节 的最小对象的位数 c99 明确表示 一个字节包
  • 如何获取Windows中当前交互式用户会话的数量?

    我正在编写一个 Windows 服务 它需要知道当前是否有任何用户登录在计算机上 到目前为止我已经尝试过Win32 LogonSession WMI 以及LsaEnumerateLogonSessions LsaGetLogonSessio
  • 在Python中通过strptime解析不带前导零的小时

    假设您有以下格式的时间 a 800 0 830 0 900 0 930 0 1000 0 1030 0 问题是缺少小时的前导零 例如00 30表示为30 08 00表示为800 and 00 00表示为2400 是否可以将此数据解析为tim
  • 如何计算并仅打印重复项?

    我知道如何遍历整个数组 但我只需要重复出现的次数 我处于初学者水平 所以只是循环和数组的基本使用 int array 12 23 22 0 43 545 4 55 43 12 0 999 87 for int i 0 i lt array
  • 了解LDR和STR吗?

    我正在使用 ARMSim 我猜它是一个 ARM 模拟器 并且我有这个演示程序 它基本上读取一个文本文件并打印文本文件中的整数 仅第一行 Start Open file for input LDR R0 InputFileName MOV R
  • 显示“android-feedback.com”库的对话框

    我正在按照这里给出的教程进行操作http www android feedback com library用于发送反馈 但我无法显示对话框onOptionsItemSelected Override public boolean onCre
  • 获取 Google Apps 脚本来授权 Fusion Table API

    我正在构建一个数据库 希望将其托管在 Fusion Table 中 并且正在开发一些用于与 Fusion API 交互的测试函数 我正在使用 Google Apps 脚本 并且严重依赖此代码的其他来源 我花了一天的大部分时间研究这个问题 但
  • C# 字节[]加密

    我有一个 Byte 字段 它是我需要加密的文件内容 没有什么特别或奇特的 只是足以确保下一个得到它的人不费吹灰之力就无法轻松解码它 我会使用 Net Framework 4 0 附带的加密 但我绝对不需要使文件比实际更大 我想过只是简单地反
  • 如何在 Windows Phone 8 中以编程方式锁定屏幕?

    我们可以使用下面的代码来防止屏幕锁定 PhoneApplicationService Current ApplicationIdleMode IdleDetectionMode Disabled and PhoneApplicationSe
  • Android 中 Tab 更改时更改菜单

    我的应用程序中有两个选项卡 我希望菜单根据选项卡进行更改 这是我所做的 TabHost tabHost tabHost getTabHost TabSpec photospec tabHost newTabSpec Photos photo
  • 无法在 XAML (Xamarin Forms) 中绑定静态属性

    我有一个静态类 Evp 它位于Models文件夹 它有一个Name字符串 带有 getter 和 setter 以及PropertyChangedEventHandler及其代码 public static event PropertyCh
  • Codeigniter URL 重写 .htaccess 在 CentOS 上不起作用

    我在文档根目录中创建了一个 htaccess 文件 var www html 重写 Codeigniter 的 URL 从所有页面的 URL 中删除 index php 例如更改网址自 http myhost index php contr
  • Spring MVC - 为什么不能一起使用@RequestBody和@RequestParam

    使用带有 Post 请求和 Content Type application x www form urlencoded 的 HTTP 开发客户端 1 仅 RequestBody 网址 本地主机 8080 SpringMVC 欢迎正文 名称
  • Topojson:v0 和 v1 之间的差异列表?

    我正在合并代码 依赖 v0 的代码在 v1 上中断 topojson v0 min js 和 topojson v1 min js 之间的语法有何变化 可疑语法列表 V0 gt V1 对象 gt 特征 geometries gt featu