JavascriptProva

domenica 22 gennaio 2012

Retta per due punti

Ecco una retta che passa per due punti dati:
<script>
//A(100,100); B(200,300)
var x1=100;
var x2=200;
var y1=100;
var y2=300;
function traccia(){
 document.body.innerHTML+="<div style='position:absolute;background:black;left:"+x1+"px;top:"+y1+"px;width:5px;height:5px;font-size:1px'></div>"
 document.body.innerHTML+="<div style='position:absolute;background:black;left:"+x2+"px;top:"+y2+"px;width:5px;height:5px;font-size:1px'></div>"
 for (x=x1;x<=x2;x++){
  punto="<div style='position:absolute;background:black;left:"+x+"px;top:"+((y2-y1)/(x2-x1)*(x-x1)+y1)+"px;width:1px;height:1px;font-size:1px'></div>"
  document.body.innerHTML+=punto;
 }
}
</script>
<body onLoad="traccia()">
</body>
Concettualmente funziona, ma c'è qualcosa che non mi soddisfa: più le linee sono verticali più risultano "sgranate"...

Forse meglio trovare il modo di far ricorso a metodi trigonometrici...

Nessun commento:

Posta un commento