[{"text_idx": "#000001", "text": "Unuo kvaropoj, ankau\u0306 konataj kiel versor'oj, disponigas oportunan matematikan skribmanieron por reprezentado de orientig\u0302oj kaj rotacioj de objektoj en tri dimensioj.\nKomparitaj al Euler-anguloj ili estas pli simplaj kunmeti kaj eviti la problemon de gimbalseruro.\nKomparitaj al rotaciomatricoj ili estas pli kompaktaj, pli nombre stabilaj, kaj povas esti pli efikaj.\nKvaropoj havas aplikojn en komputila grafiko, komputila vizio, robotiko, navigacio, molekula dinamiko, flugdinamiko, [1]\nenorbita mekaniko de satelitoj [2] kaj kristalografa tekstur analizo."}, {"text_idx": "#000002", "text": "Se uzite por reprezenti rotacion, unuokvaropoj ankau\u0306 estas nomitaj rotaciokvaropoj.\nSe uzite por reprezenti orientig\u0302on (rotacio relative al referenco koordinatsistemo), ili estas nomitaj orientig\u0302okvaropoj au\u0306 sintenkvaropoj."}, {"text_idx": "#000004", "text": "Diferencigo kun respekto al la rotaciokvaropo"}, {"text_idx": "#000006", "text": "1 Bildigante la spacon de rotacioj\n2 Parameterigante la spacon de rotacioj"}, {"text_idx": "#000007", "text": "Konvertig\u0302o al kaj de la matricreprezentantaro 5.2-a\n1 De kvaropo g\u0302is ortogonala matrico\n2 De ortogonala matrico g\u0302is kvaropo"}, {"text_idx": "#000008", "text": "1 De kvaropo g\u0302is ortogonala matrico\n2 De ortogonala matrico g\u0302is kvaropo"}, {"text_idx": "#000009", "text": "En 3-dimensia spaco, lau\u0306 la rotacioteoremo de Euler, c\u0302iu rotacio au\u0306 sekvenco de rotacioj de rigida korpo au\u0306 koordinatsistemo c\u0302irkau\u0306 fikspunkto estas ekvivalenta al ununura rotacio de antau\u0306fiksita angulo \u03b8 koncerne fiksan akson (nomitan la Euler-akso) kiu kuras tra la fikspunkto.\nLa Euler-akso estas tipe reprezentita per unuoblavektora u \u2192 .\nTial, c\u0302iu rotacio en tri dimensioj povas esti reprezentita kiel kombinaj\u0302o de vektoro u \u2192 kaj skalar\u03b8.\nKvaropoj kolapsas simplan c\u0302ifri tiun aks-angulan reprezentantaron en kvar nombroj, kaj povas esti uzitaj por apliki la ekvivalentan rotacion al poziciovektoro, reprezentante punkton relative al la origino en R 3 ."}, {"text_idx": "#000010", "text": "Vektoro kiel ekzemple (2, 3, 4) au\u0306 ( hakilo , jeso , az ) povas esti rewriten kiel 2 mi + 3 j + 4 k au\u0306 hakilo mi + jeso j + az k , kie mi , j , k estas unuoblaj vektoroj reprezentantaj la tri kartezajn aksojn.\nRotacio tra angulo de \u03b8 c\u0302irkau\u0306 la akso difinita per unuobla vektoro"}, {"text_idx": "#000011", "text": "povas esti reprezentita per kvaropo.\nTio povas esti farita uzante etendaj\u0302on de eu\u0306lera formulo:"}, {"text_idx": "#000012", "text": "uzante la Hamilton-produkton, kie p\npks \u2032, py \u2032, pz \u2032) estas la nova poziciovektoro de la punkto post la rotacio.\nEn programeca efektivigo, tio estas atingita konstruante kvaropon kies vektorparto estas p kaj reela parto estas nul kaj tiam elfaranta la kvaropmultiplikon.\nLa vektorparto de la rezulta kvaropo estas la dezirata vektoro p."}, {"text_idx": "#000013", "text": "Matematike, tiu operacio portas la aron de c\u0302iu \"puraj\" kvaropoj p (tiuj kun reela parto egala al nul) - kiuj konsistigas 3-dimensian spacon inter la kvaropoj - en si mem, per la dezirata rotacio koncerne la akson u , de la angulo \u03b8.\n(C\u0302iu reala kvaropo estas portita en si mem per tiu operacio.\nKrom por la celo de rotacioj en 3-dimensia spaco, ni ignoras la realajn kvaropojn."}, {"text_idx": "#000014", "text": "La rotacio estas dekstruma se nia vidlinio indikas en la sama direkto kiel u \u2192 ."}, {"text_idx": "#000015", "text": "En tiu kazo, q estas unuokvaropo kaj"}, {"text_idx": "#000016", "text": "G\u0302i sekvas tiun konjugacion de la produkto de du kvaropoj estas la kunmetaj\u0302o de konjugacioj de tiuj kvaropoj: Se p kaj q estas unuokvaropoj, tiam rotacio (konjugacio) de pq estas"}, {"text_idx": "#000017", "text": "kiun la sama kiel rotacias (konjugante) de q kaj tiam de p .\nLa skalarkomponento de la rezulto estas nepre nul."}, {"text_idx": "#000018", "text": "La kvadrato de kvaroprotacio estas rotacio de dufoje la angulo c\u0302irkau\u0306 la sama akso.\nPli g\u0302enerale q n estas rotacio de n tempigas la angulon c\u0302irkau\u0306 la sama akso kiel q .\nTio povas esti etendita al arbitra reala n, enkalkulante glatan interpoladon inter spacaj orientig\u0302oj;"}, {"text_idx": "#000019", "text": "Du rotaciokvaropoj povas esti kombinitaj en unu ekvivalentan kvaropon fare de la rilato:"}, {"text_idx": "#000020", "text": "en kiu q \u2032 egalrilatas al la rotacio q 1 sekvite per la rotacio q 2 .\n(Noto tiu kvaropmultipliko ne estas kommutativaj.\nTiel, arbitra nombro da rotacioj povas esti kunmetita kune kaj tiam uzita kiel ununura rotacio."}, {"text_idx": "#000021", "text": "Konjuganta p de q rilatas al la operacio p \u21a6 q p q \u22121 ."}, {"text_idx": "#000022", "text": "Ni tial traktas konjugacion de la unuokvaropo"}, {"text_idx": "#000023", "text": "Se f estas la rotaciofunkcio,"}, {"text_idx": "#000024", "text": "Povas esti pruvite ke la inversa de unuokvaropo akirig\u0302as simple s\u0302ang\u0302ante la signon de g\u0302iaj imagaj komponentoj."}, {"text_idx": "#000025", "text": "Tio povas esti simpligita, uzante la ordinarajn regulojn por kvaroparitmetiko, al"}, {"text_idx": "#000026", "text": "Kiel atendite, la rotacio egalrilatas al konservado de kubo tenis fiksa c\u0302e unu poento, kaj rotaciado de g\u0302i 120\u00b0 koncerne la longan diagonalon tra la fikspunkto (observu kiel la tri aksoj estas permutitaj cikle)."}, {"text_idx": "#000027", "text": "Lasu nin montri kiel ni atingis la antau\u0306an rezulton.\nLasu nin evoluigi la esprimon de f (en du stadioj), kaj uzu la regulojn"}, {"text_idx": "#000028", "text": "kiu estas la atendata rezulto.\nC\u0302ar ni povas vidi, tiaj komputadoj estas relative longaj kaj tedaj se farite mane;\ntamen, en komputila programo, tio kvantoj al anoncado de la kvaropan multiplikrutino dufoje."}, {"text_idx": "#000029", "text": "Kiel kun aliaj kabaloj uzi rotaciojn, la centro de rotacio devas esti tradukita al la origino antau\u0306 ol la rotacio estas uzita kaj tradukita reen al sia origina pozicio poste."}, {"text_idx": "#000030", "text": "Zorgo devus esti elmontrita kiam la kvaropo aliras la identecon, c\u0302ar pro degenereco la akso de identecrotacio ne estas klare difinita."}, {"text_idx": "#000031", "text": "Ni rotacios la vektoron p koncerne la vektoron je 90 gradoj"}, {"text_idx": "#000033", "text": "La rotaciita kvarop p' q p q \u00f7 devas esti nuancita kun respekto al la rotacia kvaropo q , kiam la rotacio estas lau\u0306taksa de nombra Optimumigo.\nLa takso de rotacioperspektivo estas esenca proceduro en 3D-objekta registrado au\u0306 fotilalg\u0302ustigo.\nLa derivaj\u0302o povas esti reprezentita utiligante la Matrix Calculus notacion."}, {"text_idx": "#000034", "text": "Derivaj\u0302o povas esti trovita enen."}, {"text_idx": "#000035", "text": "La kompleksaj nombroj povas esti difinitaj lanc\u0302ante abstraktan simbolon mi kiu kontentigas la kutimajn regulojn de algebro kaj plie la regulon mi 2 = \u22121.\nTio estas sufic\u0302a reprodukti c\u0302iujn la reguloj de kompleksanombra aritmetiko: ekzemple:"}, {"text_idx": "#000036", "text": "En lau\u0306 la saman manieron la kvaropoj povas esti difinita lanc\u0302ante abstraktajn simbolojn mi , j , k kiuj kontentigas la regulojn mi 2 = j 2 = k 2 = mi j k = \u22121 kaj la kutimaj algebraj reguloj krom la kommutativa leg\u0302o de multipliko (konata ekzemplo de tia nonkomutative-multipliko estas matrica multipliko).\nEl tio c\u0302iuj la reguloj de kvaroparitmetiko sekvas: ekzemple, oni povas montri tion:"}, {"text_idx": "#000037", "text": "Kiam kvaropoj estas uzitaj en geometrio, estas pli oportune difini ilin kiel skalarpluson vektoron:"}, {"text_idx": "#000038", "text": "Tiuj kiuj studis vektorojn en la lernejo eble trovos stranga aldoni nombron al vektoro, c\u0302ar ili estas objektoj de tre malsamaj naturoj, au\u0306 multobligi du vektorojn kune, c\u0302ar tiu operacio estas kutime nedifinita.\nTamen, se oni memoras ke g\u0302i estas nura notacio por la realaj kaj imaginaraj partoj de kvaropo, g\u0302i ig\u0302as pli legitima.\nEn aliaj vortoj, la g\u0302usta rezonado estas la aldono de du kvaropoj, unu kun nul vektoro /imaginara parto, kaj another unu kun nul skalaro-/ reela parto:"}, {"text_idx": "#000039", "text": "Ni povas esprimi kvaropmultiplikon en la moderna lingvo de vektorkruco kaj skalarproduktoj (kiuj estis fakte inspiritaj per la kvaropoj en la unua loko [5] ).\nDum multobligado de la vektoro/imaginaraj partoj, modloko de la reguloj mi 2 = j 2 = k 2 = ijk = \u22121 ni havas la kvaropan multiplikregulon:"}, {"text_idx": "#000040", "text": "Kvaropmultipliko estas nonkomutative (pro la vektora produto, kiu kontrau\u0306commutes), dum skalar-skalaraj kaj skalar-vektoraj multiplikoj navedas.\nEl tiuj reguloj g\u0302i tuj sekvas tion ( vidu detalojn):"}, {"text_idx": "#000041", "text": "La (maldekstre kaj dekstre) multiplika inversa au\u0306 reciproka de nonzerkvaropo ricevas per la konjugat-al-norma rilatumo ( vidu detalojn):"}, {"text_idx": "#000042", "text": "kiel povas esti konfirmita per rekta kalkulo."}, {"text_idx": "#000043", "text": "Nia celo estas montri tion"}, {"text_idx": "#000044", "text": "Tio estas la formulo de rotacio de \u03b1 c\u0302irkau\u0306 la u \u2192 akso."}, {"text_idx": "#000045", "text": "Tre formala klarigo de la trajtoj uzitaj en tiu sekcio ricevas fare de Altman."}, {"text_idx": "#000046", "text": "Bildigante la spacon de rotacioj"}, {"text_idx": "#000047", "text": "Unuokvaropoj reprezentas la grupon de Eu\u0306klidaj rotacioj en tri dimensioj lau\u0306 tre simpla maniero.\nLa korespondado inter rotacioj kaj kvaropoj povas esti komprenita unue bildigante la spacon de rotacioj mem."}, {"text_idx": "#000051", "text": "Parameterigante la spacon de rotacioj"}, {"text_idx": "#000052", "text": "Ni povas parameterigi la surfacon de sfero kun du koordinatoj, kiel ekzemple latitudo kaj longitudo.\nSed latitudo kaj longitudo estas mis-kondutitaj ( degenerita) c\u0302e la nordaj kaj sudaj polusoj, kvankam la poloj ne estas interne diferencaj de iuj aliaj punktoj sur la sfero.\nC\u0302e la polusoj (latitudoj +90\u00b0 kaj \u221290\u00b0), la longitudo ig\u0302as sensenca."}, {"text_idx": "#000053", "text": "Povas esti montrite ke neniu du-parametra koordinatsistemo povas eviti tian degenerecon.\nNi povas eviti tiajn problemojn enkonstruante la sferon en tri-dimensia spaco kaj parameterigante g\u0302in kun tri kartezaj koordinatoj ( w, x, y), lokante la nordan poluson c\u0302e ( w, x, y) = (1, 0, 0), la suda poluso c\u0302e ( w, x, y) = (\u22121, 0, 0), kaj la ekvatoro c\u0302e w = 0, x 2 + y 2 = 1.\nPunktoj sur la sfero kontentigas la limon w 2 + x 2 + y 2 = 1, tiel ke ni dau\u0306re havas nur du gradojn da libereco kvankam ekzistas tri koordinatoj."}, {"text_idx": "#000054", "text": "En lau\u0306 la saman manieron la hipersfera spaco de 3D rotacioj povas esti parameterigita per tri anguloj ( Euler-anguloj), sed eventuala tia parametroigo estas degenerita c\u0302e kelkaj punktoj sur la hipersfero, kondukante al la problemo de gimbalseruro.\nNi povas eviti tion uzante kvar Eu\u0306klidajn koordinatojn w, x, y, z , kun w 2 + x 2 + y 2 + z 2 = 1."}, {"text_idx": "#000055", "text": "Klarigante la trajtojn de kvaropoj kun rotacioj"}, {"text_idx": "#000056", "text": "La multipliko de kvaropoj estas ne-kommutativa.\nTiu fakto klarigas kiel kun la p \u21a6 q p q \u22121 formulo povas labori entute, havante q q \u22121 = 1 de difino.\nC\u0302ar la multipliko da unuokvaropoj egalrilatas al la kunmetaj\u0302o de tridimensiaj rotacioj, tiu posedaj\u0302o povas farig\u0302i intuicia per montrado ke tridimensiaj rotacioj ne estas kommutativaj g\u0302enerale."}, {"text_idx": "#000057", "text": "Aro du libroj plej proksime al unu la alian.\nRotaciu unu el ili 90 gradoj dekstruma c\u0302irkau\u0306 la z akso, tiam turnas al g\u0302i 180 gradojn c\u0302irkau\u0306 la absciso.\nPrenu la alian libron, j\u0302etas g\u0302i 180\u00b0 c\u0302irkau\u0306 absciso unue, kaj 90\u00b0 dekstrumaj c\u0302irkau\u0306 z poste.\nLa du libroj ne finas supren paralelon.\nTio montras ke, g\u0302enerale, la kunmetaj\u0302o de du malsamaj rotacioj proksimume du apartaj spacaj aksoj ne navedos."}, {"text_idx": "#000058", "text": "La vektoro vektora produto, uzita por difini la aks-angulan reprezentantaron, transigas orientig\u0302on (\"handedness\") al spaco: en tridimensia vektora spaco, la tri vektoroj en la ekvacio \u00d7 b = c c\u0302iam formos lertan aron (au\u0306 maldekstramana aro, depende de kiel la vektora produto estas difinita), tiel fiksante orientig\u0302on en la vektora spaco.\nAlternative, la dependeco de orientig\u0302o estas esprimita en rilatado al tia u \u2192 kiu precizigas rotacion kiel al aksaj vektoroj .\nEn kvaterniona formalismo la elekto de orientig\u0302o de la spaco egalrilatas al ordo de multipliko:\nij = k sed jus\nSe oni inversigas la orientig\u0302on, tiam la formulo supre ig\u0302as p \u21a6 q \u22121 p q , t.e., trupo da q estas anstatau\u0306igita kun la konjugatkvaropo - la sama konduto en aksaj vektoroj."}, {"text_idx": "#000059", "text": "Komparo kun aliaj reprezentadoj de rotacioj"}, {"text_idx": "#000060", "text": "La reprezentado de rotacio kiel kvaropo (4 nombroj) estas pli kompakta ol la reprezentantaro kiel ortogonala matrico (9 nombroj).\nKrome, por antau\u0306fiksita akso kaj angulo, oni povas facile konstrui la ekvivalentan kvaropon, kaj inverse, por antau\u0306fiksita kvaropo oni povas facile legi de la akso kaj la angulo.\nAmbau\u0306 de tiuj estas multe pli duraj kun matricoj au\u0306 Euler-anguloj."}, {"text_idx": "#000061", "text": "En videoludoj kaj aliaj aplikoj, oni ofte estas interesita pri \"glataj rotacioj\", signifante ke la sceno devus malrapide rotacii kaj ne en ununura pas\u0302o.\nTio povas esti plenumita elektante kurbon kiel ekzemple la sfera linia interpolado en la kvaropoj, kie unu finpunkto estas la identectransformo 1 (au\u0306 iu alia komenca rotacio) kaj la alia estaj\u0302o la intencita fina rotacio.\nTio estas pli problema kun aliaj reprezentadoj de rotacioj."}, {"text_idx": "#000062", "text": "Dum kunmetado de pluraj rotacioj sur komputilo, preterpasi erarojn nepre akumulig\u0302as.\nKvaropo kiun tio estas iomete erara dau\u0306re reprezentas rotacion post estado normaligita: matrico kiun tio estas iomete erara eble ne estas ortogonala plu kaj estas pli malmola transformi reen al bonorda ortogonala matrico."}, {"text_idx": "#000063", "text": "Kvaropoj ankau\u0306 evitas fenomenon nomitan gimbalseruro kiu povas rezulti kie, ekzemple en pitch/yaw/roll-rotaciaj sistemoj, la tonalto estas rotaciita 90\u00b0 supren au\u0306 malsupren, tiel ke devio kaj rulo tiam egalrilatas al la sama decidpropono, kaj grado da libereco de rotacio estas perdita.\nEn gimbal-bazita aerospaco inercinavigacia sistemo, ekzemple, tio povus havi katastrofajn rezultojn se la aviadilo estas en kruta plong\u0302o au\u0306 supreniro."}, {"text_idx": "#000065", "text": "De kvaropo g\u0302is ortogonala matrico"}, {"text_idx": "#000067", "text": "La kvaropreprezentado de tiu rotacio ricevas per:"}, {"text_idx": "#000068", "text": "Ankau\u0306, kvaropmultipliko estas difinita kiel (supozante a kaj b estas kvaropoj, kiel z super):"}, {"text_idx": "#000069", "text": "kie la ordo, b estas gravaj c\u0302ar la vektora produto de du vektoroj ne estas kommutativa."}, {"text_idx": "#000070", "text": "De ortogonala matrico g\u0302is kvaropo"}, {"text_idx": "#000071", "text": "Oni devas esti singarda dum transformado de rotaciomatrico al kvaropo, c\u0302ar pluraj simplaj metodoj tendencas esti malstabilaj kiam la spuro (sumo de la diagonalaj elementoj) de la rotaciomatrico estas nul au\u0306 tre malgranda.\nPor stabila metodo de transformado de ortogonala matrico al kvaropo, vidas Rotaciomatricnombron Quaternion."}, {"text_idx": "#000072", "text": "C\u0302i-supra sekcio priskribis kiel por reakiri kvaropon q de 3 \u00d7 3\nSupozi, aliflanke, ke ni havas iun matricon Q kiu ne estas pura rotacio - pro je eraroj, ekzemple - kaj ni deziras trovi la kvaropon q kiun la plej granda parto precize reprezentas Q.\nEn tiu kazo ni konstruas simetrian 4 \u00d7 4 matrico"}, {"text_idx": "#000073", "text": "kaj trovu la ajgenvektoro ( x, y, z, w) egalrilati al la plej granda Eigen-valoro (kiu valoro estos 1 se kaj nur se Q estas pura rotacio).\nLa kvaropo tiel akirita egalrilatos al la rotacio plej proksima al la origina matrico Q [ dubindaj - j\u0302etdiskoj ] [7]"}, {"text_idx": "#000074", "text": "Tiu sekcio diskutas la spektaklimplicojn de uzado de kvaropoj kontrau\u0306 aliaj metodoj (akso/angulo au\u0306 rotaciomatricoj) por elfari rotaciojn en 3D."}, {"text_idx": "#000075", "text": "\u00f7 Noto: angulo/akso povas esti stokitaj kiel 3 elementoj multobligante la unuan rotaciakson de la duono de la rotacioperspektivo, formante la logaritmon de la kvaropo, je la kosto de kromaj kalkuloj."}, {"text_idx": "#000076", "text": "\u00f7 Noto: Kvaropoj postulas implican konvertig\u0302on al rotaci-simila matrico (12 multobligas kaj 12 aldonas/subtrahas), kiu ebenigas la sekvajn vektorojn rotaciante koston kun la rotacia matricmetodo"}, {"text_idx": "#000077", "text": "Ekzistas tri bazaj aliroj al rotaciado de vektoro v \u2192 :"}, {"text_idx": "#000079", "text": "Paroj de unuokvaropoj kiel rotacioj en 4D spaceto"}, {"text_idx": "#000080", "text": "Paro de unuokvaropoj z l kaj z r povas reprezenti ajnan rotacion en 4D spaceto.\nSurbaze de kvara dimensia vektoro v \u2192 , kaj s\u0302ajnigante ke g\u0302i estas kvaropo, ni povas rotacii la vektoron v \u2192 kiel tio:"}, {"text_idx": "#000081", "text": "La paro de matricoj reprezentas rotacion de R4.\nTial, ekzistas du navedaj subgrupoj de la aro de kvar dimensiaj rotacioj.\nArbitraj kvar dimensiaj rotacioj havas 6 gradojn da libereco, c\u0302iu matrico reprezentas 3 el tiuj 6 gradoj da libereco."}, {"text_idx": "#000082", "text": "C\u0302ar la generatoroj de la kvar-dimensiaj rotacioj povas esti reprezentitaj fare de paroj de kvaropoj (jene), c\u0302iuj kvar-dimensiaj rotacioj ankau\u0306 povas esti reprezentitaj."}, {"text_idx": "#000083", "text": "Konvertig\u0302o inter kvaropoj kaj Euler-anguloj"}]