Distribute the distance between first and last points across all points to close the outline.
Value
If
xis a single matrix: returns the closed matrixIf
xis a list: returns a list of closed matricesIf
xis a tibble: returns the tibble with closed coo column(s)
Details
For open outlines, distributes the gap between the first and last points evenly across all points, so the outline becomes closed.
See also
coo_close() for simple closing; coo_open() for opening
Examples
# Close by spreading gap
coo_close_spread(shapes$cat)
#> <xy [120 x 2]>
#> [,1] [,2]
#> [1,] 200.000 62.000
#> [2,] 195.983 55.975
#> [3,] 199.966 55.950
#> [4,] 205.950 53.924
#> [5,] 208.933 47.899
#> [6,] ... ...
#> [7,] 217.067 42.101
#> [8,] 211.050 44.076
#> [9,] 206.034 50.050
#> [10,] 202.017 56.025
#> [11,] 200.000 62.000
# Works on lists
coo_close_spread(bot$coo)
#> $brahma
#> <xy [138 x 2]>
#> [,1] [,2]
#> [1,] 37.000 561.000
#> [2,] 40.015 539.766
#> [3,] 40.029 528.533
#> [4,] 43.044 507.299
#> [5,] 46.058 486.066
#> [6,] ... ...
#> [7,] 35.942 624.934
#> [8,] 34.956 613.701
#> [9,] 34.971 592.467
#> [10,] 35.985 571.234
#> [11,] 37.000 561.000
#>
#> $caney
#> <xy [168 x 2]>
#> [,1] [,2]
#> [1,] 53.000 535.000
#> [2,] 52.988 524.880
#> [3,] 53.976 504.760
#> [4,] 52.964 494.641
#> [5,] 53.952 484.521
#> [6,] ... ...
#> [7,] 74.048 596.479
#> [8,] 65.036 576.359
#> [9,] 60.024 565.240
#> [10,] 57.012 555.120
#> [11,] 53.000 535.000
#>
#> $chimay
#> <xy [189 x 2]>
#> [,1] [,2]
#> [1,] 49.000 333.000
#> [2,] 49.005 324.920
#> [3,] 49.011 317.840
#> [4,] 50.016 309.761
#> [5,] 50.021 301.681
#> [6,] ... ...
#> [7,] 59.979 364.319
#> [8,] 54.984 356.239
#> [9,] 51.989 349.160
#> [10,] 49.995 341.080
#> [11,] 49.000 333.000
#>
#> $corona
#> <xy [129 x 2]>
#> [,1] [,2]
#> [1,] 91.000 426.000
#> [2,] 90.977 415.836
#> [3,] 89.953 394.672
#> [4,] 90.930 384.508
#> [5,] 90.906 373.344
#> [6,] ... ...
#> [7,] 115.094 485.656
#> [8,] 107.070 465.492
#> [9,] 102.047 456.328
#> [10,] 98.023 445.164
#> [11,] 91.000 426.000
#>
#> $deusventrue
#> <xy [152 x 2]>
#> [,1] [,2]
#> [1,] 74.000 481.000
#> [2,] 69.947 471.874
#> [3,] 61.894 453.748
#> [4,] 58.841 444.623
#> [5,] 51.788 424.497
#> [6,] ... ...
#> [7,] 92.212 536.503
#> [8,] 89.159 526.377
#> [9,] 82.106 508.252
#> [10,] 79.053 499.126
#> [11,] 74.000 481.000
#>
#> $duvel
#> <xy [161 x 2]>
#> [,1] [,2]
#> [1,] 61.000 315.000
#> [2,] 60.987 303.862
#> [3,] 60.975 292.725
#> [4,] 60.962 292.587
#> [5,] 60.950 281.450
#> [6,] ... ...
#> [7,] 72.050 347.550
#> [8,] 67.037 336.413
#> [9,] 63.025 326.275
#> [10,] 63.013 326.138
#> [11,] 61.000 315.000
#>
#> $franziskaner
#> <xy [124 x 2]>
#> [,1] [,2]
#> [1,] 54.000 439.000
#> [2,] 54.000 417.748
#> [3,] 54.000 407.496
#> [4,] 54.000 388.244
#> [5,] 54.000 377.992
#> [6,] ... ...
#> [7,] 60.000 502.008
#> [8,] 59.000 480.756
#> [9,] 57.000 470.504
#> [10,] 54.000 449.252
#> [11,] 54.000 439.000
#>
#> $grimbergen
#> <xy [126 x 2]>
#> [,1] [,2]
#> [1,] 42.000 404.000
#> [2,] 39.984 393.832
#> [3,] 39.968 372.664
#> [4,] 39.952 361.496
#> [5,] 39.936 351.328
#> [6,] ... ...
#> [7,] 72.064 466.672
#> [8,] 58.048 446.504
#> [9,] 52.032 435.336
#> [10,] 48.016 425.168
#> [11,] 42.000 404.000
#>
#> $guiness
#> <xy [183 x 2]>
#> [,1] [,2]
#> [1,] 69.000 385.000
#> [2,] 69.000 376.912
#> [3,] 69.000 368.824
#> [4,] 69.000 359.736
#> [5,] 69.000 343.648
#> [6,] ... ...
#> [7,] 73.000 426.352
#> [8,] 71.000 417.264
#> [9,] 67.000 402.176
#> [10,] 68.000 394.088
#> [11,] 69.000 385.000
#>
#> $hoegardeen
#> <xy [193 x 2]>
#> [,1] [,2]
#> [1,] 42.000 544.000
#> [2,] 39.979 530.875
#> [3,] 39.958 518.750
#> [4,] 39.938 505.625
#> [5,] 39.917 492.500
#> [6,] ... ...
#> [7,] 54.083 595.500
#> [8,] 50.062 582.375
#> [9,] 47.042 570.250
#> [10,] 43.021 557.125
#> [11,] 42.000 544.000
#>
#> $jupiler
#> <xy [156 x 2]>
#> [,1] [,2]
#> [1,] 55.000 515.000
#> [2,] 53.974 500.826
#> [3,] 53.948 487.652
#> [4,] 53.923 473.477
#> [5,] 53.897 459.303
#> [6,] ... ...
#> [7,] 70.103 570.697
#> [8,] 65.077 556.523
#> [9,] 62.052 543.348
#> [10,] 58.026 529.174
#> [11,] 55.000 515.000
#>
#> $kingfisher
#> <xy [182 x 2]>
#> [,1] [,2]
#> [1,] 71.000 384.000
#> [2,] 70.989 373.895
#> [3,] 70.978 364.790
#> [4,] 70.967 354.685
#> [5,] 70.956 344.580
#> [6,] ... ...
#> [7,] 79.044 423.420
#> [8,] 76.033 414.315
#> [9,] 74.022 404.210
#> [10,] 71.011 394.105
#> [11,] 71.000 384.000
#>
#> $latrappe
#> <xy [136 x 2]>
#> [,1] [,2]
#> [1,] 26.000 389.000
#> [2,] 25.000 376.815
#> [3,] 25.000 363.630
#> [4,] 25.000 351.444
#> [5,] 25.000 338.259
#> [6,] ... ...
#> [7,] 28.000 439.741
#> [8,] 25.000 426.556
#> [9,] 26.000 414.370
#> [10,] 26.000 401.185
#> [11,] 26.000 389.000
#>
#> $lindemanskriek
#> <xy [176 x 2]>
#> [,1] [,2]
#> [1,] 60.000 427.000
#> [2,] 59.971 418.903
#> [3,] 54.943 403.806
#> [4,] 53.914 394.709
#> [5,] 53.886 386.611
#> [6,] ... ...
#> [7,] 72.114 469.389
#> [8,] 70.086 461.291
#> [9,] 67.057 452.194
#> [10,] 65.029 444.097
#> [11,] 60.000 427.000
#>
#> $nicechouffe
#> <xy [146 x 2]>
#> [,1] [,2]
#> [1,] 82.000 361.000
#> [2,] 80.979 352.883
#> [3,] 76.959 335.766
#> [4,] 76.938 326.648
#> [5,] 75.917 318.531
#> [6,] ... ...
#> [7,] 93.083 401.469
#> [8,] 90.062 393.352
#> [9,] 88.041 384.234
#> [10,] 86.021 377.117
#> [11,] 82.000 361.000
#>
#> $pecheresse
#> <xy [129 x 2]>
#> [,1] [,2]
#> [1,] 63.000 495.000
#> [2,] 60.938 475.773
#> [3,] 60.875 466.547
#> [4,] 59.812 446.320
#> [5,] 57.750 427.094
#> [6,] ... ...
#> [7,] 78.250 551.906
#> [8,] 75.188 541.680
#> [9,] 70.125 523.453
#> [10,] 65.062 504.227
#> [11,] 63.000 495.000
#>
#> $sierranevada
#> <xy [176 x 2]>
#> [,1] [,2]
#> [1,] 61.000 345.000
#> [2,] 61.000 332.857
#> [3,] 61.000 332.714
#> [4,] 61.000 319.571
#> [5,] 61.000 307.429
#> [6,] ... ...
#> [7,] 63.000 382.571
#> [8,] 61.000 369.429
#> [9,] 59.000 357.286
#> [10,] 61.000 345.143
#> [11,] 61.000 345.000
#>
#> $tanglefoot
#> <xy [174 x 2]>
#> [,1] [,2]
#> [1,] 48.000 367.000
#> [2,] 48.006 358.908
#> [3,] 48.012 350.815
#> [4,] 48.017 334.723
#> [5,] 49.023 326.630
#> [6,] ... ...
#> [7,] 52.977 407.370
#> [8,] 49.983 399.277
#> [9,] 48.988 391.185
#> [10,] 47.994 375.092
#> [11,] 48.000 367.000
#>
#> $tauro
#> <xy [174 x 2]>
#> [,1] [,2]
#> [1,] 56.000 515.000
#> [2,] 53.983 502.867
#> [3,] 53.965 490.734
#> [4,] 53.948 477.601
#> [5,] 53.931 465.468
#> [6,] ... ...
#> [7,] 68.069 564.532
#> [8,] 65.052 552.399
#> [9,] 60.035 540.266
#> [10,] 58.017 528.133
#> [11,] 56.000 515.000
#>
#> $westmalle
#> <xy [141 x 2]>
#> [,1] [,2]
#> [1,] 70.000 394.000
#> [2,] 69.971 385.879
#> [3,] 66.943 368.757
#> [4,] 66.914 360.636
#> [5,] 65.886 343.514
#> [6,] ... ...
#> [7,] 82.114 444.486
#> [8,] 79.086 435.364
#> [9,] 76.057 419.243
#> [10,] 72.029 410.121
#> [11,] 70.000 394.000
#>
#> $amrut
#> <xy [191 x 2]>
#> [,1] [,2]
#> [1,] 57.000 441.000
#> [2,] 57.000 430.895
#> [3,] 57.000 420.789
#> [4,] 57.000 410.684
#> [5,] 57.000 400.579
#> [6,] ... ...
#> [7,] 55.000 481.421
#> [8,] 57.000 471.316
#> [9,] 57.000 461.211
#> [10,] 57.000 451.105
#> [11,] 57.000 441.000
#>
#> $ballantines
#> <xy [146 x 2]>
#> [,1] [,2]
#> [1,] 38.000 357.000
#> [2,] 38.000 340.834
#> [3,] 38.000 332.669
#> [4,] 38.000 317.503
#> [5,] 38.000 309.338
#> [6,] ... ...
#> [7,] 38.000 404.662
#> [8,] 38.000 388.497
#> [9,] 38.000 380.331
#> [10,] 38.000 364.166
#> [11,] 38.000 357.000
#>
#> $bushmills
#> <xy [165 x 2]>
#> [,1] [,2]
#> [1,] 72.000 456.000
#> [2,] 72.012 440.811
#> [3,] 72.024 424.622
#> [4,] 72.037 424.433
#> [5,] 72.049 409.244
#> [6,] ... ...
#> [7,] 71.951 502.756
#> [8,] 71.963 487.567
#> [9,] 71.976 471.378
#> [10,] 71.988 471.189
#> [11,] 72.000 456.000
#>
#> $chivas
#> <xy [164 x 2]>
#> [,1] [,2]
#> [1,] 33.000 437.000
#> [2,] 30.957 428.902
#> [3,] 28.914 411.804
#> [4,] 28.871 403.706
#> [5,] 28.828 387.607
#> [6,] ... ...
#> [7,] 74.172 486.393
#> [8,] 66.129 479.294
#> [9,] 50.086 462.196
#> [10,] 44.043 454.098
#> [11,] 33.000 437.000
#>
#> $dalmore
#> <xy [155 x 2]>
#> [,1] [,2]
#> [1,] 52.000 371.000
#> [2,] 46.903 358.838
#> [3,] 43.805 345.675
#> [4,] 41.708 333.513
#> [5,] 41.610 321.351
#> [6,] ... ...
#> [7,] 87.390 405.649
#> [8,] 87.292 405.487
#> [9,] 74.195 394.325
#> [10,] 62.097 383.162
#> [11,] 52.000 371.000
#>
#> $famousgrouse
#> <xy [169 x 2]>
#> [,1] [,2]
#> [1,] 99.000 313.000
#> [2,] 99.012 302.887
#> [3,] 99.024 293.774
#> [4,] 99.036 283.661
#> [5,] 99.048 283.548
#> [6,] ... ...
#> [7,] 98.952 342.452
#> [8,] 98.964 332.339
#> [9,] 98.976 332.226
#> [10,] 98.988 323.113
#> [11,] 99.000 313.000
#>
#> $glendronach
#> <xy [197 x 2]>
#> [,1] [,2]
#> [1,] 73.000 435.000
#> [2,] 73.000 422.878
#> [3,] 74.000 410.755
#> [4,] 74.000 410.633
#> [5,] 74.000 398.510
#> [6,] ... ...
#> [7,] 72.000 471.490
#> [8,] 72.000 459.367
#> [9,] 73.000 447.245
#> [10,] 73.000 447.122
#> [11,] 73.000 435.000
#>
#> $glenmorangie
#> <xy [179 x 2]>
#> [,1] [,2]
#> [1,] 53.000 518.000
#> [2,] 54.000 500.820
#> [3,] 54.000 500.640
#> [4,] 54.000 484.461
#> [5,] 55.000 467.281
#> [6,] ... ...
#> [7,] 62.000 567.719
#> [8,] 58.000 552.539
#> [9,] 54.000 535.360
#> [10,] 53.000 518.180
#> [11,] 53.000 518.000
#>
#> $highlandpark
#> <xy [169 x 2]>
#> [,1] [,2]
#> [1,] 42.000 371.000
#> [2,] 42.000 356.833
#> [3,] 42.000 356.667
#> [4,] 42.000 342.500
#> [5,] 42.000 328.333
#> [6,] ... ...
#> [7,] 41.000 413.667
#> [8,] 42.000 399.500
#> [9,] 42.000 385.333
#> [10,] 42.000 371.167
#> [11,] 42.000 371.000
#>
#> $jackdaniels
#> <xy [150 x 2]>
#> [,1] [,2]
#> [1,] 63.000 414.000
#> [2,] 62.987 400.826
#> [3,] 62.973 387.651
#> [4,] 62.960 374.477
#> [5,] 62.946 361.302
#> [6,] ... ...
#> [7,] 68.054 467.698
#> [8,] 66.040 453.523
#> [9,] 63.027 440.349
#> [10,] 62.013 427.174
#> [11,] 63.000 414.000
#>
#> $jb
#> <xy [174 x 2]>
#> [,1] [,2]
#> [1,] 43.000 531.000
#> [2,] 43.000 519.879
#> [3,] 42.000 509.757
#> [4,] 42.000 487.636
#> [5,] 43.000 476.514
#> [6,] ... ...
#> [7,] 42.000 585.486
#> [8,] 40.000 574.364
#> [9,] 42.000 564.243
#> [10,] 43.000 542.121
#> [11,] 43.000 531.000
#>
#> $johnniewalker
#> <xy [168 x 2]>
#> [,1] [,2]
#> [1,] 133.000 175.000
#> [2,] 133.000 170.952
#> [3,] 133.000 166.904
#> [4,] 133.000 162.856
#> [5,] 134.000 154.808
#> [6,] ... ...
#> [7,] 133.000 195.192
#> [8,] 133.000 191.144
#> [9,] 133.000 183.096
#> [10,] 133.000 179.048
#> [11,] 133.000 175.000
#>
#> $magallan
#> <xy [141 x 2]>
#> [,1] [,2]
#> [1,] 78.000 397.000
#> [2,] 78.007 381.843
#> [3,] 80.014 374.686
#> [4,] 80.021 360.529
#> [5,] 81.029 345.371
#> [6,] ... ...
#> [7,] 75.971 440.629
#> [8,] 75.979 433.471
#> [9,] 75.986 419.314
#> [10,] 77.993 404.157
#> [11,] 78.000 397.000
#>
#> $makersmark
#> <xy [177 x 2]>
#> [,1] [,2]
#> [1,] 31.000 432.000
#> [2,] 22.875 419.875
#> [3,] 15.750 407.750
#> [4,] 15.625 407.625
#> [5,] 12.500 393.500
#> [6,] ... ...
#> [7,] 57.500 465.500
#> [8,] 52.375 451.375
#> [9,] 45.250 442.250
#> [10,] 45.125 442.125
#> [11,] 31.000 432.000
#>
#> $oban
#> <xy [179 x 2]>
#> [,1] [,2]
#> [1,] 74.000 457.000
#> [2,] 74.006 447.904
#> [3,] 74.011 430.809
#> [4,] 74.017 422.713
#> [5,] 74.022 413.618
#> [6,] ... ...
#> [7,] 72.978 500.382
#> [8,] 73.983 491.287
#> [9,] 73.989 483.191
#> [10,] 73.994 474.096
#> [11,] 74.000 457.000
#>
#> $oldpotrero
#> <xy [131 x 2]>
#> [,1] [,2]
#> [1,] 83.000 307.000
#> [2,] 76.908 298.869
#> [3,] 70.815 290.738
#> [4,] 62.723 273.608
#> [5,] 59.631 264.477
#> [6,] ... ...
#> [7,] 107.369 349.523
#> [8,] 105.277 341.392
#> [9,] 100.185 332.262
#> [10,] 89.092 316.131
#> [11,] 83.000 307.000
#>
#> $redbreast
#> <xy [177 x 2]>
#> [,1] [,2]
#> [1,] 105.000 233.000
#> [2,] 102.955 227.949
#> [3,] 100.909 223.898
#> [4,] 97.864 213.847
#> [5,] 97.818 209.795
#> [6,] ... ...
#> [7,] 129.182 252.205
#> [8,] 124.136 248.153
#> [9,] 119.091 244.102
#> [10,] 110.045 237.051
#> [11,] 105.000 233.000
#>
#> $tamdhu
#> <xy [176 x 2]>
#> [,1] [,2]
#> [1,] 49.000 552.000
#> [2,] 49.011 539.857
#> [3,] 49.023 526.714
#> [4,] 49.034 514.571
#> [5,] 49.046 502.429
#> [6,] ... ...
#> [7,] 47.954 600.571
#> [8,] 45.966 588.429
#> [9,] 46.977 576.286
#> [10,] 47.989 564.143
#> [11,] 49.000 552.000
#>
#> $wildturkey
#> <xy [185 x 2]>
#> [,1] [,2]
#> [1,] 18.000 569.000
#> [2,] 18.016 554.848
#> [3,] 18.033 540.696
#> [4,] 18.049 526.543
#> [5,] 18.065 512.391
#> [6,] ... ...
#> [7,] 22.935 623.609
#> [8,] 20.951 610.457
#> [9,] 17.967 597.304
#> [10,] 17.984 583.152
#> [11,] 18.000 569.000
#>
#> $yoichi
#> <xy [123 x 2]>
#> [,1] [,2]
#> [1,] 69.000 384.000
#> [2,] 69.000 368.820
#> [3,] 69.000 354.639
#> [4,] 69.000 339.459
#> [5,] 69.000 324.279
#> [6,] ... ...
#> [7,] 68.000 435.721
#> [8,] 68.000 428.541
#> [9,] 68.000 413.361
#> [10,] 68.000 399.180
#> [11,] 69.000 384.000
#>
#> attr(,"class")
#> [1] "out" "coo" "list"
# Works on tibbles
coo_close_spread(bot)
#> # A tibble: 40 × 3
#> coo type dummy
#> <out> <fct> <fct>
#> 1 (138 x 2) whisky a
#> 2 (168 x 2) whisky a
#> 3 (189 x 2) whisky a
#> 4 (129 x 2) whisky a
#> 5 (152 x 2) whisky a
#> 6 (161 x 2) whisky a
#> 7 (124 x 2) whisky a
#> 8 (126 x 2) whisky a
#> 9 (183 x 2) whisky a
#> 10 (193 x 2) whisky a
#> # ℹ 30 more rows
