
piano.cartesiano <- function(Z) {
  plot(NULL, xlim=c(-Z,Z), ylim=c(-Z,Z), xlab='x', ylab='y', asp=1)
  grid()
  abline(h=0)
  abline(v=0)
}

piano.cartesiano(10)

while(1) {
  cat(sprintf("\n Clicca su due punti (coincidenti per uscire)\n"))

  p <- locator(2)    
  if ( sqrt( (p$x[2]-p$x[1])^2 + (p$y[2]-p$y[1])^2) < 1) break
    
  points(p)
  
  m = (p$y[2]-p$y[1]) / (p$x[2]-p$x[1])
  c = p$y[1] - m * p$x[1]
  
  cat(sprintf("m = %.3f,  c = %.3f\n", m, c))
  abline(c, m, col=sample(rainbow(7))[1] )
}
