`densityanomaly()`

added, to highlight differences between kernel density for individual surveys and mean kernel density across all surveys`segvert2xy()`

added, to extract XY coordinates from vectors of segment and vertex`xy2segvert()`

and`ptshp2segvert()`

now include columns`snap_x`

and`snap_y`

, corresponding to the XY coordinates of each point, “snapped” to the river network.

- fixed scale bar in
`plot.riverdensity()`

- Fixed a bug in
`riverpoints()`

- Addressing forthcoming changes to
`sf`

package.

- Fixed a bug in
`plot.homerange()`

- Transition to remove dependency on
`sp`

and`rgdal`

packages, and transition to newer-generation`sf`

package.

- Fixed testing glitch for compatibility with new R version

- Updated maintainer email address

- Minor bug fix

- Minor update for compatibility with new PROJ

`cleanup_verts()`

added, for editing of the vertices of individual segments`routelist()`

now returns all complete routes (and faster)`splitsegments()`

can now split a subset of segments at specified locations`connectsegs()`

can now connect vectors of segments`cleanup()`

improvedBetter algorithm used for

`checkbraidedTF()`

- MUCH faster, and no longer hangs in a complex test case`detectroute(..., algorithm="Dijkstra")`

speeded up substantially`topologydots()`

speeded up

Better algorithm used for

`checkbraidedTF()`

- MUCH faster, and no longer hangs in a complex test case`plot.rivernetwork()`

no longer errors when only one segment is visible in plotting window

`homerange()`

now creates homerange-class objectsAdded

`plot.homerange()`

,`homerangeoverlap()`

and`plothomerangeoverlap()`

, which all accept homerange-class objectsOptimization in

`homerange()`

: speeded up by a factor of 10ish, depending on the datasetLine color in an empty plot with

`plot.rivernetwork()`

now settable with argument`linecol=`

`mouthdist()`

accepts vectors of segment and vertex coordinates`segmentnum=`

and`empty=`

in`plot.rivernetwork()`

and others re-implemented

- Including a scale bar in
`plot.riverdensity()`

with`scalebar=T`

- Producing plots in
`plot.riverdensity()`

in the correct order, if`survey`

is a factor variable with levels in a different order than alphabetic

Making an empty river plot (using

`empty=TRUE`

)Jittering

`riverpoints()`

using`jitter`

argumentOptimization in

`riverpoints()`

and`xy2segvert()`

: both were speeded up by a factor of 10Optimization in

`plot.rivernetwork()`

: speeded up by a factor of 2

- Allowing vectors of
`pch`

and`col`

in`riverpoints()`

- A bug in the braiding check algorithm used in
`cleanup()`

was identified and fixed.

Distance calculation is much, much faster since the last CRAN release (0.11.0). Both the Dijkstra and segroutes algorithm run in about one hundredth the time that they previously did.

Additional components were added to the rivernetwork class, to aid in distance calculation speed.

`$cumuldist`

is a list of vectors of cumulative distances associated with each line segment, and`$distlookup`

is a list of lookup tables. Distance calculation is now done using these components, which will need to be calculated for any saved river network objects.

Bugs in the

`dissolve()`

and`homerange()`

functions and segroutes algorithm were identified and fixed.New connection types were added, to handle special cases in braided networks.

Error handling in

`line2network()`

was improved, and more complex networks can now be read in a manageable amount of time.