Skip to contents

spa_exact_equal() checks whether two spatial plateau objects are exactly equal.

Usage

spa_exact_equal(pgo1, pgo2)

Arguments

pgo1

A pgeometry object that is either a plateau point, plateau line, or plateau region object.

pgo2

A pgeometry object that is either a plateau point, plateau line, or plateau region object.

Value

A Boolean value that indicates if two pgeometry objects are exactly equal.

Details

spa_exact_equal() is a Boolean function that checks fuzzy equality in the spatial plateau context. Two pgeometry objects are exactly equal if their components are equal. Two components are equal if they have the same membership degree and they are (spatially) equal (i.e., their sfg objects have the same geometric format - this means that the order of the points can be different).

Examples

pcp1 <- create_component("MULTIPOINT((2 2), (2 4), (2 0))", 0.5)
pcp2 <- create_component("MULTIPOINT((1 1), (3 1), (1 3), (3 3))", 0.9)
pcp3 <- create_component("MULTIPOINT((10 10), (9 8), (7 7))", 1)
pcp4 <- create_component("MULTIPOINT((0 0), (2 3))", 0.7)

ppoint1 <- create_pgeometry(list(pcp1, pcp2), "PLATEAUPOINT")
ppoint2 <- create_pgeometry(list(pcp3, pcp4), "PLATEAUPOINT")

spa_exact_equal(ppoint1, ppoint2)
#> [1] FALSE

spa_exact_equal(ppoint1, ppoint1)
#> [1] TRUE