En R s pueden hacer varias figuras o geometrías como lo son puntos, cadenas lineales o polígonos. Un punto es un vector numérico. Una línea o polígono son una matriz

Un punto con coordenadas (150, 300)


Point_1 <- st_point(c(150, 300)) 
plot(Point_1)

Ahora una línea que conecta el punto 1 (150, 300) y el punto 2 (300, 300)

library(sf)
Point_1 <- st_point(c(150, 300)) 
Point_2 <- st_point(c(300, 300))
L1 <- rbind(c(150, 300), c(300, 300))
plot(Point_1)

plot(Point_2)

plot(L1)

(ls <- st_linestring(L1))
LINESTRING (150 300, 300 300)
plot(ls)

NA
NA

Acontinuación se va a realizar una figura (casa sencilla)

library(sf)
Point_1 <- st_point(c(50, 50))
Point_2 <- st_point(c(100, 50))
Point_3 <- st_point(c(50, 100))
Point_4 <- st_point(c(100, 100))
Point_5 <- st_point(c(75, 120))
L1 <- rbind(c(50,50), c(100, 50))
L2 <- rbind(c(100,50), c(100, 100))
L3 <- rbind(c(100, 100), c(75, 120))
L4 <- rbind(c(75, 120), c(50, 100))
L5 <- rbind(c(50, 100), c(50, 50))
L6 <- rbind(c(50, 100), c(100, 100))
(mls <- st_multilinestring(list(L1, L2, L3, L4, L5, L6)))
MULTILINESTRING ((50 50, 100 50), (100 50, 100 100), (100 100, 75 120), (75 120, 50 100), (50 100, 50 50), (50 100, 100 100))
plot(mls)

Acontinuación se va a realizar una figura (casa con una puerta y dos ventanas)

library(sf)
Point_1 <- st_point(c(50, 50))
Point_2 <- st_point(c(100, 50))
Point_3 <- st_point(c(50, 100))
Point_4 <- st_point(c(100, 100))
Point_5 <- st_point(c(75, 120))
Point_6 <- st_point(c(63, 50))
Point_7 <- st_point(c(63, 75))
Point_8 <- st_point(c(87, 50))
Point_9 <- st_point(c(87, 75))
Point_10 <- st_point(c(50, 85))
Point_11 <- st_point(c(63, 85))
Point_12 <- st_point(c(63, 100))
Point_13 <- st_point(c(100, 85))
Point_14 <- st_point(c(87, 85))
Point_15 <- st_point(c(87,100))
L1 <- rbind(c(50,50), c(100, 50))
L2 <- rbind(c(100,50), c(100, 100))
L3 <- rbind(c(100, 100), c(75, 120))
L4 <- rbind(c(75, 120), c(50, 100))
L5 <- rbind(c(50, 100), c(50, 50))
L6 <- rbind(c(50, 100), c(100, 100))
L7 <- rbind(c(63, 50), c(63, 75))
L8 <- rbind(c(63, 75), c(87, 75))
L9 <- rbind(c(87, 75), c(87, 50))
L10 <-rbind(c(50, 85), c(63, 85))
L11 <-rbind(c(63, 85), c(63, 100))
L12 <-rbind(c(87,100), c(87, 85))
L13 <-rbind(c(87, 85), c(100, 85))
(mls <- st_multilinestring(list(L1, L2, L3, L4, L5, L6, L7, L8, L9, L10, L11, L12, L13)))
MULTILINESTRING ((50 50, 100 50), (100 50, 100 100), (100 100, 75 120), (75 120, 50 100), (50 100, 50 50), (50 100, 100 100), (63 50, 63 75), (63 75, 87 75), (87 75, 87 50), (50 85, 63 85), (63 85, 63 100), (87 100, 87 85), (87 85, 100 85))
plot(mls)

FIN

LS0tDQp0aXRsZTogIlRhcmVhIGRlIGdlb21ldHLDrWFzIGVuIFIiDQphdXRob3I6IFNhcmEgRGFuaWVsYSBWYW5lZ2FzIEdhcnrDs24gDQpkYXRlOiAxNiBkZSBvY3R1YnJlIGRlIDIwMTkNCm91dHB1dDogaHRtbF9ub3RlYm9vaw0KLS0tDQpFbiBSIHMgcHVlZGVuIGhhY2VyIHZhcmlhcyBmaWd1cmFzIG8gZ2VvbWV0csOtYXMgY29tbyBsbyBzb24gcHVudG9zLCBjYWRlbmFzIGxpbmVhbGVzIG8gcG9sw61nb25vcy4NClVuIHB1bnRvIGVzIHVuIHZlY3RvciBudW3DqXJpY28uDQpVbmEgbMOtbmVhIG8gcG9sw61nb25vIHNvbiB1bmEgbWF0cml6DQoNCiMjIyBVbiBwdW50byBjb24gY29vcmRlbmFkYXMgKDE1MCwgMzAwKQ0KDQpgYGB7cn0NCg0KUG9pbnRfMSA8LSBzdF9wb2ludChjKDE1MCwgMzAwKSkgDQpwbG90KFBvaW50XzEpDQpgYGANCg0KIyMjIEFob3JhIHVuYSBsw61uZWEgcXVlIGNvbmVjdGEgZWwgcHVudG8gMSAoMTUwLCAzMDApIHkgZWwgcHVudG8gMiAoMzAwLCAzMDApDQoNCmBgYHtyfQ0KbGlicmFyeShzZikNClBvaW50XzEgPC0gc3RfcG9pbnQoYygxNTAsIDMwMCkpIA0KUG9pbnRfMiA8LSBzdF9wb2ludChjKDMwMCwgMzAwKSkNCkwxIDwtIHJiaW5kKGMoMTUwLCAzMDApLCBjKDMwMCwgMzAwKSkNCnBsb3QoUG9pbnRfMSkNCnBsb3QoUG9pbnRfMikNCnBsb3QoTDEpDQoobHMgPC0gc3RfbGluZXN0cmluZyhMMSkpDQpwbG90KGxzKQ0KDQoNCmBgYA0KDQojIyMgQWNvbnRpbnVhY2nDs24gc2UgdmEgYSByZWFsaXphciB1bmEgZmlndXJhIChjYXNhIHNlbmNpbGxhKQ0KDQpgYGB7cn0NCmxpYnJhcnkoc2YpDQpQb2ludF8xIDwtIHN0X3BvaW50KGMoNTAsIDUwKSkNClBvaW50XzIgPC0gc3RfcG9pbnQoYygxMDAsIDUwKSkNClBvaW50XzMgPC0gc3RfcG9pbnQoYyg1MCwgMTAwKSkNClBvaW50XzQgPC0gc3RfcG9pbnQoYygxMDAsIDEwMCkpDQpQb2ludF81IDwtIHN0X3BvaW50KGMoNzUsIDEyMCkpDQpMMSA8LSByYmluZChjKDUwLDUwKSwgYygxMDAsIDUwKSkNCkwyIDwtIHJiaW5kKGMoMTAwLDUwKSwgYygxMDAsIDEwMCkpDQpMMyA8LSByYmluZChjKDEwMCwgMTAwKSwgYyg3NSwgMTIwKSkNCkw0IDwtIHJiaW5kKGMoNzUsIDEyMCksIGMoNTAsIDEwMCkpDQpMNSA8LSByYmluZChjKDUwLCAxMDApLCBjKDUwLCA1MCkpDQpMNiA8LSByYmluZChjKDUwLCAxMDApLCBjKDEwMCwgMTAwKSkNCihtbHMgPC0gc3RfbXVsdGlsaW5lc3RyaW5nKGxpc3QoTDEsIEwyLCBMMywgTDQsIEw1LCBMNikpKQ0KcGxvdChtbHMpDQpgYGANCg0KIyMjIEFjb250aW51YWNpw7NuIHNlIHZhIGEgcmVhbGl6YXIgdW5hIGZpZ3VyYSAoY2FzYSBjb24gdW5hIHB1ZXJ0YSB5IGRvcyB2ZW50YW5hcykNCg0KYGBge3J9DQpsaWJyYXJ5KHNmKQ0KUG9pbnRfMSA8LSBzdF9wb2ludChjKDUwLCA1MCkpDQpQb2ludF8yIDwtIHN0X3BvaW50KGMoMTAwLCA1MCkpDQpQb2ludF8zIDwtIHN0X3BvaW50KGMoNTAsIDEwMCkpDQpQb2ludF80IDwtIHN0X3BvaW50KGMoMTAwLCAxMDApKQ0KUG9pbnRfNSA8LSBzdF9wb2ludChjKDc1LCAxMjApKQ0KUG9pbnRfNiA8LSBzdF9wb2ludChjKDYzLCA1MCkpDQpQb2ludF83IDwtIHN0X3BvaW50KGMoNjMsIDc1KSkNClBvaW50XzggPC0gc3RfcG9pbnQoYyg4NywgNTApKQ0KUG9pbnRfOSA8LSBzdF9wb2ludChjKDg3LCA3NSkpDQpQb2ludF8xMCA8LSBzdF9wb2ludChjKDUwLCA4NSkpDQpQb2ludF8xMSA8LSBzdF9wb2ludChjKDYzLCA4NSkpDQpQb2ludF8xMiA8LSBzdF9wb2ludChjKDYzLCAxMDApKQ0KUG9pbnRfMTMgPC0gc3RfcG9pbnQoYygxMDAsIDg1KSkNClBvaW50XzE0IDwtIHN0X3BvaW50KGMoODcsIDg1KSkNClBvaW50XzE1IDwtIHN0X3BvaW50KGMoODcsMTAwKSkNCkwxIDwtIHJiaW5kKGMoNTAsNTApLCBjKDEwMCwgNTApKQ0KTDIgPC0gcmJpbmQoYygxMDAsNTApLCBjKDEwMCwgMTAwKSkNCkwzIDwtIHJiaW5kKGMoMTAwLCAxMDApLCBjKDc1LCAxMjApKQ0KTDQgPC0gcmJpbmQoYyg3NSwgMTIwKSwgYyg1MCwgMTAwKSkNCkw1IDwtIHJiaW5kKGMoNTAsIDEwMCksIGMoNTAsIDUwKSkNCkw2IDwtIHJiaW5kKGMoNTAsIDEwMCksIGMoMTAwLCAxMDApKQ0KTDcgPC0gcmJpbmQoYyg2MywgNTApLCBjKDYzLCA3NSkpDQpMOCA8LSByYmluZChjKDYzLCA3NSksIGMoODcsIDc1KSkNCkw5IDwtIHJiaW5kKGMoODcsIDc1KSwgYyg4NywgNTApKQ0KTDEwIDwtcmJpbmQoYyg1MCwgODUpLCBjKDYzLCA4NSkpDQpMMTEgPC1yYmluZChjKDYzLCA4NSksIGMoNjMsIDEwMCkpDQpMMTIgPC1yYmluZChjKDg3LDEwMCksIGMoODcsIDg1KSkNCkwxMyA8LXJiaW5kKGMoODcsIDg1KSwgYygxMDAsIDg1KSkNCihtbHMgPC0gc3RfbXVsdGlsaW5lc3RyaW5nKGxpc3QoTDEsIEwyLCBMMywgTDQsIEw1LCBMNiwgTDcsIEw4LCBMOSwgTDEwLCBMMTEsIEwxMiwgTDEzKSkpDQpwbG90KG1scykNCmBgYA0KDQpGSU4NCg==