Új hozzászólás Aktív témák
-
Tomi_78
aktív tag
Sziasztok!
Egy kis 3D-szerű programot készítek C#-ban és ebben szükségem van arra, hogy tudjam, hogy egy pont melyik irányban van egy másiktól a síkban.
Ehhez a következő képletet használom, miután kiböngésztem a világháló bugyraiból:Math.Atan2(kamnezy-(a_kamera.yhely+5),kamnezx-(a_kamera.xhely+5))*(180/Math.PI)A kamera 10 képpont sugarú kör, ezért a középpontja +5 pixellel van a szélétől. Illetve van a kamnezx-kamnezy pont, ami 20 képpontnyira van a kamera előtt, és egy fekete vonal jelzi az irányát és a végét a mellékelt képen. A képeltben e két pont egymáshoz viszonyított irányát vizsgálom, próbaképpen.
Na de ami furcsa, az a visszaadott értékek. Ugyanis ha a kamera felfelé néz, akkor negatív számokat mutat irányként, míg ha lefelé, akkor a várttól teljesen eltérőt, pl. a képen látható 90-et a 270 helyett.
Végül is tudom ezeket korrigálni (felfelé az Abs() függvény használatával, míg lefelé úgy, hogy az új irányérték az a régi + (180 - régi) legyen), és így megkapni a valós értékeket, de akkor is kíváncsi vagyok arra, hogy mi lehet ezen hibák oka?
Netán mégis rossz a képlet?
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Dell Optiplex 3050 SFF,i5-6500,8GB DDR4,256GB SSD, WIN11
- Raktáron lévó 1851-es lapok! Garanciás termékek! Részletfizetésre is!!! ÉRDEKLŐDJ!!
- Apple iPhone 13 256GB,Használt,Dobozaval,12 hónap garanciával
- Lenovo ThinkPad T14s Gen 2 i5-1135G7 16GB 1000GB FHD 1 év garancia
- ÚJ/BONTATLAN Microsoft Surface Laptop 7 ULTRA 7 32GB 1TB
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
