Labview portál - téma megtekintése - egy pont érintőkörének egy érintkezési pont létrehozása
Hello mindenkinek!
A feladat az, hogy egy tetszőleges kört (x1, y1, r1) adjon meg, és egy tetszőleges pontból (adott x2, y2) rajzoljon egy érintőt ezen a körön.
Talált egy ilyen elmélet:
Az oldat útvonala megközelítőleg azonos lehet (lásd az ábrát).
Adott: az x0, y0, az R sugár és az a, b koordináták tetszőleges helyén lévő középpontja.
Megtaláljuk a szög alfáját, mint arctg ((b-y0) / (a-x0))
Ezután megtaláljuk a béta szögét, mint arccot (R / Sqrt ((a-x0) ^ 2 + (b-y0) ^ 2)
Most keresse meg a gamma szöget 2n-alfa-béta-ként
Végül megtaláljuk az x1, y1 pontot: x1 = x0-R * cos (gamma) és y1 = y0 + R * sin (gamma)
Amikor az x1, y1 pontot találjuk, alkalmazzuk az érintő számára a képletet a körön lévő ponton.
Olyan programot készítettem:
De nyilvánvalóan az érintő helyesen van felépítve, ha csak a pont X koordinátája kisebb, mint a kör középpontjának X koordinátája, és ha több - az érintő eltolódik.
Nem értem, mi a hiba. A megoldás valószínűleg valahol a felszínen van
Madman írta: Nem értem, mi a hiba. A megoldás valószínűleg valahol a felszínen van
Nos. az idő nem áll rendelkezésre, de
Az érintőnek kettőnek kell lennie
És a hiba a trigonometrikus függvények miatt merülhet fel, pontosabban ez nem egy funkcióhiba, és az Ön
Például a sin és cos függvények periódikusak, és ennek megfelelően a sin (x) függvény azonos értéke lesz az x különböző értékeire. Az inverz függvény számítása arcsin [sin (x)]. nem az a tény, hogy a válasz helyes.
Soha nem érdekelt ez, de jó. Meg kell kapnia egy sor pontot, ahonnan az "érzékenység" ellenőrzésével válaszd ki a helyeseket.
Biztosan tévedhetek, de remélem, hogy javítani fogok.
Számos alapismeretek ismerete sok tényező ismeretét felszabadítja!