update geojson and the things which depend on it (fgb and contour)

This commit is contained in:
Michael Kirk 2022-08-31 14:11:53 -07:00 committed by Dustin Carlino
parent ac77aef42e
commit b54827d9e1
12 changed files with 210 additions and 61 deletions

215
Cargo.lock generated
View File

@ -156,6 +156,17 @@ version = "0.7.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8da52d66c7071e2e3fa2a1e5c6d088fec47b593032b254f5e980de8ea54454d6" checksum = "8da52d66c7071e2e3fa2a1e5c6d088fec47b593032b254f5e980de8ea54454d6"
[[package]]
name = "async-trait"
version = "0.1.57"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "76464446b8bc32758d7e88ee1a804d9914cd9b1cb264c029899680b0be29826f"
dependencies = [
"proc-macro2",
"quote",
"syn",
]
[[package]] [[package]]
name = "atk-sys" name = "atk-sys"
version = "0.15.1" version = "0.15.1"
@ -263,7 +274,7 @@ dependencies = [
"regex", "regex",
"rustc-hash", "rustc-hash",
"shlex 1.1.0", "shlex 1.1.0",
"which", "which 3.1.1",
] ]
[[package]] [[package]]
@ -589,9 +600,9 @@ dependencies = [
[[package]] [[package]]
name = "contour" name = "contour"
version = "0.4.0" version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "024c7de092fb673e050287f38a91aa0c587a23ebd0598f42f18b06320ef1c577" checksum = "da7807ce7a41dd08b640191a148e1745f37bcfef6ac69afabf742d9e7a4675a2"
dependencies = [ dependencies = [
"geojson", "geojson",
"lazy_static", "lazy_static",
@ -1122,6 +1133,15 @@ dependencies = [
"serde", "serde",
] ]
[[package]]
name = "fastrand"
version = "1.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a7a407cfaa3385c4ae6b23e84623d48c2798d06e3e6a1878f7f59f17b3f86499"
dependencies = [
"instant",
]
[[package]] [[package]]
name = "fifteen_min" name = "fifteen_min"
version = "0.1.0" version = "0.1.0"
@ -1149,11 +1169,13 @@ checksum = "398ea4fabe40b9b0d885340a2a991a44c8a645624075ad966d21f88688e2b69e"
[[package]] [[package]]
name = "flatbuffers" name = "flatbuffers"
version = "0.6.1" version = "2.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a788f068dd10687940565bf4b5480ee943176cbd114b12e811074bcf7c04e4b9" checksum = "86b428b715fdbdd1c364b84573b5fdc0f84f8e423661b9f398735278bc7f2b6a"
dependencies = [ dependencies = [
"bitflags",
"smallvec", "smallvec",
"thiserror",
] ]
[[package]] [[package]]
@ -1170,17 +1192,18 @@ dependencies = [
[[package]] [[package]]
name = "flatgeobuf" name = "flatgeobuf"
version = "0.5.0" version = "0.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7197bc0c1909c1dd5ffc0927b8635c1dcf0df4758446711371b93f23c9c5745c" checksum = "a5dccb135bb4f0cd6280cc35ca170cc7535468c917b92966681bd15a9fa44dbe"
dependencies = [ dependencies = [
"byteorder", "byteorder",
"bytes", "bytes",
"fallible-streaming-iterator", "fallible-streaming-iterator",
"flatbuffers", "flatbuffers",
"geozero", "geozero",
"http-range-client",
"log", "log",
"reqwest", "tempfile",
] ]
[[package]] [[package]]
@ -1523,12 +1546,13 @@ dependencies = [
[[package]] [[package]]
name = "geojson" name = "geojson"
version = "0.22.2" version = "0.23.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9c209e446d28d9142fb23127808bef2a1485924e7b42cd8c9407ea7cbfe09ccc" checksum = "f3c1147be22f66284de4387c43e4abab872e525a528f4d0af4e4e0f231895ea4"
dependencies = [ dependencies = [
"geo-types", "geo-types",
"serde", "serde",
"serde_derive",
"serde_json", "serde_json",
"thiserror", "thiserror",
] ]
@ -1556,13 +1580,17 @@ dependencies = [
[[package]] [[package]]
name = "geozero" name = "geozero"
version = "0.7.4" version = "0.9.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "917cdab5cb89696c58122acc2afea6def1b5a389a472d84fa742754d363b28f7" checksum = "a8850d78e5f2f803e3b201805bf41aea28eeff71bd0b56c3ff067e805d208b58"
dependencies = [ dependencies = [
"geo-types", "geo-types",
"geojson", "geojson",
"log",
"prost-build",
"serde_json",
"thiserror", "thiserror",
"wkt",
] ]
[[package]] [[package]]
@ -1871,6 +1899,20 @@ dependencies = [
"pin-project-lite", "pin-project-lite",
] ]
[[package]]
name = "http-range-client"
version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f9e031570fd8415fc4ded0cb8582b304be567b05e6d811474948629b4590d820"
dependencies = [
"async-trait",
"byteorder",
"bytes",
"log",
"reqwest",
"thiserror",
]
[[package]] [[package]]
name = "httparse" name = "httparse"
version = "1.7.1" version = "1.7.1"
@ -2210,9 +2252,9 @@ dependencies = [
[[package]] [[package]]
name = "log" name = "log"
version = "0.4.14" version = "0.4.17"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710" checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e"
dependencies = [ dependencies = [
"cfg-if", "cfg-if",
] ]
@ -2497,6 +2539,12 @@ dependencies = [
"windows-sys", "windows-sys",
] ]
[[package]]
name = "multimap"
version = "0.8.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a"
[[package]] [[package]]
name = "nb" name = "nb"
version = "0.1.3" version = "0.1.3"
@ -3153,11 +3201,66 @@ checksum = "bc881b2c22681370c6a780e47af9840ef841837bc98118431d4e1868bd0c1086"
[[package]] [[package]]
name = "proc-macro2" name = "proc-macro2"
version = "1.0.27" version = "1.0.43"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f0d8caf72986c1a598726adc988bb5984792ef84f5ee5aa50209145ee8077038" checksum = "0a2ca2c61bc9f3d74d2886294ab7b9853abd9c1ad903a3ac7815c58989bb7bab"
dependencies = [ dependencies = [
"unicode-xid", "unicode-ident",
]
[[package]]
name = "prost"
version = "0.10.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "71adf41db68aa0daaefc69bb30bcd68ded9b9abaad5d1fbb6304c4fb390e083e"
dependencies = [
"bytes",
"prost-derive",
]
[[package]]
name = "prost-build"
version = "0.10.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8ae5a4388762d5815a9fc0dea33c56b021cdc8dde0c55e0c9ca57197254b0cab"
dependencies = [
"bytes",
"cfg-if",
"cmake",
"heck 0.4.0",
"itertools 0.10.1",
"lazy_static",
"log",
"multimap",
"petgraph",
"prost",
"prost-types",
"regex",
"tempfile",
"which 4.3.0",
]
[[package]]
name = "prost-derive"
version = "0.10.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7b670f45da57fb8542ebdbb6105a925fe571b67f9e7ed9f47a06a84e72b4e7cc"
dependencies = [
"anyhow",
"itertools 0.10.1",
"proc-macro2",
"quote",
"syn",
]
[[package]]
name = "prost-types"
version = "0.10.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2d0a014229361011dc8e69c8a1ec6c2e8d0f2af7c91e3ea3f5b2170298461e68"
dependencies = [
"bytes",
"prost",
] ]
[[package]] [[package]]
@ -3311,6 +3414,15 @@ version = "0.6.26"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "49b3de9ec5dc0a3417da371aab17d729997c15010e7fd24ff707773a33bddb64" checksum = "49b3de9ec5dc0a3417da371aab17d729997c15010e7fd24ff707773a33bddb64"
[[package]]
name = "remove_dir_all"
version = "0.5.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7"
dependencies = [
"winapi",
]
[[package]] [[package]]
name = "reqwest" name = "reqwest"
version = "0.11.3" version = "0.11.3"
@ -3650,11 +3762,11 @@ dependencies = [
[[package]] [[package]]
name = "serde_json" name = "serde_json"
version = "1.0.64" version = "1.0.85"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "799e97dc9fdae36a5c8b8f2cae9ce2ee9fdce2058c57a93e6099d919fd982f79" checksum = "e55a28e3aaef9d5ce0506d0a14dbba8054ddc7e499ef522dd8b26859ec9d4a44"
dependencies = [ dependencies = [
"itoa 0.4.7", "itoa 1.0.2",
"ryu", "ryu",
"serde", "serde",
] ]
@ -3942,13 +4054,13 @@ dependencies = [
[[package]] [[package]]
name = "syn" name = "syn"
version = "1.0.73" version = "1.0.99"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f71489ff30030d2ae598524f61326b902466f72a0fb1a8564c001cc63425bcc7" checksum = "58dbef6ec655055e20b86b15a8cc6d439cca19b667537ac6a1369572d151ab13"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"unicode-xid", "unicode-ident",
] ]
[[package]] [[package]]
@ -3992,6 +4104,20 @@ dependencies = [
"typenum", "typenum",
] ]
[[package]]
name = "tempfile"
version = "3.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5cdb1ef4eaeeaddc8fbd371e5017057064af0911902ef36b39801f67cc6d79e4"
dependencies = [
"cfg-if",
"fastrand",
"libc",
"redox_syscall",
"remove_dir_all",
"winapi",
]
[[package]] [[package]]
name = "termcolor" name = "termcolor"
version = "1.1.2" version = "1.1.2"
@ -4040,18 +4166,18 @@ dependencies = [
[[package]] [[package]]
name = "thiserror" name = "thiserror"
version = "1.0.25" version = "1.0.33"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fa6f76457f59514c7eeb4e59d891395fab0b2fd1d40723ae737d64153392e9c6" checksum = "3d0a539a918745651435ac7db7a18761589a94cd7e94cd56999f828bf73c8a57"
dependencies = [ dependencies = [
"thiserror-impl", "thiserror-impl",
] ]
[[package]] [[package]]
name = "thiserror-impl" name = "thiserror-impl"
version = "1.0.25" version = "1.0.33"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8a36768c0fbf1bb15eca10defa29526bda730a2376c2ab4393ccfa16fb1a318d" checksum = "c251e90f708e16c49a16f4917dc2131e75222b72edfa9cb7f7c58ae56aae0c09"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
@ -4283,6 +4409,12 @@ version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "07547e3ee45e28326cc23faac56d44f58f16ab23e413db526debce3b0bfd2742" checksum = "07547e3ee45e28326cc23faac56d44f58f16ab23e413db526debce3b0bfd2742"
[[package]]
name = "unicode-ident"
version = "1.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c4f5b37a154999a8f3f98cc23a628d850e154479cd94decf3414696e12e31aaf"
[[package]] [[package]]
name = "unicode-normalization" name = "unicode-normalization"
version = "0.1.19" version = "0.1.19"
@ -4316,12 +4448,6 @@ version = "0.1.8"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3" checksum = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3"
[[package]]
name = "unicode-xid"
version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3"
[[package]] [[package]]
name = "untrusted" name = "untrusted"
version = "0.7.1" version = "0.7.1"
@ -4667,6 +4793,17 @@ dependencies = [
"libc", "libc",
] ]
[[package]]
name = "which"
version = "4.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1c831fbbee9e129a8cf93e7747a82da9d95ba8e16621cae60ec2cdc849bacb7b"
dependencies = [
"either",
"libc",
"once_cell",
]
[[package]] [[package]]
name = "widestring" name = "widestring"
version = "0.4.3" version = "0.4.3"
@ -4896,6 +5033,18 @@ dependencies = [
"winapi", "winapi",
] ]
[[package]]
name = "wkt"
version = "0.10.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c3c2252781f8927974e8ba6a67c965a759a2b88ea2b1825f6862426bbb1c8f41"
dependencies = [
"geo-types",
"log",
"num-traits",
"thiserror",
]
[[package]] [[package]]
name = "x11-clipboard" name = "x11-clipboard"
version = "0.3.3" version = "0.3.3"

View File

@ -14,8 +14,8 @@ wasm = ["getrandom/js", "map_gui/wasm", "wasm-bindgen", "widgetry/wasm-backend"]
[dependencies] [dependencies]
abstio = { path = "../../abstio" } abstio = { path = "../../abstio" }
abstutil = { path = "../../abstutil" } abstutil = { path = "../../abstutil" }
contour = "0.4.0" contour = "0.5.0"
geojson = { version = "0.22.2", features = ["geo-types"] } geojson = { version = "0.23.0", features = ["geo-types"] }
geom = { path = "../../geom" } geom = { path = "../../geom" }
getrandom = { version = "0.2.3", optional = true } getrandom = { version = "0.2.3", optional = true }
log = "0.4" log = "0.4"

View File

@ -21,14 +21,14 @@ abstutil = { path = "../../abstutil" }
anyhow = "1.0.38" anyhow = "1.0.38"
collisions = { path = "../../collisions" } collisions = { path = "../../collisions" }
colorous = "1.0.3" colorous = "1.0.3"
contour = "0.4.0" contour = "0.5.0"
csv = "1.1.4" csv = "1.1.4"
downcast-rs = "1.2.0" downcast-rs = "1.2.0"
enumset = "1.0.3" enumset = "1.0.3"
fs-err = "2.6.0" fs-err = "2.6.0"
futures-channel = { version = "0.3.12"} futures-channel = { version = "0.3.12"}
geo = "0.22.0" geo = "0.22.0"
geojson = { version = "0.22.2", features = ["geo-types"] } geojson = { version = "0.23.0", features = ["geo-types"] }
geom = { path = "../../geom" } geom = { path = "../../geom" }
getrandom = { version = "0.2.3", optional = true } getrandom = { version = "0.2.3", optional = true }
instant = "0.1.7" instant = "0.1.7"

View File

@ -15,12 +15,12 @@ wasm = ["getrandom/js", "map_gui/wasm", "wasm-bindgen", "widgetry/wasm-backend"]
abstio = { path = "../../abstio" } abstio = { path = "../../abstio" }
abstutil = { path = "../../abstutil" } abstutil = { path = "../../abstutil" }
anyhow = "1.0.38" anyhow = "1.0.38"
contour = "0.4.0" contour = "0.5.0"
csv = "1.1.4" csv = "1.1.4"
flate2 = "1.0.20" flate2 = "1.0.20"
futures-channel = { version = "0.3.12"} futures-channel = { version = "0.3.12"}
geo = "0.22.0" geo = "0.22.0"
geojson = { version = "0.22.2", features = ["geo-types"] } geojson = { version = "0.23.0", features = ["geo-types"] }
geom = { path = "../../geom" } geom = { path = "../../geom" }
getrandom = { version = "0.2.3", optional = true } getrandom = { version = "0.2.3", optional = true }
lazy_static = "1.4.0" lazy_static = "1.4.0"

View File

@ -11,7 +11,7 @@ anyhow = "1.0.38"
earcutr = "0.1.1" earcutr = "0.1.1"
fs-err = "2.6.0" fs-err = "2.6.0"
geo = "0.22.0" geo = "0.22.0"
geojson = { version = "0.22.2", features = ["geo-types"] } geojson = { version = "0.23.0", features = ["geo-types"] }
histogram = "0.6.9" histogram = "0.6.9"
instant = "0.1.7" instant = "0.1.7"
ordered-float = { version = "2.4.0", features=["serde"] } ordered-float = { version = "2.4.0", features=["serde"] }

View File

@ -8,7 +8,7 @@ edition = "2021"
abstio = { path = "../abstio" } abstio = { path = "../abstio" }
abstutil = { path = "../abstutil" } abstutil = { path = "../abstutil" }
anyhow = "1.0.38" anyhow = "1.0.38"
geojson = { version = "0.22.2", features = ["geo-types"] } geojson = { version = "0.23.0", features = ["geo-types"] }
geom = { path = "../geom" } geom = { path = "../geom" }
hyper = { version = "0.14.19", features = ["full"] } hyper = { version = "0.14.19", features = ["full"] }
lazy_static = "1.4.0" lazy_static = "1.4.0"

View File

@ -17,7 +17,7 @@ collisions = { path = "../collisions" }
convert_osm = { path = "../convert_osm" } convert_osm = { path = "../convert_osm" }
csv = "1.1.4" csv = "1.1.4"
geo = "0.22.0" geo = "0.22.0"
geojson = { version = "0.22.2", features = ["geo-types"] } geojson = { version = "0.23.0", features = ["geo-types"] }
geom = { path = "../geom" } geom = { path = "../geom" }
gdal = { version = "0.8.0", optional = true, features = ["bindgen"] } gdal = { version = "0.8.0", optional = true, features = ["bindgen"] }
kml = { path = "../kml" } kml = { path = "../kml" }

View File

@ -18,10 +18,10 @@ anyhow = "1.0.38"
built = { version = "0.5.0", optional = true, features=["chrono"] } built = { version = "0.5.0", optional = true, features=["chrono"] }
chrono = "0.4.15" chrono = "0.4.15"
colorous = "1.0.3" colorous = "1.0.3"
contour = "0.4.0" contour = "0.5.0"
flate2 = "1.0.20" flate2 = "1.0.20"
futures-channel = { version = "0.3.12"} futures-channel = { version = "0.3.12"}
geojson = { version = "0.22.2", features = ["geo-types"] } geojson = { version = "0.23.0", features = ["geo-types"] }
geom = { path = "../geom" } geom = { path = "../geom" }
instant = "0.1.7" instant = "0.1.7"
lazy_static = "1.4.0" lazy_static = "1.4.0"

View File

@ -10,7 +10,7 @@ abstutil = { path = "../abstutil" }
anyhow = "1.0.38" anyhow = "1.0.38"
enumset = { version = "1.0.3", features=["serde"] } enumset = { version = "1.0.3", features=["serde"] }
fast_paths = { git = "https://github.com/easbar/fast_paths", rev = "9a954e02f01ed16939d3c4a2dc9dd3fb4f6c03ee"} fast_paths = { git = "https://github.com/easbar/fast_paths", rev = "9a954e02f01ed16939d3c4a2dc9dd3fb4f6c03ee"}
geojson = { version = "0.22.2", features = ["geo-types"] } geojson = { version = "0.23.0", features = ["geo-types"] }
geom = { path = "../geom" } geom = { path = "../geom" }
kml = { path = "../kml" } kml = { path = "../kml" }
log = "0.4.14" log = "0.4.14"

View File

@ -8,12 +8,12 @@ edition = "2021"
abstio = { path = "../abstio" } abstio = { path = "../abstio" }
abstutil = { path = "../abstutil" } abstutil = { path = "../abstutil" }
anyhow = "1.0.38" anyhow = "1.0.38"
flatgeobuf = { version = "0.5" } flatgeobuf = { version = "0.8.0" }
futures = "0.3.12" futures = "0.3.12"
geo = "0.22.0" geo = "0.22.0"
geojson = { version = "0.22.2", features = ["geo-types"] } geojson = { version = "0.23.0", features = ["geo-types"] }
geom = { path = "../geom" } geom = { path = "../geom" }
geozero = "0.7" geozero = "0.9.5"
log = "0.4.14" log = "0.4.14"
map_model = { path = "../map_model" } map_model = { path = "../map_model" }
rand = "0.8.3" rand = "0.8.3"

View File

@ -19,20 +19,20 @@ impl CensusArea {
(projected.x(), projected.y()).into() (projected.x(), projected.y()).into()
}); });
// See the import handbook for how to prepare this file.
let mut fgb =
HttpFgbReader::open("https://abstreet.s3.amazonaws.com/population_areas.fgb").await?;
let bounding_rect = geo_map_area let bounding_rect = geo_map_area
.bounding_rect() .bounding_rect()
.ok_or_else(|| anyhow!("missing bound rect"))?; .ok_or_else(|| anyhow!("missing bound rect"))?;
fgb.select_bbox(
bounding_rect.min().x, // See the import handbook for how to prepare this file.
bounding_rect.min().y, let mut fgb = HttpFgbReader::open("https://abstreet.s3.amazonaws.com/population_areas.fgb")
bounding_rect.max().x, .await?
bounding_rect.max().y, .select_bbox(
) bounding_rect.min().x,
.await?; bounding_rect.min().y,
bounding_rect.max().x,
bounding_rect.max().y,
)
.await?;
let mut results = vec![]; let mut results = vec![];
while let Some(feature) = fgb.next().await? { while let Some(feature) = fgb.next().await? {
@ -53,7 +53,7 @@ impl CensusArea {
}; };
let mut geo = GeoWriter::new(); let mut geo = GeoWriter::new();
geometry.process(&mut geo, flatgeobuf::GeometryType::MultiPolygon)?; geometry.process(&mut geo, flatgeobuf::GeometryType::MultiPolygon)?;
if let geo::Geometry::MultiPolygon(multi_poly) = geo.geometry() { if let Some(geo::Geometry::MultiPolygon(multi_poly)) = geo.take_geometry() {
let geo_polygon = multi_poly let geo_polygon = multi_poly
.0 .0
.first() .first()

View File

@ -21,7 +21,7 @@ flate2 = "1.0.20"
fs-err = "2.6.0" fs-err = "2.6.0"
futures = { version = "0.3.12" } futures = { version = "0.3.12" }
futures-channel = { version = "0.3.12"} futures-channel = { version = "0.3.12"}
geojson = { version = "0.22.2", features = ["geo-types"] } geojson = { version = "0.23.0", features = ["geo-types"] }
geom = { path = "../geom" } geom = { path = "../geom" }
glow = "0.11.2" glow = "0.11.2"
glutin = { git = "https://github.com/rust-windowing/glutin", optional = true } glutin = { git = "https://github.com/rust-windowing/glutin", optional = true }