[WIP] Vancouver polys demo #606
Annotations
10 warnings
../../../.julia/packages/Documenter/qoyeC/src/utilities/utilities.jl#L46
duplicate docs found for 'GeometryOps.reproject' in src/api.md:59-61
```@autodocs
Modules = [GeometryOps]
```
|
../../../.julia/packages/Documenter/qoyeC/src/utilities/utilities.jl#L46
failed to run `@example` block in src/howto/unary_union.md:28-31
```@example unary
fixed_geoms = GO.buffer(geoms, 0)
@time GO.fix(GI.MultiPolygon(fixed_geoms); corrections = (GO.UnionIntersectingPolygons(),))
```
exception =
BoundsError: attempt to access 221-element Vector{GeometryOps.PolyNode{Float64}} at index [0]
Stacktrace:
[1] getindex
@ ./essentials.jl:13 [inlined]
[2] _flag_ent_exit!(::Type{Float64}, ::GeoInterface.LinearRingTrait, poly::GeoInterface.Wrappers.LinearRing{false, false, Vector{Tuple{Float64, Float64}}, Nothing, Nothing}, pt_list::Vector{GeometryOps.PolyNode{Float64}}, delay_cross_f::typeof(GeometryOps._diff_delay_cross_f), delay_bounce_f::Base.Fix2{typeof(GeometryOps._diff_delay_bounce_f), Bool}; exact::GeometryOps._True)
@ GeometryOps ~/.julia/packages/GeometryOps/j9fKa/src/methods/clipping/clipping_processor.jl:463
[3] _flag_ent_exit!
@ ~/.julia/packages/GeometryOps/j9fKa/src/methods/clipping/clipping_processor.jl:448 [inlined]
[4] _build_ab_list(::Type{Float64}, poly_a::GeoInterface.Wrappers.LinearRing{false, false, Vector{Tuple{Float64, Float64}}, Nothing, Nothing}, poly_b::GeoInterface.Wrappers.LinearRing{false, false, Vector{Tuple{Float64, Float64}}, Nothing, Nothing}, delay_cross_f::typeof(GeometryOps._diff_delay_cross_f), delay_bounce_f::typeof(GeometryOps._diff_delay_bounce_f); exact::GeometryOps._True)
@ GeometryOps ~/.julia/packages/GeometryOps/j9fKa/src/methods/clipping/clipping_processor.jl:61
[5] _build_ab_list
@ ~/.julia/packages/GeometryOps/j9fKa/src/methods/clipping/clipping_processor.jl:51 [inlined]
[6] _difference(::TraitTarget{GeoInterface.PolygonTrait}, ::Type{Float64}, ::GeoInterface.PolygonTrait, poly_a::GeoInterface.Wrappers.Polygon{false, false, StaticArraysCore.SVector{1, GeoInterface.Wrappers.LinearRing{false, false, Vector{Tuple{Float64, Float64}}, Nothing, Nothing}}, Nothing, Nothing}, ::GeoInterface.PolygonTrait, poly_b::GeoInterface.Wrappers.Polygon{false, false, Vector{GeoInterface.Wrappers.LinearRing{false, false, Vector{Tuple{Float64, Float64}}, Nothing, Nothing}}, Nothing, Nothing}; exact::GeometryOps._True, kwargs::@kwargs{})
@ GeometryOps ~/.julia/packages/GeometryOps/j9fKa/src/methods/clipping/difference.jl:57
[7] _difference
@ ~/.julia/packages/GeometryOps/j9fKa/src/methods/clipping/difference.jl:47 [inlined]
[8] #difference#161
@ ~/.julia/packages/GeometryOps/j9fKa/src/methods/clipping/difference.jl:38 [inlined]
[9] difference (repeats 2 times)
@ ~/.julia/packages/GeometryOps/j9fKa/src/methods/clipping/difference.jl:35 [inlined]
[10] _add_union_holes_contained_polys!(polys::Vector{GeoInterface.Wrappers.Polygon{false, false, Vector{GeoInterface.Wrappers.LinearRing{false, false, Vector{Tuple{Float64, Float64}}, Nothing, Nothing}}, Nothing, Nothing}}, interior_poly::GeoInterface.Wrappers.Polygon{false, false, Vector{GeoInterface.Wrappers.LinearRing{false, false, Vector{Tuple{Float64, Float64}}, Nothing, Nothing}}, Nothing, Nothing}, exterior_poly::GeoInterface.Wrappers.Polygon{false, false, Vector{GeoInterface.Wrappers.LinearRing{false, false, Vector{Tuple{Float64, Float64}}, Nothing, Nothing}}, Nothing, Nothing}; exact::GeometryOps._True)
@ GeometryOps ~/.julia/packages/GeometryOps/j9fKa/src/methods/clipping/union.jl:185
[11] _add_union_holes_contained_polys!
@ ~/.julia/packages/GeometryOps/j9fKa/src/methods/clipping/union.jl:169 [inlined]
[12] _add_union_holes!(polys::Vector{GeoInterface.Wrappers.Polygon{false, false, Vector{GeoInterface.Wrappers.LinearRing{false, false, Vector{Tuple{Float64, Float64}}, Nothing, Nothing}}, Nothing, Nothing}}, a_in_b::Bool, b_in_a::Bool, poly_a::GeoInterface.Wrappers.Polygon{false, false, Vector{GeoInterface.Wrappers.LinearRing{false, false, Vector{Tuple{Float64, Float64}}, Nothing, Nothing}}, Nothing, Nothing}, poly_b::GeoInterface.Wrappers.Polygon{false, false, Vector{GeoInterface.Wrappers.LinearRing{false, false, Vector{Tuple{Float64, Float64}}, Nothing, Nothi
|
../../../.julia/packages/Documenter/qoyeC/src/utilities/utilities.jl#L46
failed to run `@example` block in src/howto/unary_union.md:33-38
```@example unary
@time final_multipoly = reduce(
(x, y) -> GO.union(x, y; target = GI.MultiPolygonTrait, fix = GO.UnionIntersectingPolygons()),
GO.fix(geoms)
)
```
exception =
BoundsError: attempt to access 71-element Vector{GeometryOps.PolyNode{Float64}} at index [0]
Stacktrace:
[1] getindex
@ ./essentials.jl:13 [inlined]
[2] _flag_ent_exit!(::Type{Float64}, ::GeoInterface.LinearRingTrait, poly::GeoInterface.Wrappers.LinearRing{false, false, Vector{Tuple{Float64, Float64}}, Nothing, Nothing}, pt_list::Vector{GeometryOps.PolyNode{Float64}}, delay_cross_f::typeof(GeometryOps._union_delay_cross_f), delay_bounce_f::Base.Fix2{typeof(GeometryOps._union_delay_bounce_f), Bool}; exact::GeometryOps._True)
@ GeometryOps ~/.julia/packages/GeometryOps/j9fKa/src/methods/clipping/clipping_processor.jl:463
[3] _flag_ent_exit!
@ ~/.julia/packages/GeometryOps/j9fKa/src/methods/clipping/clipping_processor.jl:448 [inlined]
[4] _build_ab_list(::Type{Float64}, poly_a::GeoInterface.Wrappers.LinearRing{false, false, Vector{Tuple{Float64, Float64}}, Nothing, Nothing}, poly_b::GeoInterface.Wrappers.LinearRing{false, false, Vector{Tuple{Float64, Float64}}, Nothing, Nothing}, delay_cross_f::typeof(GeometryOps._union_delay_cross_f), delay_bounce_f::typeof(GeometryOps._union_delay_bounce_f); exact::GeometryOps._True)
@ GeometryOps ~/.julia/packages/GeometryOps/j9fKa/src/methods/clipping/clipping_processor.jl:61
[5] _build_ab_list
@ ~/.julia/packages/GeometryOps/j9fKa/src/methods/clipping/clipping_processor.jl:51 [inlined]
[6] _union(::TraitTarget{GeoInterface.PolygonTrait}, ::Type{Float64}, ::GeoInterface.PolygonTrait, poly_a::GeoInterface.Wrappers.Polygon{false, false, Vector{GeoInterface.Wrappers.LinearRing{false, false, Vector{Tuple{Float64, Float64}}, Nothing, Nothing}}, Nothing, Nothing}, ::GeoInterface.PolygonTrait, poly_b::GeoInterface.Wrappers.Polygon{false, false, Vector{GeoInterface.Wrappers.LinearRing{false, false, Vector{Tuple{Float64, Float64}}, Nothing, Nothing}}, Nothing, Nothing}; exact::GeometryOps._True, kwargs::@kwargs{})
@ GeometryOps ~/.julia/packages/GeometryOps/j9fKa/src/methods/clipping/union.jl:57
[7] _union
@ ~/.julia/packages/GeometryOps/j9fKa/src/methods/clipping/union.jl:47 [inlined]
[8] #union#168
@ ~/.julia/packages/GeometryOps/j9fKa/src/methods/clipping/union.jl:38 [inlined]
[9] union
@ ~/.julia/packages/GeometryOps/j9fKa/src/methods/clipping/union.jl:35 [inlined]
[10] _union(target::TraitTarget{GeoInterface.PolygonTrait}, ::Type{Float64}, ::GeoInterface.PolygonTrait, poly_a::GeoInterface.Wrappers.Polygon{false, false, Vector{GeoInterface.Wrappers.LinearRing{false, false, Vector{Tuple{Float64, Float64}}, Nothing, Nothing}}, Nothing, Nothing}, ::GeoInterface.MultiPolygonTrait, multipoly_b::GeoInterface.Wrappers.MultiPolygon{false, false, Vector{GeoInterface.Wrappers.Polygon{false, false, Vector{GeoInterface.Wrappers.LinearRing{false, false, Vector{Tuple{Float64, Float64}}, Nothing, Nothing}}, Nothing, Nothing}}, Nothing, Nothing}; fix_multipoly::Nothing, kwargs::@kwargs{exact::GeometryOps._True})
@ GeometryOps ~/.julia/packages/GeometryOps/j9fKa/src/methods/clipping/union.jl:238
[11] union(geom_a::GeoInterface.Wrappers.Polygon{false, false, Vector{GeoInterface.Wrappers.LinearRing{false, false, Vector{Tuple{Float64, Float64}}, Nothing, Nothing}}, Nothing, Nothing}, geom_b::GeoInterface.Wrappers.MultiPolygon{false, false, Vector{GeoInterface.Wrappers.Polygon{false, false, Vector{GeoInterface.Wrappers.LinearRing{false, false, Vector{Tuple{Float64, Float64}}, Nothing, Nothing}}, Nothing, Nothing}}, Nothing, Nothing}, ::Type{Float64}; target::TraitTarget{GeoInterface.PolygonTrait}, kwargs::@kwargs{fix_multipoly::Nothing})
@ GeometryOps ~/.julia/packages/GeometryOps/j9fKa/src/methods/clipping/union.jl:38
[12] union
@ ~/.julia/packages/GeometryOps/j9fKa/src/methods/clipping/unio
|
../../../.julia/packages/Documenter/qoyeC/src/utilities/utilities.jl#L46
failed to run `@example` block in src/howto/unary_union.md:40-45
```@example unary
@time final_multipoly = reduce(
(x, y) -> GO.union(x, y; target = GI.MultiPolygonTrait, fix = GO.UnionIntersectingPolygons()),
fixed_geoms
)
```
exception =
AssertionError: Clipping tracing hit every point - clipping error. Please open an issue with polygons: [[[891106.625, 639648.8750000037], [891103.0629999993, 639693.0000000084], [891110.8749999995, 639725.8129999982], [891171.9379999998, 639788.3750000019], [891244.5000000002, 639837.4380000001], [891342.8749999995, 639873.5000000019], [891293.813, 639909.5629999992], [891218.6879999987, 639954.8130000001], [891176.8750000002, 639993.625], [891169.6879999992, 640091.063000002], [891200.2499999991, 640176.9379999992], [891274.1879999994, 640286.0629999964], [891362.0000000007, 640373.6879999992], [891438.8749999993, 640404.4999999972], [891496.0000000002, 640413.1250000019], [891567.25, 640406.1879999992], [891628.5000000009, 640376.563000001], [891768.3750000005, 640352.7499999944], [891935.0629999988, 640363.8750000019], [891994.5629999989, 640363.3750000028], [892129.6879999997, 640349.7500000028], [892269.5629999998, 640325.8750000056], [892369.4379999992, 640325.7500000009], [892476.8129999997, 640341.3750000009], [892558.5629999989, 640371.9999999981], [892630.3129999992, 640390.0630000001], [892725.75, 640403.1879999992], [892859.6879999996, 640430.688000002], [892981.8130000001, 640463.6880000001], [893108.0629999992, 640470.5000000009], [893234.2499999995, 640477.1880000001], [893339.9379999992, 640470.8749999991], [893348.9379999993, 640398.3750000037], [893434.6249999991, 640299.5629999964], [893466.3750000002, 640235.1880000001], [893492.6249999992, 640137.8750000019], [893548.6879999986, 639992.1879999964], [893561.6250000005, 639940.625], [893546.4379999989, 639800.9999999944], [893525.1879999992, 639702.625], [893510.0629999986, 639672.1879999973], [893512.7500000005, 639583.9379999992], [893583.8749999992, 639469.8130000001], [893651.1879999997, 639399.875], [893736.7500000005, 639303.0629999982], [893788.6879999996, 639182.6879999992], [893824.3749999992, 639083.0000000019], [893876.5629999985, 638977.625], [893903.4999999995, 638903.3750000019], [893904.1249999997, 638834.2500000019], [893891.8129999994, 638717.4379999973], [893871.7499999992, 638573.0629999964], [893876.7499999994, 638483.6880000038], [893873.749999999, 638385.6249999916], [893862.1879999998, 638354.0630000057], [893844.3749999998, 638306.6250000028], [893828.0629999987, 638223.188000001], [893832.1250000002, 638193.0000000009], [893808.3750000009, 638185.9380000001], [893755.125, 638149.0000000028], [893689.1879999998, 638071.6879999982], [893654.1249999994, 637998.9999999991], [893601.1249999995, 637965.1250000065], [893537.1250000005, 637966.7500000019], [893499.438, 637980.3129999964], [893408.3749999997, 638043.2499999916], [893314.4379999994, 638086.2500000009], [893205.8750000003, 638109.688000001], [893117.9999999993, 638111.375], [892998.5000000007, 638074.3130000038], [892802.5000000006, 638017.3130000038], [892640.3749999993, 637990.9999999935], [892562.3749999999, 638001.188000001], [892475.4379999989, 638040.9379999973], [892367.9379999987, 638107.4999999972], [892277.6879999987, 638206.4380000001], [892245.4999999998, 638247.8750000028], [892220.6250000002, 638348.063000002], [892214.5629999989, 638394.4380000047], [892212.5000000006, 638411.4999999981], [892125.5629999986, 638577.4379999982], [892061.187999999, 638676.2499999981], [892021.3750000006, 638702.0000000009], [891959.8749999994, 638714.5629999973], [891936.1879999988, 638722.5629999992], [891927.0629999989, 638740.0000000056], [891930.2500000007, 638775.875], [892003.5629999995, 638855.0630000001], [892076.3749999992, 638912.0629999982], [892108.6879999988, 638966.9379999982], [892120.5000000008, 639063.688000001], [892103.1879999996, 639135.563000002], [892070.6250000007, 639168.9379999992], [891986.1249999995, 639211.5], [891890.1250000003, 639280.5629999992], [891813.3129999985, 639350.9379999982], [891748
|
../../../.julia/packages/Documenter/qoyeC/src/utilities/utilities.jl#L46
failed to run `@example` block in src/source/methods/barycentric.md:32-100
```@example barycentric
using GeometryOps
using GeometryOps.GeometryBasics
using Makie
using CairoMakie
# Define a polygon
polygon_points = Point3f[
(0.03, 0.05, 0.00), (0.07, 0.04, 0.02), (0.10, 0.04, 0.04),
(0.14, 0.04, 0.06), (0.17, 0.07, 0.08), (0.20, 0.09, 0.10),
(0.22, 0.11, 0.12), (0.25, 0.11, 0.14), (0.27, 0.10, 0.16),
(0.30, 0.07, 0.18), (0.31, 0.04, 0.20), (0.34, 0.03, 0.22),
(0.37, 0.02, 0.24), (0.40, 0.03, 0.26), (0.42, 0.04, 0.28),
(0.44, 0.07, 0.30), (0.45, 0.10, 0.32), (0.46, 0.13, 0.34),
(0.46, 0.19, 0.36), (0.47, 0.26, 0.38), (0.47, 0.31, 0.40),
(0.47, 0.35, 0.42), (0.45, 0.37, 0.44), (0.41, 0.38, 0.46),
(0.38, 0.37, 0.48), (0.35, 0.36, 0.50), (0.32, 0.35, 0.52),
(0.30, 0.37, 0.54), (0.28, 0.39, 0.56), (0.25, 0.40, 0.58),
(0.23, 0.39, 0.60), (0.21, 0.37, 0.62), (0.21, 0.34, 0.64),
(0.23, 0.32, 0.66), (0.24, 0.29, 0.68), (0.27, 0.24, 0.70),
(0.29, 0.21, 0.72), (0.29, 0.18, 0.74), (0.26, 0.16, 0.76),
(0.24, 0.17, 0.78), (0.23, 0.19, 0.80), (0.24, 0.22, 0.82),
(0.24, 0.25, 0.84), (0.21, 0.26, 0.86), (0.17, 0.26, 0.88),
(0.12, 0.24, 0.90), (0.07, 0.20, 0.92), (0.03, 0.15, 0.94),
(0.01, 0.10, 0.97), (0.02, 0.07, 1.00)]
# Plot it!
# First, we'll plot the polygon using Makie's rendering:
f, a1, p1 = poly(
polygon_points;
color = last.(polygon_points),
colormap = cgrad(:jet, 18; categorical = true),
axis = (;
type = Axis, aspect = DataAspect(), title = "Makie mesh based polygon rendering", subtitle = "CairoMakie"
),
figure = (; size = (800, 400),)
)
hidedecorations!(a1)
ext = GeometryOps.GI.Extent(X = (0, 0.5), Y = (0, 0.42))
a2 = Axis(
f[1, 2],
aspect = DataAspect(),
title = "Barycentric coordinate based polygon rendering", subtitle = "GeometryOps",
limits = (ext.X, ext.Y)
)
hidedecorations!(a2)
p2box = poly!( # Now, we plot a cropping rectangle around the axis so we only show the polygon
a2,
GeometryOps.GeometryBasics.Polygon( # This is a rectangle with an internal hole shaped like the polygon.
Point2f[(ext.X[1], ext.Y[1]), (ext.X[2], ext.Y[1]), (ext.X[2], ext.Y[2]), (ext.X[1], ext.Y[2]), (ext.X[1], ext.Y[1])], # exterior
[reverse(Point2f.(polygon_points))] # hole
); color = :white, xautolimits = false, yautolimits = false
)
cb = Colorbar(f[2, :], p1.plots[1]; vertical = false, flipaxis = true)
# Finally, we perform barycentric interpolation on a grid,
xrange = LinRange(ext.X..., 400)
yrange = LinRange(ext.Y..., 400)
@time mean_values = barycentric_interpolate.(
(MeanValue(),), # The barycentric coordinate algorithm (MeanValue is the only one for now)
(Point2f.(polygon_points),), # The polygon points as `Point2f`
(last.(polygon_points,),), # The values per polygon point - can be anything which supports addition and division
Point2f.(xrange, yrange') # The points at which to interpolate
)
# and render!
hm = heatmap!(a2, xrange, yrange, mean_values; colormap = p1.colormap, colorrange = p1.plots[1].colorrange[], xautolimits = false, yautolimits = false)
translate!(hm, 0, 0, -1) # translate the heatmap behind the cropping polygon!
f # finally, display the figure
```
exception =
MethodError: no method matching poly_convert(::Float32, ::Tuple{typeof(identity), typeof(identity)})
Closest candidates are:
poly_convert(!Matched::GeometryBasics.Mesh, ::Any)
@ Makie ~/.julia/packages/Makie/qMluh/src/basic_recipes/poly.jl:83
poly_convert(!Matched::AbstractVector{<:AbstractVector{<:Union{Tuple{Vararg{T, N}}, StaticArraysCore.StaticArray{Tuple{N}, T, 1}} where {N, T}}}, ::Any)
@ Makie ~/.julia/packages/Makie/qMluh/src/basic_recipes/poly.jl:112
poly_convert(!Matched::AbstractVector{<:Union{Tuple{T, T}, StaticArraysCore.StaticArray{Tuple{2}, T, 1}}}, ::Any) where T
@ Makie ~/.julia/packages/Makie/qMluh/src/basic_recipes/poly.jl:104
...
Stacktrace:
[1] macro expansion
@ ~/.julia/packages/StaticArrays/hLnPS/src/broadcast.jl:135 [inlined]
[2] __broad
|
../../../.julia/packages/Documenter/qoyeC/src/utilities/utilities.jl#L46
duplicate docs found for 'apply' in `@docs` block in src/source/primitives.md:41-48
```@docs
apply
applyreduce
GeometryOps.unwrap
GeometryOps.flatten
GeometryOps.reconstruct
GeometryOps.rebuild
```
|
../../../.julia/packages/Documenter/qoyeC/src/utilities/utilities.jl#L46
duplicate docs found for 'applyreduce' in `@docs` block in src/source/primitives.md:41-48
```@docs
apply
applyreduce
GeometryOps.unwrap
GeometryOps.flatten
GeometryOps.reconstruct
GeometryOps.rebuild
```
|
../../../.julia/packages/Documenter/qoyeC/src/utilities/utilities.jl#L46
duplicate docs found for 'GeometryOps.unwrap' in `@docs` block in src/source/primitives.md:41-48
```@docs
apply
applyreduce
GeometryOps.unwrap
GeometryOps.flatten
GeometryOps.reconstruct
GeometryOps.rebuild
```
|
../../../.julia/packages/Documenter/qoyeC/src/utilities/utilities.jl#L46
duplicate docs found for 'TraitTarget' in `@docs` block in src/source/primitives.md:8-10
```@docs
TraitTarget
```
|
../../../.julia/packages/Documenter/qoyeC/src/utilities/utilities.jl#L46
duplicate docs found for 'LinearSegments' in `@docs` block in src/source/transformations/segmentize.md:57-60
```@docs
LinearSegments
GeodesicSegments
```
|
This job succeeded
Loading