Onko seuraava funktio "identtinen"
function id(p) {
var ang = Math.atan2(p.x, p.y);
var r = Math.sqrt( p.x**2 p.y**2 );
return {x: r*Math.cos(ang), y: r*Math.sin(ang)};
}
Ei ole, miten siitä atan2kkosesta saa pisteen takas? Pitääkö lisätä PI/4? Sit taas toiset pisteet menee väärin.
/* tässä olis missä oikeastaan yritän käyttää, mut en ymmärrä miks tää ei voi yksinkertasesti mulle selvitä että miten nää kulmat menee. (cos, sin) on yksikköympyrä ihan oikein (1, 0):sta vastapäivään. Mutta
Math.atan2(1,0) == Math.PI/4.
Jos siitä vähentää
Olkoon meillä keskipiste C=(cx, cy) ja sitten piste A = (ax, ay). Halutaan pyöräyttää A:ta kulman theta (radiaaneja) C:n ympäri.
function rot(a, c, theta) {
var r = Math.sqrt( (a.x-c.x)**2 (a.y-c.y)**2 );
var startAng = Math.atan2(a.x-c.x, a.y-c.y); // -Math.PI/4 ???
return { x: c.x r*Math.cos(startAng theta), y: c.y r*Math.sin(startAng theta) };
}
console.log( rot({x: 2, y:2}, {x:1, y:1}, Math.PI/4) )
*/
Math.atan2 vs. (cos, sin)
10
352
Vastaukset
- Turbo-Urpo1
Nämä Sini, Kosini ja Tangenttit ja kaikki muutkin trigonometria funktiot on syvältä, en niitä ole koskaan ymmärtänyt, jo kouluaikaan ne oli yhtä painajaista, eikä tilanne ole yhtään muuttunut.
Toi mun sotku jäi jotenkin kesken
Jos siitä vähentää... siis sen PI/4:n (ja mistä hemmetistä tää luku tulee?), niin ei se toimi sittenkään
Onko tämä funktio oikein (eli pitäisi kiertää pistettä p keskipisteen c ympäri kulman ang verran):
var rotPoint = function(p, ang, c={x:0, y:0}) {
var x = p.x - c.x;
var y = p.y - c.y;
var cosA = Math.cos(ang);
var sinA = Math.sin(ang);
return { x: cosA*x - sinA*y c.x, y: sinA*x cosA*y c.y }
};
Eli siirretään ensin origoon, sitten kierto (matriisilaskuna) ja sitten siirto takaisin.
Tässähän ei atan2:sta tarvita, mutta silti jäi mietityttämään, että minkä kulman se antaa
No, nythän se antaakin
Math.atan2(1,0)
1.5707963267948966
Miten lienen saanut PI/4 viime kerralla?Mä pistin varmaan Math.atan, eli siitä jäi se kakkonen pois ja se laski yksargumenttisa tietenkin Math.atan(1):n joka on neljäsosa pii.
No nyt selkiskii docseista:
The Math.atan2() method returns a numeric value between -π and π representing the angle theta of an (x, y) point. This is the counterclockwise angle, measured in radians, between the positive X axis, and the point (x, y). Note that the arguments to this function pass the y-coordinate first and the x-coordinate second.
Eli y-koordinaatti ensin, miksi helvetissä?!?!- Turbo-Urpo1
Mikähän tuossakin viestissä muka oli sääntöjen vastaista, pelkkää myötä elämistä minkkilaukun ongelman kanssa. Tätä oli jo vaikea käsittää.
Mikkilaukku: Otan osaa, vaikken voikkaan mitenkään auttaa.
Vieläköhän tästäkin löytyy jotain sääntöjen vastaista.
- Turbo-Urpo1
Nämä minkkilaukun ongelmat ovat aina näin teknisiä juttuja, jotta niihin ei kukaan osaa oikeesti ratkaisua kertoa, huumorilla kuittasin, ja ylläpito poisti käsittämättömästä syystä.
Olis kyllä hiton mukava tietää mikä siinä oli vikana.Kiitti viestistä, nään sen kyllä "inboxissa" (ja pysty sieltä lukemaankin, kun ei ollu liian pitkä) vaikka onkin poistettu. Oisko tekoäly poistanu jostain kumman syystä(?)
Ongelma jo selvisikin, eli argumentit täytyy antaa atan2:lle eri järjestyksessä, siis
a == Math.atan2(Math.sin(a), Math.cos(a))
kun a on väliltä [-pi, pi].
Sitä miksi se menee noin perin, on mm. täällä pohdittu: https://stackoverflow.com/questions/1045630/why-are-the-arguments-to-atan2-y-x-rather-than-x-y
- Turbo-Urpo1
Hakkumiset, mimittelyt ja sen semmoset roikkuu kyllä ketjuissa, sitten hyvä tahtoiset osan otot poistetaan, mikä siellä päässä oikein mättää.
- Turbo-Urpo1
Tuli tuossa mieleen että jos se huumori sattu arkaan paikkaan, ja sinä mikkilaukku poistatit sen viestin, niin ihan varoilta teen julkisen anteeksi pyynnön. En koskaan ole pahalla ajatellut sellaista joka noinkin paljon antaa tälle sivustolle kuin sinäkin olet antanut. Mikäli vastaisuudessa jotain viestiäsi kommentoin, älä ihmeessä ajattele että teen sen ilkeyttäni. Arvostatan suunnattomasti panostasi, ja pidän pouliasi ilkeilijöitä vastaan noustessa.
Vaikken uskokkaan sinun sitä poistoa vaatineen, niin
Olen hyvin pahoillani väärinkäsityksestä, ainoastaan hyvän mielen tuottamista tavoittelin. Minä vittuilen vain vittuilijoille jota ovat sen ansainneet. - jotainkirjaimia
Jaa heippa minkkilaukku aina kaikkien rakastama ohjelmoija... olin mökillä, kaikenlaista... uudestaankin joskus lähden lomille, toivottavasti ennen jouluakin.
Tämä kysymys, perustuu siihen että onko 0=1, onko nolla 0=0...
Tämä kaataa tietystikin Einsteinin teorin kaikesta jos joku todistaa matemaattisesti sekä fyysisesti että 0=?
Joka onkin fakta tietysti, kukaan ei tiedä nollan arvoa, joten nollan arvon voi olettaa vaikka olevan 3, kokonaiskuluna. Kuten äärettömyyden arvonkin voi jokainen itse määritellä.
Jospa sovitaan että 'ääretön' onkin lukuarvontaan 17?
Matematiikka ja fysiikahan ovat vain täynnä "sovittuja sääntöjä". - jotainkirjaimia
..jatkan vielä sitten eli yhtälössä silloin nolla ja ääretön olisivat kumpikin 17 (vuotiaita, en sitä tarkoita)... vaan että nollan tilalle yhtälöön 17.
Ketjusta on poistettu 1 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
S-kaupoissa on nykyään ihanaa käydä
Kun niissä ei enää käy satuolentoihin uskovat hihhuIit eivätkä persut. Asiakaskunta on huomattavasti siistiytynyt muutam25514257Riikka runnoo! Uutta velkaa tänä vuonna 17 mrd. euroa
Tirsk. Nyt kyllä hihityttää kuin pientä eläintä. Riikka takoo maailmanennätyksiä tasaiseen tahtiin. " [Riikka] joutuu637235Jens Ihlen (ex Kukka) poika todistaa oikeudessa
10:49 "Välit ovat olemattomat" Minkälainen isäsi ja sinun välinen suhde on tällä hetkellä? "Minulla ei ole minkäännäkö2047035Kela maksoi etuuksia 17,3 mrd. eur, yritykset sai 10,6 mrd.
Tuohon päälle vietiin vielä palkansaajilta työeläkeloisille 27,5 miljardia euroa. Etenkin Suomen Sosialistiset Yrittäjä425054K-kaupassa on mukava käydä, kun ei tarvitse katsella köyhiä
vasemmistolaisia, joista monet myös varastavat. Mielellään maksaa vähän enemmän tuotteista K-kaupassa, jotka ovat paljon1114829Näin tyhmä vasemmistolainen on: "S-kaupoissa on nykyään ihanaa käydä
kun siellä ei ole hihhuleita eikä persuja." Vain tyhmä eli heikkoälyinen vasemmistolainen voi tehdä noin lapsellisia ju754694Suomeen ei kuulu ihmiset jotka ei halua kätellä toisia ihmisiä, koska tämä on vääräuskoinen
Nainen joka ei halunnut kätellä Stubbia on selvästi ääripään muslimi, eli sitä sakkia josta niitä ongelmia koituu. Ulos804415PS:n Purra teki -JÄTTI-VELAT
* * PS:n Purra teki -JÄTTI-VELAT - ! ja jätti MaksuHuolet -Kansan Maksettavaksi -! *194381Suomessa on ollut suurtyöttömyyttä ennenkin, ja lääkäriin pääsee nykyäänkin
Täällähän oli jonkun sekopään(vas.) juttu, että ennen ei ollut työttömyyttä ja lääkäriin pääsi. Siihen alkoi tietysti ko754142Kysymys: Kuinka moneen maahan neuvosto-venäjä on hyökännyt
viimeisten 90-vuoden aikana? Ja lähinnä on siis kyse neuvosto-venäjän naapurimaista - kuten Suomesta. Lista on huomatta1023938
