I see 2 way to solve this:
#import "@preview/cetz:0.3.4"
#cetz.canvas({
import cetz.draw: *
let my-coord = (0, 0)
circle(my-coord)
line(my-coord, (rel: (1, 2)), mark: (end: ">"))
circle((5, 5), name: "c")
line("c", (rel: (1, 2)), mark: (end: ">"))
})
Not sure what you mean by “save a coordinate to a string”.