Come calcoli i gradi tra due punti sul bordo di un cerchio in Swift.angolo di calcolo tra due punti sul bordo del cerchio Swift SpriteKit
risposta
punti dato p1
, p2
su un cerchio con il centro center
, si dovrebbe calcolare i vettori di differenza prima:
let v1 = CGVector(dx: p1.x - center.x, dy: p1.y - center.y)
let v2 = CGVector(dx: p2.x - center.x, dy: p2.y - center.y)
Poi
let angle = atan2(v2.dy, v2.dx) - atan2(v1.dy, v1.dx)
è il (regia) angolo tra quei vettori in radianti e
var deg = angle * CGFloat(180.0/M_PI)
l'angolo in gradi. Il valore calcolato può essere compreso tra -360 .. 360, in modo da potrebbe desiderare di normalizzare al range 0 < = deg < 360 con
if deg < 0 { deg += 360.0 }
questo codice funzionerà su un iPad? tutto ciò che accadrà è che il cerchio si allargherà un po '. – PoKoBros
@PoKoBros: questo è solo matematica, funziona su qualsiasi dispositivo. Calcola solo un angolo, quindi cosa intendi per "il cerchio si allargherà un po '"? –
Intendo solo che il raggio del cerchio raddoppierà ok un iPad – PoKoBros
- 1. Angolo Matlab tra due punti
- 2. Calcolo di punti equidistanti sul perimetro di un cerchio
- 3. Calcolo di una curva quad tra due punti xy
- 4. Calcolo del punto sulla circonferenza del cerchio dall'angolo in C#?
- 5. Disegna rettangolo/cerchio e triangolo in Spritekit con due colori. . .
- 6. Calcolo della distanza tra due punti (latitudine, longitudine)
- 7. Java: calcolo dell'angolo tra due punti in gradi
- 8. Calcolo dell'area tra due curve
- 9. Calcolo del rettangolo con un angolo di un poligono
- 10. Trova angolo di un punto dal centro del cerchio
- 11. Come funziona collisionBitMask? Swift/SpriteKit
- 12. punto Javascript per punto di calcolo angolo
- 13. Cerchio CSS con bordo
- 14. Come calcolare Azimuth (angolo a nord) tra due coordinate WGS84
- 15. Disegno arco con 2 punti e centro del cerchio
- 16. Maschera Swift del livello cerchio su UIView
- 17. Ottieni la distanza tra due punti geografici
- 18. Punti più vicini di due poligoni
- 19. Sottoclasse classi SpriteKit in Swift
- 20. Angolo firmato tra due vettori senza un piano di riferimento
- 21. Geoserver - Come posso disegnare una linea geodetica che rappresenta il grande cerchio tra due punti
- 22. Come posso calcolare la distanza tra due punti in MkMapview?
- 23. Gioco base swift/spritekit - problemi di ridisegno
- 24. Calcolo del tempo tra due clic in Javascript
- 25. UIView con angolo arrotondato e bordo ha il colore del bordo sbagliato
- 26. Calcolando l'angolo tra Punti
- 27. Il cerchio di bordo sembra sfocato
- 28. cerchio di caricamento Android (spinner) tra due attività
- 29. UIView con angolo rotondo e bordo bianco
- 30. del nodo con SpriteKit
Sai per certo che questo è un cerchio? Tipo, conosci il centro del cerchio? Poiché due punti non fanno un cerchio, poiché un numero infinito di cerchi diversi può essere descritto da due punti: è necessario un terzo, sul cerchio o sull'origine. – corsiKa
conosco anche l'origine @corsiKa – PoKoBros
Quindi puoi usare solo arctan (delta y/delta x). Non so cosa sia la chiave sprite veloce, quindi non sarei sicuro del formato del codice per quello. Modifica: la maggior parte dei linguaggi di programmazione che utilizzano trig utilizza i radianti, quindi l'output potrebbe essere in radianti. Se c'è una funzione per convertirla in gradi, basta usare quella; altrimenti, usa la formula per convertirla in gradi che è rads * 180/pi – Muhatashim