Stap 4: Roterende alle punten op perceel
Na je grijpen de x / y-coördinaten van de afbeelding post randdetectie en filteren en plot ze aan een grafiek die de afbeelding ondersteboven wordt geplaatst. Om dit te corrigeren wij enkele enkelvoudige algebra. (foto van het resultaat spoedig zal bijvoegen)
Rotatie
tegen de klok in met hoek
x = x * cos(theta) - y * sin(theta)
y = x * sin(theta) + y * cos(theta)
Theta = de hoek waar u wilt roteren
In c# zou u moeten doen dit voor elke coördinaat in uw collectie
for (int i = 0; i < topCoord.Length; i++) { string[] bottomCoord = topCoord[i].Split(','); double newX = Convert.ToDouble(bottomCoord[0]); double newY = Convert.ToDouble(bottomCoord[1]); int angle = 110; newX = newX * Math.Cos(angle) - newY * Math.Sin(angle); newY = newX * Math.Sin(angle) + newY * Math.Cos(angle); Image.coord imgCoord = new Image.coord(); imgCoord.x = newX; imgCoord.y = newY; coorArray.Add(imgCoord); coorArray2.Add(imgCoord); chart1.Series["plot"].Points.AddXY(newX, newY); }