module-vec2.html 79 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <title>JSDoc: Module: vec2</title>
  6. <script src="scripts/prettify/prettify.js"> </script>
  7. <script src="scripts/prettify/lang-css.js"> </script>
  8. <!--[if lt IE 9]>
  9. <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
  10. <![endif]-->
  11. <link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
  12. <link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
  13. </head>
  14. <body>
  15. <div id="main">
  16. <h1 class="page-title">Module: vec2</h1>
  17. <section>
  18. <header>
  19. </header>
  20. <article>
  21. <div class="container-overview">
  22. <div class="description">2 Dimensional Vector</div>
  23. <dl class="details">
  24. <dt class="tag-source">Source:</dt>
  25. <dd class="tag-source"><ul class="dummy"><li>
  26. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line3">line 3</a>
  27. </li></ul></dd>
  28. </dl>
  29. </div>
  30. <h3 class="subsection-title">Methods</h3>
  31. <h4 class="name" id=".add"><span class="type-signature">(static) </span>add<span class="signature">(out, a, b)</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  32. <div class="description">
  33. Adds two vec2's
  34. </div>
  35. <h5>Parameters:</h5>
  36. <table class="params">
  37. <thead>
  38. <tr>
  39. <th>Name</th>
  40. <th>Type</th>
  41. <th class="last">Description</th>
  42. </tr>
  43. </thead>
  44. <tbody>
  45. <tr>
  46. <td class="name"><code>out</code></td>
  47. <td class="type">
  48. <span class="param-type">vec2</span>
  49. </td>
  50. <td class="description last">the receiving vector</td>
  51. </tr>
  52. <tr>
  53. <td class="name"><code>a</code></td>
  54. <td class="type">
  55. <span class="param-type">vec2</span>
  56. </td>
  57. <td class="description last">the first operand</td>
  58. </tr>
  59. <tr>
  60. <td class="name"><code>b</code></td>
  61. <td class="type">
  62. <span class="param-type">vec2</span>
  63. </td>
  64. <td class="description last">the second operand</td>
  65. </tr>
  66. </tbody>
  67. </table>
  68. <dl class="details">
  69. <dt class="tag-source">Source:</dt>
  70. <dd class="tag-source"><ul class="dummy"><li>
  71. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line84">line 84</a>
  72. </li></ul></dd>
  73. </dl>
  74. <h5>Returns:</h5>
  75. <div class="param-desc">
  76. out
  77. </div>
  78. <dl>
  79. <dt>
  80. Type
  81. </dt>
  82. <dd>
  83. <span class="param-type">vec2</span>
  84. </dd>
  85. </dl>
  86. <h4 class="name" id=".angle"><span class="type-signature">(static) </span>angle<span class="signature">(a, b)</span><span class="type-signature"> &rarr; {Number}</span></h4>
  87. <div class="description">
  88. Get the angle between two 2D vectors
  89. </div>
  90. <h5>Parameters:</h5>
  91. <table class="params">
  92. <thead>
  93. <tr>
  94. <th>Name</th>
  95. <th>Type</th>
  96. <th class="last">Description</th>
  97. </tr>
  98. </thead>
  99. <tbody>
  100. <tr>
  101. <td class="name"><code>a</code></td>
  102. <td class="type">
  103. <span class="param-type">vec2</span>
  104. </td>
  105. <td class="description last">The first operand</td>
  106. </tr>
  107. <tr>
  108. <td class="name"><code>b</code></td>
  109. <td class="type">
  110. <span class="param-type">vec2</span>
  111. </td>
  112. <td class="description last">The second operand</td>
  113. </tr>
  114. </tbody>
  115. </table>
  116. <dl class="details">
  117. <dt class="tag-source">Source:</dt>
  118. <dd class="tag-source"><ul class="dummy"><li>
  119. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line478">line 478</a>
  120. </li></ul></dd>
  121. </dl>
  122. <h5>Returns:</h5>
  123. <div class="param-desc">
  124. The angle in radians
  125. </div>
  126. <dl>
  127. <dt>
  128. Type
  129. </dt>
  130. <dd>
  131. <span class="param-type">Number</span>
  132. </dd>
  133. </dl>
  134. <h4 class="name" id=".ceil"><span class="type-signature">(static) </span>ceil<span class="signature">(out, a)</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  135. <div class="description">
  136. Math.ceil the components of a vec2
  137. </div>
  138. <h5>Parameters:</h5>
  139. <table class="params">
  140. <thead>
  141. <tr>
  142. <th>Name</th>
  143. <th>Type</th>
  144. <th class="last">Description</th>
  145. </tr>
  146. </thead>
  147. <tbody>
  148. <tr>
  149. <td class="name"><code>out</code></td>
  150. <td class="type">
  151. <span class="param-type">vec2</span>
  152. </td>
  153. <td class="description last">the receiving vector</td>
  154. </tr>
  155. <tr>
  156. <td class="name"><code>a</code></td>
  157. <td class="type">
  158. <span class="param-type">vec2</span>
  159. </td>
  160. <td class="description last">vector to ceil</td>
  161. </tr>
  162. </tbody>
  163. </table>
  164. <dl class="details">
  165. <dt class="tag-source">Source:</dt>
  166. <dd class="tag-source"><ul class="dummy"><li>
  167. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line139">line 139</a>
  168. </li></ul></dd>
  169. </dl>
  170. <h5>Returns:</h5>
  171. <div class="param-desc">
  172. out
  173. </div>
  174. <dl>
  175. <dt>
  176. Type
  177. </dt>
  178. <dd>
  179. <span class="param-type">vec2</span>
  180. </dd>
  181. </dl>
  182. <h4 class="name" id=".clone"><span class="type-signature">(static) </span>clone<span class="signature">(a)</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  183. <div class="description">
  184. Creates a new vec2 initialized with values from an existing vector
  185. </div>
  186. <h5>Parameters:</h5>
  187. <table class="params">
  188. <thead>
  189. <tr>
  190. <th>Name</th>
  191. <th>Type</th>
  192. <th class="last">Description</th>
  193. </tr>
  194. </thead>
  195. <tbody>
  196. <tr>
  197. <td class="name"><code>a</code></td>
  198. <td class="type">
  199. <span class="param-type">vec2</span>
  200. </td>
  201. <td class="description last">vector to clone</td>
  202. </tr>
  203. </tbody>
  204. </table>
  205. <dl class="details">
  206. <dt class="tag-source">Source:</dt>
  207. <dd class="tag-source"><ul class="dummy"><li>
  208. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line28">line 28</a>
  209. </li></ul></dd>
  210. </dl>
  211. <h5>Returns:</h5>
  212. <div class="param-desc">
  213. a new 2D vector
  214. </div>
  215. <dl>
  216. <dt>
  217. Type
  218. </dt>
  219. <dd>
  220. <span class="param-type">vec2</span>
  221. </dd>
  222. </dl>
  223. <h4 class="name" id=".copy"><span class="type-signature">(static) </span>copy<span class="signature">(out, a)</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  224. <div class="description">
  225. Copy the values from one vec2 to another
  226. </div>
  227. <h5>Parameters:</h5>
  228. <table class="params">
  229. <thead>
  230. <tr>
  231. <th>Name</th>
  232. <th>Type</th>
  233. <th class="last">Description</th>
  234. </tr>
  235. </thead>
  236. <tbody>
  237. <tr>
  238. <td class="name"><code>out</code></td>
  239. <td class="type">
  240. <span class="param-type">vec2</span>
  241. </td>
  242. <td class="description last">the receiving vector</td>
  243. </tr>
  244. <tr>
  245. <td class="name"><code>a</code></td>
  246. <td class="type">
  247. <span class="param-type">vec2</span>
  248. </td>
  249. <td class="description last">the source vector</td>
  250. </tr>
  251. </tbody>
  252. </table>
  253. <dl class="details">
  254. <dt class="tag-source">Source:</dt>
  255. <dd class="tag-source"><ul class="dummy"><li>
  256. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line56">line 56</a>
  257. </li></ul></dd>
  258. </dl>
  259. <h5>Returns:</h5>
  260. <div class="param-desc">
  261. out
  262. </div>
  263. <dl>
  264. <dt>
  265. Type
  266. </dt>
  267. <dd>
  268. <span class="param-type">vec2</span>
  269. </dd>
  270. </dl>
  271. <h4 class="name" id=".create"><span class="type-signature">(static) </span>create<span class="signature">()</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  272. <div class="description">
  273. Creates a new, empty vec2
  274. </div>
  275. <dl class="details">
  276. <dt class="tag-source">Source:</dt>
  277. <dd class="tag-source"><ul class="dummy"><li>
  278. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line13">line 13</a>
  279. </li></ul></dd>
  280. </dl>
  281. <h5>Returns:</h5>
  282. <div class="param-desc">
  283. a new 2D vector
  284. </div>
  285. <dl>
  286. <dt>
  287. Type
  288. </dt>
  289. <dd>
  290. <span class="param-type">vec2</span>
  291. </dd>
  292. </dl>
  293. <h4 class="name" id=".cross"><span class="type-signature">(static) </span>cross<span class="signature">(out, a, b)</span><span class="type-signature"> &rarr; {vec3}</span></h4>
  294. <div class="description">
  295. Computes the cross product of two vec2's
  296. Note that the cross product must by definition produce a 3D vector
  297. </div>
  298. <h5>Parameters:</h5>
  299. <table class="params">
  300. <thead>
  301. <tr>
  302. <th>Name</th>
  303. <th>Type</th>
  304. <th class="last">Description</th>
  305. </tr>
  306. </thead>
  307. <tbody>
  308. <tr>
  309. <td class="name"><code>out</code></td>
  310. <td class="type">
  311. <span class="param-type">vec3</span>
  312. </td>
  313. <td class="description last">the receiving vector</td>
  314. </tr>
  315. <tr>
  316. <td class="name"><code>a</code></td>
  317. <td class="type">
  318. <span class="param-type">vec2</span>
  319. </td>
  320. <td class="description last">the first operand</td>
  321. </tr>
  322. <tr>
  323. <td class="name"><code>b</code></td>
  324. <td class="type">
  325. <span class="param-type">vec2</span>
  326. </td>
  327. <td class="description last">the second operand</td>
  328. </tr>
  329. </tbody>
  330. </table>
  331. <dl class="details">
  332. <dt class="tag-source">Source:</dt>
  333. <dd class="tag-source"><ul class="dummy"><li>
  334. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line344">line 344</a>
  335. </li></ul></dd>
  336. </dl>
  337. <h5>Returns:</h5>
  338. <div class="param-desc">
  339. out
  340. </div>
  341. <dl>
  342. <dt>
  343. Type
  344. </dt>
  345. <dd>
  346. <span class="param-type">vec3</span>
  347. </dd>
  348. </dl>
  349. <h4 class="name" id=".dist"><span class="type-signature">(static) </span>dist<span class="signature">()</span><span class="type-signature"></span></h4>
  350. <div class="description">
  351. Alias for vec2.distance
  352. </div>
  353. <dl class="details">
  354. <dt class="tag-source">Source:</dt>
  355. <dd class="tag-source"><ul class="dummy"><li>
  356. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line572">line 572</a>
  357. </li></ul></dd>
  358. </dl>
  359. <h4 class="name" id=".distance"><span class="type-signature">(static) </span>distance<span class="signature">(a, b)</span><span class="type-signature"> &rarr; {Number}</span></h4>
  360. <div class="description">
  361. Calculates the euclidian distance between two vec2's
  362. </div>
  363. <h5>Parameters:</h5>
  364. <table class="params">
  365. <thead>
  366. <tr>
  367. <th>Name</th>
  368. <th>Type</th>
  369. <th class="last">Description</th>
  370. </tr>
  371. </thead>
  372. <tbody>
  373. <tr>
  374. <td class="name"><code>a</code></td>
  375. <td class="type">
  376. <span class="param-type">vec2</span>
  377. </td>
  378. <td class="description last">the first operand</td>
  379. </tr>
  380. <tr>
  381. <td class="name"><code>b</code></td>
  382. <td class="type">
  383. <span class="param-type">vec2</span>
  384. </td>
  385. <td class="description last">the second operand</td>
  386. </tr>
  387. </tbody>
  388. </table>
  389. <dl class="details">
  390. <dt class="tag-source">Source:</dt>
  391. <dd class="tag-source"><ul class="dummy"><li>
  392. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line235">line 235</a>
  393. </li></ul></dd>
  394. </dl>
  395. <h5>Returns:</h5>
  396. <div class="param-desc">
  397. distance between a and b
  398. </div>
  399. <dl>
  400. <dt>
  401. Type
  402. </dt>
  403. <dd>
  404. <span class="param-type">Number</span>
  405. </dd>
  406. </dl>
  407. <h4 class="name" id=".div"><span class="type-signature">(static) </span>div<span class="signature">()</span><span class="type-signature"></span></h4>
  408. <div class="description">
  409. Alias for vec2.divide
  410. </div>
  411. <dl class="details">
  412. <dt class="tag-source">Source:</dt>
  413. <dd class="tag-source"><ul class="dummy"><li>
  414. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line566">line 566</a>
  415. </li></ul></dd>
  416. </dl>
  417. <h4 class="name" id=".divide"><span class="type-signature">(static) </span>divide<span class="signature">(out, a, b)</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  418. <div class="description">
  419. Divides two vec2's
  420. </div>
  421. <h5>Parameters:</h5>
  422. <table class="params">
  423. <thead>
  424. <tr>
  425. <th>Name</th>
  426. <th>Type</th>
  427. <th class="last">Description</th>
  428. </tr>
  429. </thead>
  430. <tbody>
  431. <tr>
  432. <td class="name"><code>out</code></td>
  433. <td class="type">
  434. <span class="param-type">vec2</span>
  435. </td>
  436. <td class="description last">the receiving vector</td>
  437. </tr>
  438. <tr>
  439. <td class="name"><code>a</code></td>
  440. <td class="type">
  441. <span class="param-type">vec2</span>
  442. </td>
  443. <td class="description last">the first operand</td>
  444. </tr>
  445. <tr>
  446. <td class="name"><code>b</code></td>
  447. <td class="type">
  448. <span class="param-type">vec2</span>
  449. </td>
  450. <td class="description last">the second operand</td>
  451. </tr>
  452. </tbody>
  453. </table>
  454. <dl class="details">
  455. <dt class="tag-source">Source:</dt>
  456. <dd class="tag-source"><ul class="dummy"><li>
  457. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line126">line 126</a>
  458. </li></ul></dd>
  459. </dl>
  460. <h5>Returns:</h5>
  461. <div class="param-desc">
  462. out
  463. </div>
  464. <dl>
  465. <dt>
  466. Type
  467. </dt>
  468. <dd>
  469. <span class="param-type">vec2</span>
  470. </dd>
  471. </dl>
  472. <h4 class="name" id=".dot"><span class="type-signature">(static) </span>dot<span class="signature">(a, b)</span><span class="type-signature"> &rarr; {Number}</span></h4>
  473. <div class="description">
  474. Calculates the dot product of two vec2's
  475. </div>
  476. <h5>Parameters:</h5>
  477. <table class="params">
  478. <thead>
  479. <tr>
  480. <th>Name</th>
  481. <th>Type</th>
  482. <th class="last">Description</th>
  483. </tr>
  484. </thead>
  485. <tbody>
  486. <tr>
  487. <td class="name"><code>a</code></td>
  488. <td class="type">
  489. <span class="param-type">vec2</span>
  490. </td>
  491. <td class="description last">the first operand</td>
  492. </tr>
  493. <tr>
  494. <td class="name"><code>b</code></td>
  495. <td class="type">
  496. <span class="param-type">vec2</span>
  497. </td>
  498. <td class="description last">the second operand</td>
  499. </tr>
  500. </tbody>
  501. </table>
  502. <dl class="details">
  503. <dt class="tag-source">Source:</dt>
  504. <dd class="tag-source"><ul class="dummy"><li>
  505. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line331">line 331</a>
  506. </li></ul></dd>
  507. </dl>
  508. <h5>Returns:</h5>
  509. <div class="param-desc">
  510. dot product of a and b
  511. </div>
  512. <dl>
  513. <dt>
  514. Type
  515. </dt>
  516. <dd>
  517. <span class="param-type">Number</span>
  518. </dd>
  519. </dl>
  520. <h4 class="name" id=".equals"><span class="type-signature">(static) </span>equals<span class="signature">(a, b)</span><span class="type-signature"> &rarr; {Boolean}</span></h4>
  521. <div class="description">
  522. Returns whether or not the vectors have approximately the same elements in the same position.
  523. </div>
  524. <h5>Parameters:</h5>
  525. <table class="params">
  526. <thead>
  527. <tr>
  528. <th>Name</th>
  529. <th>Type</th>
  530. <th class="last">Description</th>
  531. </tr>
  532. </thead>
  533. <tbody>
  534. <tr>
  535. <td class="name"><code>a</code></td>
  536. <td class="type">
  537. <span class="param-type">vec2</span>
  538. </td>
  539. <td class="description last">The first vector.</td>
  540. </tr>
  541. <tr>
  542. <td class="name"><code>b</code></td>
  543. <td class="type">
  544. <span class="param-type">vec2</span>
  545. </td>
  546. <td class="description last">The second vector.</td>
  547. </tr>
  548. </tbody>
  549. </table>
  550. <dl class="details">
  551. <dt class="tag-source">Source:</dt>
  552. <dd class="tag-source"><ul class="dummy"><li>
  553. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line537">line 537</a>
  554. </li></ul></dd>
  555. </dl>
  556. <h5>Returns:</h5>
  557. <div class="param-desc">
  558. True if the vectors are equal, false otherwise.
  559. </div>
  560. <dl>
  561. <dt>
  562. Type
  563. </dt>
  564. <dd>
  565. <span class="param-type">Boolean</span>
  566. </dd>
  567. </dl>
  568. <h4 class="name" id=".exactEquals"><span class="type-signature">(static) </span>exactEquals<span class="signature">(a, b)</span><span class="type-signature"> &rarr; {Boolean}</span></h4>
  569. <div class="description">
  570. Returns whether or not the vectors exactly have the same elements in the same position (when compared with ===)
  571. </div>
  572. <h5>Parameters:</h5>
  573. <table class="params">
  574. <thead>
  575. <tr>
  576. <th>Name</th>
  577. <th>Type</th>
  578. <th class="last">Description</th>
  579. </tr>
  580. </thead>
  581. <tbody>
  582. <tr>
  583. <td class="name"><code>a</code></td>
  584. <td class="type">
  585. <span class="param-type">vec2</span>
  586. </td>
  587. <td class="description last">The first vector.</td>
  588. </tr>
  589. <tr>
  590. <td class="name"><code>b</code></td>
  591. <td class="type">
  592. <span class="param-type">vec2</span>
  593. </td>
  594. <td class="description last">The second vector.</td>
  595. </tr>
  596. </tbody>
  597. </table>
  598. <dl class="details">
  599. <dt class="tag-source">Source:</dt>
  600. <dd class="tag-source"><ul class="dummy"><li>
  601. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line526">line 526</a>
  602. </li></ul></dd>
  603. </dl>
  604. <h5>Returns:</h5>
  605. <div class="param-desc">
  606. True if the vectors are equal, false otherwise.
  607. </div>
  608. <dl>
  609. <dt>
  610. Type
  611. </dt>
  612. <dd>
  613. <span class="param-type">Boolean</span>
  614. </dd>
  615. </dl>
  616. <h4 class="name" id=".floor"><span class="type-signature">(static) </span>floor<span class="signature">(out, a)</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  617. <div class="description">
  618. Math.floor the components of a vec2
  619. </div>
  620. <h5>Parameters:</h5>
  621. <table class="params">
  622. <thead>
  623. <tr>
  624. <th>Name</th>
  625. <th>Type</th>
  626. <th class="last">Description</th>
  627. </tr>
  628. </thead>
  629. <tbody>
  630. <tr>
  631. <td class="name"><code>out</code></td>
  632. <td class="type">
  633. <span class="param-type">vec2</span>
  634. </td>
  635. <td class="description last">the receiving vector</td>
  636. </tr>
  637. <tr>
  638. <td class="name"><code>a</code></td>
  639. <td class="type">
  640. <span class="param-type">vec2</span>
  641. </td>
  642. <td class="description last">vector to floor</td>
  643. </tr>
  644. </tbody>
  645. </table>
  646. <dl class="details">
  647. <dt class="tag-source">Source:</dt>
  648. <dd class="tag-source"><ul class="dummy"><li>
  649. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line152">line 152</a>
  650. </li></ul></dd>
  651. </dl>
  652. <h5>Returns:</h5>
  653. <div class="param-desc">
  654. out
  655. </div>
  656. <dl>
  657. <dt>
  658. Type
  659. </dt>
  660. <dd>
  661. <span class="param-type">vec2</span>
  662. </dd>
  663. </dl>
  664. <h4 class="name" id=".forEach"><span class="type-signature">(static) </span>forEach<span class="signature">(a, stride, offset, count, fn, arg<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {Array}</span></h4>
  665. <div class="description">
  666. Perform some operation over an array of vec2s.
  667. </div>
  668. <h5>Parameters:</h5>
  669. <table class="params">
  670. <thead>
  671. <tr>
  672. <th>Name</th>
  673. <th>Type</th>
  674. <th>Attributes</th>
  675. <th class="last">Description</th>
  676. </tr>
  677. </thead>
  678. <tbody>
  679. <tr>
  680. <td class="name"><code>a</code></td>
  681. <td class="type">
  682. <span class="param-type">Array</span>
  683. </td>
  684. <td class="attributes">
  685. </td>
  686. <td class="description last">the array of vectors to iterate over</td>
  687. </tr>
  688. <tr>
  689. <td class="name"><code>stride</code></td>
  690. <td class="type">
  691. <span class="param-type">Number</span>
  692. </td>
  693. <td class="attributes">
  694. </td>
  695. <td class="description last">Number of elements between the start of each vec2. If 0 assumes tightly packed</td>
  696. </tr>
  697. <tr>
  698. <td class="name"><code>offset</code></td>
  699. <td class="type">
  700. <span class="param-type">Number</span>
  701. </td>
  702. <td class="attributes">
  703. </td>
  704. <td class="description last">Number of elements to skip at the beginning of the array</td>
  705. </tr>
  706. <tr>
  707. <td class="name"><code>count</code></td>
  708. <td class="type">
  709. <span class="param-type">Number</span>
  710. </td>
  711. <td class="attributes">
  712. </td>
  713. <td class="description last">Number of vec2s to iterate over. If 0 iterates over entire array</td>
  714. </tr>
  715. <tr>
  716. <td class="name"><code>fn</code></td>
  717. <td class="type">
  718. <span class="param-type">function</span>
  719. </td>
  720. <td class="attributes">
  721. </td>
  722. <td class="description last">Function to call for each vector in the array</td>
  723. </tr>
  724. <tr>
  725. <td class="name"><code>arg</code></td>
  726. <td class="type">
  727. <span class="param-type">Object</span>
  728. </td>
  729. <td class="attributes">
  730. &lt;optional><br>
  731. </td>
  732. <td class="description last">additional argument to pass to fn</td>
  733. </tr>
  734. </tbody>
  735. </table>
  736. <dl class="details">
  737. <dt class="tag-source">Source:</dt>
  738. <dd class="tag-source"><ul class="dummy"><li>
  739. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line598">line 598</a>
  740. </li></ul></dd>
  741. </dl>
  742. <h5>Returns:</h5>
  743. <div class="param-desc">
  744. a
  745. </div>
  746. <dl>
  747. <dt>
  748. Type
  749. </dt>
  750. <dd>
  751. <span class="param-type">Array</span>
  752. </dd>
  753. </dl>
  754. <h4 class="name" id=".fromValues"><span class="type-signature">(static) </span>fromValues<span class="signature">(x, y)</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  755. <div class="description">
  756. Creates a new vec2 initialized with the given values
  757. </div>
  758. <h5>Parameters:</h5>
  759. <table class="params">
  760. <thead>
  761. <tr>
  762. <th>Name</th>
  763. <th>Type</th>
  764. <th class="last">Description</th>
  765. </tr>
  766. </thead>
  767. <tbody>
  768. <tr>
  769. <td class="name"><code>x</code></td>
  770. <td class="type">
  771. <span class="param-type">Number</span>
  772. </td>
  773. <td class="description last">X component</td>
  774. </tr>
  775. <tr>
  776. <td class="name"><code>y</code></td>
  777. <td class="type">
  778. <span class="param-type">Number</span>
  779. </td>
  780. <td class="description last">Y component</td>
  781. </tr>
  782. </tbody>
  783. </table>
  784. <dl class="details">
  785. <dt class="tag-source">Source:</dt>
  786. <dd class="tag-source"><ul class="dummy"><li>
  787. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line42">line 42</a>
  788. </li></ul></dd>
  789. </dl>
  790. <h5>Returns:</h5>
  791. <div class="param-desc">
  792. a new 2D vector
  793. </div>
  794. <dl>
  795. <dt>
  796. Type
  797. </dt>
  798. <dd>
  799. <span class="param-type">vec2</span>
  800. </dd>
  801. </dl>
  802. <h4 class="name" id=".inverse"><span class="type-signature">(static) </span>inverse<span class="signature">(out, a)</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  803. <div class="description">
  804. Returns the inverse of the components of a vec2
  805. </div>
  806. <h5>Parameters:</h5>
  807. <table class="params">
  808. <thead>
  809. <tr>
  810. <th>Name</th>
  811. <th>Type</th>
  812. <th class="last">Description</th>
  813. </tr>
  814. </thead>
  815. <tbody>
  816. <tr>
  817. <td class="name"><code>out</code></td>
  818. <td class="type">
  819. <span class="param-type">vec2</span>
  820. </td>
  821. <td class="description last">the receiving vector</td>
  822. </tr>
  823. <tr>
  824. <td class="name"><code>a</code></td>
  825. <td class="type">
  826. <span class="param-type">vec2</span>
  827. </td>
  828. <td class="description last">vector to invert</td>
  829. </tr>
  830. </tbody>
  831. </table>
  832. <dl class="details">
  833. <dt class="tag-source">Source:</dt>
  834. <dd class="tag-source"><ul class="dummy"><li>
  835. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line298">line 298</a>
  836. </li></ul></dd>
  837. </dl>
  838. <h5>Returns:</h5>
  839. <div class="param-desc">
  840. out
  841. </div>
  842. <dl>
  843. <dt>
  844. Type
  845. </dt>
  846. <dd>
  847. <span class="param-type">vec2</span>
  848. </dd>
  849. </dl>
  850. <h4 class="name" id=".len"><span class="type-signature">(static) </span>len<span class="signature">()</span><span class="type-signature"></span></h4>
  851. <div class="description">
  852. Alias for vec2.length
  853. </div>
  854. <dl class="details">
  855. <dt class="tag-source">Source:</dt>
  856. <dd class="tag-source"><ul class="dummy"><li>
  857. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line548">line 548</a>
  858. </li></ul></dd>
  859. </dl>
  860. <h4 class="name" id=".length"><span class="type-signature">(static) </span>length<span class="signature">(a)</span><span class="type-signature"> &rarr; {Number}</span></h4>
  861. <div class="description">
  862. Calculates the length of a vec2
  863. </div>
  864. <h5>Parameters:</h5>
  865. <table class="params">
  866. <thead>
  867. <tr>
  868. <th>Name</th>
  869. <th>Type</th>
  870. <th class="last">Description</th>
  871. </tr>
  872. </thead>
  873. <tbody>
  874. <tr>
  875. <td class="name"><code>a</code></td>
  876. <td class="type">
  877. <span class="param-type">vec2</span>
  878. </td>
  879. <td class="description last">vector to calculate length of</td>
  880. </tr>
  881. </tbody>
  882. </table>
  883. <dl class="details">
  884. <dt class="tag-source">Source:</dt>
  885. <dd class="tag-source"><ul class="dummy"><li>
  886. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line260">line 260</a>
  887. </li></ul></dd>
  888. </dl>
  889. <h5>Returns:</h5>
  890. <div class="param-desc">
  891. length of a
  892. </div>
  893. <dl>
  894. <dt>
  895. Type
  896. </dt>
  897. <dd>
  898. <span class="param-type">Number</span>
  899. </dd>
  900. </dl>
  901. <h4 class="name" id=".lerp"><span class="type-signature">(static) </span>lerp<span class="signature">(out, a, b, t)</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  902. <div class="description">
  903. Performs a linear interpolation between two vec2's
  904. </div>
  905. <h5>Parameters:</h5>
  906. <table class="params">
  907. <thead>
  908. <tr>
  909. <th>Name</th>
  910. <th>Type</th>
  911. <th class="last">Description</th>
  912. </tr>
  913. </thead>
  914. <tbody>
  915. <tr>
  916. <td class="name"><code>out</code></td>
  917. <td class="type">
  918. <span class="param-type">vec2</span>
  919. </td>
  920. <td class="description last">the receiving vector</td>
  921. </tr>
  922. <tr>
  923. <td class="name"><code>a</code></td>
  924. <td class="type">
  925. <span class="param-type">vec2</span>
  926. </td>
  927. <td class="description last">the first operand</td>
  928. </tr>
  929. <tr>
  930. <td class="name"><code>b</code></td>
  931. <td class="type">
  932. <span class="param-type">vec2</span>
  933. </td>
  934. <td class="description last">the second operand</td>
  935. </tr>
  936. <tr>
  937. <td class="name"><code>t</code></td>
  938. <td class="type">
  939. <span class="param-type">Number</span>
  940. </td>
  941. <td class="description last">interpolation amount, in the range [0-1], between the two inputs</td>
  942. </tr>
  943. </tbody>
  944. </table>
  945. <dl class="details">
  946. <dt class="tag-source">Source:</dt>
  947. <dd class="tag-source"><ul class="dummy"><li>
  948. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line360">line 360</a>
  949. </li></ul></dd>
  950. </dl>
  951. <h5>Returns:</h5>
  952. <div class="param-desc">
  953. out
  954. </div>
  955. <dl>
  956. <dt>
  957. Type
  958. </dt>
  959. <dd>
  960. <span class="param-type">vec2</span>
  961. </dd>
  962. </dl>
  963. <h4 class="name" id=".max"><span class="type-signature">(static) </span>max<span class="signature">(out, a, b)</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  964. <div class="description">
  965. Returns the maximum of two vec2's
  966. </div>
  967. <h5>Parameters:</h5>
  968. <table class="params">
  969. <thead>
  970. <tr>
  971. <th>Name</th>
  972. <th>Type</th>
  973. <th class="last">Description</th>
  974. </tr>
  975. </thead>
  976. <tbody>
  977. <tr>
  978. <td class="name"><code>out</code></td>
  979. <td class="type">
  980. <span class="param-type">vec2</span>
  981. </td>
  982. <td class="description last">the receiving vector</td>
  983. </tr>
  984. <tr>
  985. <td class="name"><code>a</code></td>
  986. <td class="type">
  987. <span class="param-type">vec2</span>
  988. </td>
  989. <td class="description last">the first operand</td>
  990. </tr>
  991. <tr>
  992. <td class="name"><code>b</code></td>
  993. <td class="type">
  994. <span class="param-type">vec2</span>
  995. </td>
  996. <td class="description last">the second operand</td>
  997. </tr>
  998. </tbody>
  999. </table>
  1000. <dl class="details">
  1001. <dt class="tag-source">Source:</dt>
  1002. <dd class="tag-source"><ul class="dummy"><li>
  1003. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line180">line 180</a>
  1004. </li></ul></dd>
  1005. </dl>
  1006. <h5>Returns:</h5>
  1007. <div class="param-desc">
  1008. out
  1009. </div>
  1010. <dl>
  1011. <dt>
  1012. Type
  1013. </dt>
  1014. <dd>
  1015. <span class="param-type">vec2</span>
  1016. </dd>
  1017. </dl>
  1018. <h4 class="name" id=".min"><span class="type-signature">(static) </span>min<span class="signature">(out, a, b)</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  1019. <div class="description">
  1020. Returns the minimum of two vec2's
  1021. </div>
  1022. <h5>Parameters:</h5>
  1023. <table class="params">
  1024. <thead>
  1025. <tr>
  1026. <th>Name</th>
  1027. <th>Type</th>
  1028. <th class="last">Description</th>
  1029. </tr>
  1030. </thead>
  1031. <tbody>
  1032. <tr>
  1033. <td class="name"><code>out</code></td>
  1034. <td class="type">
  1035. <span class="param-type">vec2</span>
  1036. </td>
  1037. <td class="description last">the receiving vector</td>
  1038. </tr>
  1039. <tr>
  1040. <td class="name"><code>a</code></td>
  1041. <td class="type">
  1042. <span class="param-type">vec2</span>
  1043. </td>
  1044. <td class="description last">the first operand</td>
  1045. </tr>
  1046. <tr>
  1047. <td class="name"><code>b</code></td>
  1048. <td class="type">
  1049. <span class="param-type">vec2</span>
  1050. </td>
  1051. <td class="description last">the second operand</td>
  1052. </tr>
  1053. </tbody>
  1054. </table>
  1055. <dl class="details">
  1056. <dt class="tag-source">Source:</dt>
  1057. <dd class="tag-source"><ul class="dummy"><li>
  1058. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line166">line 166</a>
  1059. </li></ul></dd>
  1060. </dl>
  1061. <h5>Returns:</h5>
  1062. <div class="param-desc">
  1063. out
  1064. </div>
  1065. <dl>
  1066. <dt>
  1067. Type
  1068. </dt>
  1069. <dd>
  1070. <span class="param-type">vec2</span>
  1071. </dd>
  1072. </dl>
  1073. <h4 class="name" id=".mul"><span class="type-signature">(static) </span>mul<span class="signature">()</span><span class="type-signature"></span></h4>
  1074. <div class="description">
  1075. Alias for vec2.multiply
  1076. </div>
  1077. <dl class="details">
  1078. <dt class="tag-source">Source:</dt>
  1079. <dd class="tag-source"><ul class="dummy"><li>
  1080. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line560">line 560</a>
  1081. </li></ul></dd>
  1082. </dl>
  1083. <h4 class="name" id=".multiply"><span class="type-signature">(static) </span>multiply<span class="signature">(out, a, b)</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  1084. <div class="description">
  1085. Multiplies two vec2's
  1086. </div>
  1087. <h5>Parameters:</h5>
  1088. <table class="params">
  1089. <thead>
  1090. <tr>
  1091. <th>Name</th>
  1092. <th>Type</th>
  1093. <th class="last">Description</th>
  1094. </tr>
  1095. </thead>
  1096. <tbody>
  1097. <tr>
  1098. <td class="name"><code>out</code></td>
  1099. <td class="type">
  1100. <span class="param-type">vec2</span>
  1101. </td>
  1102. <td class="description last">the receiving vector</td>
  1103. </tr>
  1104. <tr>
  1105. <td class="name"><code>a</code></td>
  1106. <td class="type">
  1107. <span class="param-type">vec2</span>
  1108. </td>
  1109. <td class="description last">the first operand</td>
  1110. </tr>
  1111. <tr>
  1112. <td class="name"><code>b</code></td>
  1113. <td class="type">
  1114. <span class="param-type">vec2</span>
  1115. </td>
  1116. <td class="description last">the second operand</td>
  1117. </tr>
  1118. </tbody>
  1119. </table>
  1120. <dl class="details">
  1121. <dt class="tag-source">Source:</dt>
  1122. <dd class="tag-source"><ul class="dummy"><li>
  1123. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line112">line 112</a>
  1124. </li></ul></dd>
  1125. </dl>
  1126. <h5>Returns:</h5>
  1127. <div class="param-desc">
  1128. out
  1129. </div>
  1130. <dl>
  1131. <dt>
  1132. Type
  1133. </dt>
  1134. <dd>
  1135. <span class="param-type">vec2</span>
  1136. </dd>
  1137. </dl>
  1138. <h4 class="name" id=".negate"><span class="type-signature">(static) </span>negate<span class="signature">(out, a)</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  1139. <div class="description">
  1140. Negates the components of a vec2
  1141. </div>
  1142. <h5>Parameters:</h5>
  1143. <table class="params">
  1144. <thead>
  1145. <tr>
  1146. <th>Name</th>
  1147. <th>Type</th>
  1148. <th class="last">Description</th>
  1149. </tr>
  1150. </thead>
  1151. <tbody>
  1152. <tr>
  1153. <td class="name"><code>out</code></td>
  1154. <td class="type">
  1155. <span class="param-type">vec2</span>
  1156. </td>
  1157. <td class="description last">the receiving vector</td>
  1158. </tr>
  1159. <tr>
  1160. <td class="name"><code>a</code></td>
  1161. <td class="type">
  1162. <span class="param-type">vec2</span>
  1163. </td>
  1164. <td class="description last">vector to negate</td>
  1165. </tr>
  1166. </tbody>
  1167. </table>
  1168. <dl class="details">
  1169. <dt class="tag-source">Source:</dt>
  1170. <dd class="tag-source"><ul class="dummy"><li>
  1171. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line285">line 285</a>
  1172. </li></ul></dd>
  1173. </dl>
  1174. <h5>Returns:</h5>
  1175. <div class="param-desc">
  1176. out
  1177. </div>
  1178. <dl>
  1179. <dt>
  1180. Type
  1181. </dt>
  1182. <dd>
  1183. <span class="param-type">vec2</span>
  1184. </dd>
  1185. </dl>
  1186. <h4 class="name" id=".normalize"><span class="type-signature">(static) </span>normalize<span class="signature">(out, a)</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  1187. <div class="description">
  1188. Normalize a vec2
  1189. </div>
  1190. <h5>Parameters:</h5>
  1191. <table class="params">
  1192. <thead>
  1193. <tr>
  1194. <th>Name</th>
  1195. <th>Type</th>
  1196. <th class="last">Description</th>
  1197. </tr>
  1198. </thead>
  1199. <tbody>
  1200. <tr>
  1201. <td class="name"><code>out</code></td>
  1202. <td class="type">
  1203. <span class="param-type">vec2</span>
  1204. </td>
  1205. <td class="description last">the receiving vector</td>
  1206. </tr>
  1207. <tr>
  1208. <td class="name"><code>a</code></td>
  1209. <td class="type">
  1210. <span class="param-type">vec2</span>
  1211. </td>
  1212. <td class="description last">vector to normalize</td>
  1213. </tr>
  1214. </tbody>
  1215. </table>
  1216. <dl class="details">
  1217. <dt class="tag-source">Source:</dt>
  1218. <dd class="tag-source"><ul class="dummy"><li>
  1219. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line311">line 311</a>
  1220. </li></ul></dd>
  1221. </dl>
  1222. <h5>Returns:</h5>
  1223. <div class="param-desc">
  1224. out
  1225. </div>
  1226. <dl>
  1227. <dt>
  1228. Type
  1229. </dt>
  1230. <dd>
  1231. <span class="param-type">vec2</span>
  1232. </dd>
  1233. </dl>
  1234. <h4 class="name" id=".random"><span class="type-signature">(static) </span>random<span class="signature">(out, scale<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  1235. <div class="description">
  1236. Generates a random vector with the given scale
  1237. </div>
  1238. <h5>Parameters:</h5>
  1239. <table class="params">
  1240. <thead>
  1241. <tr>
  1242. <th>Name</th>
  1243. <th>Type</th>
  1244. <th>Attributes</th>
  1245. <th class="last">Description</th>
  1246. </tr>
  1247. </thead>
  1248. <tbody>
  1249. <tr>
  1250. <td class="name"><code>out</code></td>
  1251. <td class="type">
  1252. <span class="param-type">vec2</span>
  1253. </td>
  1254. <td class="attributes">
  1255. </td>
  1256. <td class="description last">the receiving vector</td>
  1257. </tr>
  1258. <tr>
  1259. <td class="name"><code>scale</code></td>
  1260. <td class="type">
  1261. <span class="param-type">Number</span>
  1262. </td>
  1263. <td class="attributes">
  1264. &lt;optional><br>
  1265. </td>
  1266. <td class="description last">Length of the resulting vector. If ommitted, a unit vector will be returned</td>
  1267. </tr>
  1268. </tbody>
  1269. </table>
  1270. <dl class="details">
  1271. <dt class="tag-source">Source:</dt>
  1272. <dd class="tag-source"><ul class="dummy"><li>
  1273. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line375">line 375</a>
  1274. </li></ul></dd>
  1275. </dl>
  1276. <h5>Returns:</h5>
  1277. <div class="param-desc">
  1278. out
  1279. </div>
  1280. <dl>
  1281. <dt>
  1282. Type
  1283. </dt>
  1284. <dd>
  1285. <span class="param-type">vec2</span>
  1286. </dd>
  1287. </dl>
  1288. <h4 class="name" id=".rotate"><span class="type-signature">(static) </span>rotate<span class="signature">(out, a, b, c)</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  1289. <div class="description">
  1290. Rotate a 2D vector
  1291. </div>
  1292. <h5>Parameters:</h5>
  1293. <table class="params">
  1294. <thead>
  1295. <tr>
  1296. <th>Name</th>
  1297. <th>Type</th>
  1298. <th class="last">Description</th>
  1299. </tr>
  1300. </thead>
  1301. <tbody>
  1302. <tr>
  1303. <td class="name"><code>out</code></td>
  1304. <td class="type">
  1305. <span class="param-type">vec2</span>
  1306. </td>
  1307. <td class="description last">The receiving vec2</td>
  1308. </tr>
  1309. <tr>
  1310. <td class="name"><code>a</code></td>
  1311. <td class="type">
  1312. <span class="param-type">vec2</span>
  1313. </td>
  1314. <td class="description last">The vec2 point to rotate</td>
  1315. </tr>
  1316. <tr>
  1317. <td class="name"><code>b</code></td>
  1318. <td class="type">
  1319. <span class="param-type">vec2</span>
  1320. </td>
  1321. <td class="description last">The origin of the rotation</td>
  1322. </tr>
  1323. <tr>
  1324. <td class="name"><code>c</code></td>
  1325. <td class="type">
  1326. <span class="param-type">Number</span>
  1327. </td>
  1328. <td class="description last">The angle of rotation</td>
  1329. </tr>
  1330. </tbody>
  1331. </table>
  1332. <dl class="details">
  1333. <dt class="tag-source">Source:</dt>
  1334. <dd class="tag-source"><ul class="dummy"><li>
  1335. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line458">line 458</a>
  1336. </li></ul></dd>
  1337. </dl>
  1338. <h5>Returns:</h5>
  1339. <div class="param-desc">
  1340. out
  1341. </div>
  1342. <dl>
  1343. <dt>
  1344. Type
  1345. </dt>
  1346. <dd>
  1347. <span class="param-type">vec2</span>
  1348. </dd>
  1349. </dl>
  1350. <h4 class="name" id=".round"><span class="type-signature">(static) </span>round<span class="signature">(out, a)</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  1351. <div class="description">
  1352. Math.round the components of a vec2
  1353. </div>
  1354. <h5>Parameters:</h5>
  1355. <table class="params">
  1356. <thead>
  1357. <tr>
  1358. <th>Name</th>
  1359. <th>Type</th>
  1360. <th class="last">Description</th>
  1361. </tr>
  1362. </thead>
  1363. <tbody>
  1364. <tr>
  1365. <td class="name"><code>out</code></td>
  1366. <td class="type">
  1367. <span class="param-type">vec2</span>
  1368. </td>
  1369. <td class="description last">the receiving vector</td>
  1370. </tr>
  1371. <tr>
  1372. <td class="name"><code>a</code></td>
  1373. <td class="type">
  1374. <span class="param-type">vec2</span>
  1375. </td>
  1376. <td class="description last">vector to round</td>
  1377. </tr>
  1378. </tbody>
  1379. </table>
  1380. <dl class="details">
  1381. <dt class="tag-source">Source:</dt>
  1382. <dd class="tag-source"><ul class="dummy"><li>
  1383. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line193">line 193</a>
  1384. </li></ul></dd>
  1385. </dl>
  1386. <h5>Returns:</h5>
  1387. <div class="param-desc">
  1388. out
  1389. </div>
  1390. <dl>
  1391. <dt>
  1392. Type
  1393. </dt>
  1394. <dd>
  1395. <span class="param-type">vec2</span>
  1396. </dd>
  1397. </dl>
  1398. <h4 class="name" id=".scale"><span class="type-signature">(static) </span>scale<span class="signature">(out, a, b)</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  1399. <div class="description">
  1400. Scales a vec2 by a scalar number
  1401. </div>
  1402. <h5>Parameters:</h5>
  1403. <table class="params">
  1404. <thead>
  1405. <tr>
  1406. <th>Name</th>
  1407. <th>Type</th>
  1408. <th class="last">Description</th>
  1409. </tr>
  1410. </thead>
  1411. <tbody>
  1412. <tr>
  1413. <td class="name"><code>out</code></td>
  1414. <td class="type">
  1415. <span class="param-type">vec2</span>
  1416. </td>
  1417. <td class="description last">the receiving vector</td>
  1418. </tr>
  1419. <tr>
  1420. <td class="name"><code>a</code></td>
  1421. <td class="type">
  1422. <span class="param-type">vec2</span>
  1423. </td>
  1424. <td class="description last">the vector to scale</td>
  1425. </tr>
  1426. <tr>
  1427. <td class="name"><code>b</code></td>
  1428. <td class="type">
  1429. <span class="param-type">Number</span>
  1430. </td>
  1431. <td class="description last">amount to scale the vector by</td>
  1432. </tr>
  1433. </tbody>
  1434. </table>
  1435. <dl class="details">
  1436. <dt class="tag-source">Source:</dt>
  1437. <dd class="tag-source"><ul class="dummy"><li>
  1438. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line207">line 207</a>
  1439. </li></ul></dd>
  1440. </dl>
  1441. <h5>Returns:</h5>
  1442. <div class="param-desc">
  1443. out
  1444. </div>
  1445. <dl>
  1446. <dt>
  1447. Type
  1448. </dt>
  1449. <dd>
  1450. <span class="param-type">vec2</span>
  1451. </dd>
  1452. </dl>
  1453. <h4 class="name" id=".scaleAndAdd"><span class="type-signature">(static) </span>scaleAndAdd<span class="signature">(out, a, b, scale)</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  1454. <div class="description">
  1455. Adds two vec2's after scaling the second operand by a scalar value
  1456. </div>
  1457. <h5>Parameters:</h5>
  1458. <table class="params">
  1459. <thead>
  1460. <tr>
  1461. <th>Name</th>
  1462. <th>Type</th>
  1463. <th class="last">Description</th>
  1464. </tr>
  1465. </thead>
  1466. <tbody>
  1467. <tr>
  1468. <td class="name"><code>out</code></td>
  1469. <td class="type">
  1470. <span class="param-type">vec2</span>
  1471. </td>
  1472. <td class="description last">the receiving vector</td>
  1473. </tr>
  1474. <tr>
  1475. <td class="name"><code>a</code></td>
  1476. <td class="type">
  1477. <span class="param-type">vec2</span>
  1478. </td>
  1479. <td class="description last">the first operand</td>
  1480. </tr>
  1481. <tr>
  1482. <td class="name"><code>b</code></td>
  1483. <td class="type">
  1484. <span class="param-type">vec2</span>
  1485. </td>
  1486. <td class="description last">the second operand</td>
  1487. </tr>
  1488. <tr>
  1489. <td class="name"><code>scale</code></td>
  1490. <td class="type">
  1491. <span class="param-type">Number</span>
  1492. </td>
  1493. <td class="description last">the amount to scale b by before adding</td>
  1494. </tr>
  1495. </tbody>
  1496. </table>
  1497. <dl class="details">
  1498. <dt class="tag-source">Source:</dt>
  1499. <dd class="tag-source"><ul class="dummy"><li>
  1500. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line222">line 222</a>
  1501. </li></ul></dd>
  1502. </dl>
  1503. <h5>Returns:</h5>
  1504. <div class="param-desc">
  1505. out
  1506. </div>
  1507. <dl>
  1508. <dt>
  1509. Type
  1510. </dt>
  1511. <dd>
  1512. <span class="param-type">vec2</span>
  1513. </dd>
  1514. </dl>
  1515. <h4 class="name" id=".set"><span class="type-signature">(static) </span>set<span class="signature">(out, x, y)</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  1516. <div class="description">
  1517. Set the components of a vec2 to the given values
  1518. </div>
  1519. <h5>Parameters:</h5>
  1520. <table class="params">
  1521. <thead>
  1522. <tr>
  1523. <th>Name</th>
  1524. <th>Type</th>
  1525. <th class="last">Description</th>
  1526. </tr>
  1527. </thead>
  1528. <tbody>
  1529. <tr>
  1530. <td class="name"><code>out</code></td>
  1531. <td class="type">
  1532. <span class="param-type">vec2</span>
  1533. </td>
  1534. <td class="description last">the receiving vector</td>
  1535. </tr>
  1536. <tr>
  1537. <td class="name"><code>x</code></td>
  1538. <td class="type">
  1539. <span class="param-type">Number</span>
  1540. </td>
  1541. <td class="description last">X component</td>
  1542. </tr>
  1543. <tr>
  1544. <td class="name"><code>y</code></td>
  1545. <td class="type">
  1546. <span class="param-type">Number</span>
  1547. </td>
  1548. <td class="description last">Y component</td>
  1549. </tr>
  1550. </tbody>
  1551. </table>
  1552. <dl class="details">
  1553. <dt class="tag-source">Source:</dt>
  1554. <dd class="tag-source"><ul class="dummy"><li>
  1555. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line70">line 70</a>
  1556. </li></ul></dd>
  1557. </dl>
  1558. <h5>Returns:</h5>
  1559. <div class="param-desc">
  1560. out
  1561. </div>
  1562. <dl>
  1563. <dt>
  1564. Type
  1565. </dt>
  1566. <dd>
  1567. <span class="param-type">vec2</span>
  1568. </dd>
  1569. </dl>
  1570. <h4 class="name" id=".sqrDist"><span class="type-signature">(static) </span>sqrDist<span class="signature">()</span><span class="type-signature"></span></h4>
  1571. <div class="description">
  1572. Alias for vec2.squaredDistance
  1573. </div>
  1574. <dl class="details">
  1575. <dt class="tag-source">Source:</dt>
  1576. <dd class="tag-source"><ul class="dummy"><li>
  1577. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line578">line 578</a>
  1578. </li></ul></dd>
  1579. </dl>
  1580. <h4 class="name" id=".sqrLen"><span class="type-signature">(static) </span>sqrLen<span class="signature">()</span><span class="type-signature"></span></h4>
  1581. <div class="description">
  1582. Alias for vec2.squaredLength
  1583. </div>
  1584. <dl class="details">
  1585. <dt class="tag-source">Source:</dt>
  1586. <dd class="tag-source"><ul class="dummy"><li>
  1587. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line584">line 584</a>
  1588. </li></ul></dd>
  1589. </dl>
  1590. <h4 class="name" id=".squaredDistance"><span class="type-signature">(static) </span>squaredDistance<span class="signature">(a, b)</span><span class="type-signature"> &rarr; {Number}</span></h4>
  1591. <div class="description">
  1592. Calculates the squared euclidian distance between two vec2's
  1593. </div>
  1594. <h5>Parameters:</h5>
  1595. <table class="params">
  1596. <thead>
  1597. <tr>
  1598. <th>Name</th>
  1599. <th>Type</th>
  1600. <th class="last">Description</th>
  1601. </tr>
  1602. </thead>
  1603. <tbody>
  1604. <tr>
  1605. <td class="name"><code>a</code></td>
  1606. <td class="type">
  1607. <span class="param-type">vec2</span>
  1608. </td>
  1609. <td class="description last">the first operand</td>
  1610. </tr>
  1611. <tr>
  1612. <td class="name"><code>b</code></td>
  1613. <td class="type">
  1614. <span class="param-type">vec2</span>
  1615. </td>
  1616. <td class="description last">the second operand</td>
  1617. </tr>
  1618. </tbody>
  1619. </table>
  1620. <dl class="details">
  1621. <dt class="tag-source">Source:</dt>
  1622. <dd class="tag-source"><ul class="dummy"><li>
  1623. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line248">line 248</a>
  1624. </li></ul></dd>
  1625. </dl>
  1626. <h5>Returns:</h5>
  1627. <div class="param-desc">
  1628. squared distance between a and b
  1629. </div>
  1630. <dl>
  1631. <dt>
  1632. Type
  1633. </dt>
  1634. <dd>
  1635. <span class="param-type">Number</span>
  1636. </dd>
  1637. </dl>
  1638. <h4 class="name" id=".squaredLength"><span class="type-signature">(static) </span>squaredLength<span class="signature">(a)</span><span class="type-signature"> &rarr; {Number}</span></h4>
  1639. <div class="description">
  1640. Calculates the squared length of a vec2
  1641. </div>
  1642. <h5>Parameters:</h5>
  1643. <table class="params">
  1644. <thead>
  1645. <tr>
  1646. <th>Name</th>
  1647. <th>Type</th>
  1648. <th class="last">Description</th>
  1649. </tr>
  1650. </thead>
  1651. <tbody>
  1652. <tr>
  1653. <td class="name"><code>a</code></td>
  1654. <td class="type">
  1655. <span class="param-type">vec2</span>
  1656. </td>
  1657. <td class="description last">vector to calculate squared length of</td>
  1658. </tr>
  1659. </tbody>
  1660. </table>
  1661. <dl class="details">
  1662. <dt class="tag-source">Source:</dt>
  1663. <dd class="tag-source"><ul class="dummy"><li>
  1664. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line272">line 272</a>
  1665. </li></ul></dd>
  1666. </dl>
  1667. <h5>Returns:</h5>
  1668. <div class="param-desc">
  1669. squared length of a
  1670. </div>
  1671. <dl>
  1672. <dt>
  1673. Type
  1674. </dt>
  1675. <dd>
  1676. <span class="param-type">Number</span>
  1677. </dd>
  1678. </dl>
  1679. <h4 class="name" id=".str"><span class="type-signature">(static) </span>str<span class="signature">(a)</span><span class="type-signature"> &rarr; {String}</span></h4>
  1680. <div class="description">
  1681. Returns a string representation of a vector
  1682. </div>
  1683. <h5>Parameters:</h5>
  1684. <table class="params">
  1685. <thead>
  1686. <tr>
  1687. <th>Name</th>
  1688. <th>Type</th>
  1689. <th class="last">Description</th>
  1690. </tr>
  1691. </thead>
  1692. <tbody>
  1693. <tr>
  1694. <td class="name"><code>a</code></td>
  1695. <td class="type">
  1696. <span class="param-type">vec2</span>
  1697. </td>
  1698. <td class="description last">vector to represent as a string</td>
  1699. </tr>
  1700. </tbody>
  1701. </table>
  1702. <dl class="details">
  1703. <dt class="tag-source">Source:</dt>
  1704. <dd class="tag-source"><ul class="dummy"><li>
  1705. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line515">line 515</a>
  1706. </li></ul></dd>
  1707. </dl>
  1708. <h5>Returns:</h5>
  1709. <div class="param-desc">
  1710. string representation of the vector
  1711. </div>
  1712. <dl>
  1713. <dt>
  1714. Type
  1715. </dt>
  1716. <dd>
  1717. <span class="param-type">String</span>
  1718. </dd>
  1719. </dl>
  1720. <h4 class="name" id=".sub"><span class="type-signature">(static) </span>sub<span class="signature">()</span><span class="type-signature"></span></h4>
  1721. <div class="description">
  1722. Alias for vec2.subtract
  1723. </div>
  1724. <dl class="details">
  1725. <dt class="tag-source">Source:</dt>
  1726. <dd class="tag-source"><ul class="dummy"><li>
  1727. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line554">line 554</a>
  1728. </li></ul></dd>
  1729. </dl>
  1730. <h4 class="name" id=".subtract"><span class="type-signature">(static) </span>subtract<span class="signature">(out, a, b)</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  1731. <div class="description">
  1732. Subtracts vector b from vector a
  1733. </div>
  1734. <h5>Parameters:</h5>
  1735. <table class="params">
  1736. <thead>
  1737. <tr>
  1738. <th>Name</th>
  1739. <th>Type</th>
  1740. <th class="last">Description</th>
  1741. </tr>
  1742. </thead>
  1743. <tbody>
  1744. <tr>
  1745. <td class="name"><code>out</code></td>
  1746. <td class="type">
  1747. <span class="param-type">vec2</span>
  1748. </td>
  1749. <td class="description last">the receiving vector</td>
  1750. </tr>
  1751. <tr>
  1752. <td class="name"><code>a</code></td>
  1753. <td class="type">
  1754. <span class="param-type">vec2</span>
  1755. </td>
  1756. <td class="description last">the first operand</td>
  1757. </tr>
  1758. <tr>
  1759. <td class="name"><code>b</code></td>
  1760. <td class="type">
  1761. <span class="param-type">vec2</span>
  1762. </td>
  1763. <td class="description last">the second operand</td>
  1764. </tr>
  1765. </tbody>
  1766. </table>
  1767. <dl class="details">
  1768. <dt class="tag-source">Source:</dt>
  1769. <dd class="tag-source"><ul class="dummy"><li>
  1770. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line98">line 98</a>
  1771. </li></ul></dd>
  1772. </dl>
  1773. <h5>Returns:</h5>
  1774. <div class="param-desc">
  1775. out
  1776. </div>
  1777. <dl>
  1778. <dt>
  1779. Type
  1780. </dt>
  1781. <dd>
  1782. <span class="param-type">vec2</span>
  1783. </dd>
  1784. </dl>
  1785. <h4 class="name" id=".transformMat2"><span class="type-signature">(static) </span>transformMat2<span class="signature">(out, a, m)</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  1786. <div class="description">
  1787. Transforms the vec2 with a mat2
  1788. </div>
  1789. <h5>Parameters:</h5>
  1790. <table class="params">
  1791. <thead>
  1792. <tr>
  1793. <th>Name</th>
  1794. <th>Type</th>
  1795. <th class="last">Description</th>
  1796. </tr>
  1797. </thead>
  1798. <tbody>
  1799. <tr>
  1800. <td class="name"><code>out</code></td>
  1801. <td class="type">
  1802. <span class="param-type">vec2</span>
  1803. </td>
  1804. <td class="description last">the receiving vector</td>
  1805. </tr>
  1806. <tr>
  1807. <td class="name"><code>a</code></td>
  1808. <td class="type">
  1809. <span class="param-type">vec2</span>
  1810. </td>
  1811. <td class="description last">the vector to transform</td>
  1812. </tr>
  1813. <tr>
  1814. <td class="name"><code>m</code></td>
  1815. <td class="type">
  1816. <span class="param-type">mat2</span>
  1817. </td>
  1818. <td class="description last">matrix to transform with</td>
  1819. </tr>
  1820. </tbody>
  1821. </table>
  1822. <dl class="details">
  1823. <dt class="tag-source">Source:</dt>
  1824. <dd class="tag-source"><ul class="dummy"><li>
  1825. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line391">line 391</a>
  1826. </li></ul></dd>
  1827. </dl>
  1828. <h5>Returns:</h5>
  1829. <div class="param-desc">
  1830. out
  1831. </div>
  1832. <dl>
  1833. <dt>
  1834. Type
  1835. </dt>
  1836. <dd>
  1837. <span class="param-type">vec2</span>
  1838. </dd>
  1839. </dl>
  1840. <h4 class="name" id=".transformMat2d"><span class="type-signature">(static) </span>transformMat2d<span class="signature">(out, a, m)</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  1841. <div class="description">
  1842. Transforms the vec2 with a mat2d
  1843. </div>
  1844. <h5>Parameters:</h5>
  1845. <table class="params">
  1846. <thead>
  1847. <tr>
  1848. <th>Name</th>
  1849. <th>Type</th>
  1850. <th class="last">Description</th>
  1851. </tr>
  1852. </thead>
  1853. <tbody>
  1854. <tr>
  1855. <td class="name"><code>out</code></td>
  1856. <td class="type">
  1857. <span class="param-type">vec2</span>
  1858. </td>
  1859. <td class="description last">the receiving vector</td>
  1860. </tr>
  1861. <tr>
  1862. <td class="name"><code>a</code></td>
  1863. <td class="type">
  1864. <span class="param-type">vec2</span>
  1865. </td>
  1866. <td class="description last">the vector to transform</td>
  1867. </tr>
  1868. <tr>
  1869. <td class="name"><code>m</code></td>
  1870. <td class="type">
  1871. <span class="param-type">mat2d</span>
  1872. </td>
  1873. <td class="description last">matrix to transform with</td>
  1874. </tr>
  1875. </tbody>
  1876. </table>
  1877. <dl class="details">
  1878. <dt class="tag-source">Source:</dt>
  1879. <dd class="tag-source"><ul class="dummy"><li>
  1880. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line407">line 407</a>
  1881. </li></ul></dd>
  1882. </dl>
  1883. <h5>Returns:</h5>
  1884. <div class="param-desc">
  1885. out
  1886. </div>
  1887. <dl>
  1888. <dt>
  1889. Type
  1890. </dt>
  1891. <dd>
  1892. <span class="param-type">vec2</span>
  1893. </dd>
  1894. </dl>
  1895. <h4 class="name" id=".transformMat3"><span class="type-signature">(static) </span>transformMat3<span class="signature">(out, a, m)</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  1896. <div class="description">
  1897. Transforms the vec2 with a mat3
  1898. 3rd vector component is implicitly '1'
  1899. </div>
  1900. <h5>Parameters:</h5>
  1901. <table class="params">
  1902. <thead>
  1903. <tr>
  1904. <th>Name</th>
  1905. <th>Type</th>
  1906. <th class="last">Description</th>
  1907. </tr>
  1908. </thead>
  1909. <tbody>
  1910. <tr>
  1911. <td class="name"><code>out</code></td>
  1912. <td class="type">
  1913. <span class="param-type">vec2</span>
  1914. </td>
  1915. <td class="description last">the receiving vector</td>
  1916. </tr>
  1917. <tr>
  1918. <td class="name"><code>a</code></td>
  1919. <td class="type">
  1920. <span class="param-type">vec2</span>
  1921. </td>
  1922. <td class="description last">the vector to transform</td>
  1923. </tr>
  1924. <tr>
  1925. <td class="name"><code>m</code></td>
  1926. <td class="type">
  1927. <span class="param-type">mat3</span>
  1928. </td>
  1929. <td class="description last">matrix to transform with</td>
  1930. </tr>
  1931. </tbody>
  1932. </table>
  1933. <dl class="details">
  1934. <dt class="tag-source">Source:</dt>
  1935. <dd class="tag-source"><ul class="dummy"><li>
  1936. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line424">line 424</a>
  1937. </li></ul></dd>
  1938. </dl>
  1939. <h5>Returns:</h5>
  1940. <div class="param-desc">
  1941. out
  1942. </div>
  1943. <dl>
  1944. <dt>
  1945. Type
  1946. </dt>
  1947. <dd>
  1948. <span class="param-type">vec2</span>
  1949. </dd>
  1950. </dl>
  1951. <h4 class="name" id=".transformMat4"><span class="type-signature">(static) </span>transformMat4<span class="signature">(out, a, m)</span><span class="type-signature"> &rarr; {vec2}</span></h4>
  1952. <div class="description">
  1953. Transforms the vec2 with a mat4
  1954. 3rd vector component is implicitly '0'
  1955. 4th vector component is implicitly '1'
  1956. </div>
  1957. <h5>Parameters:</h5>
  1958. <table class="params">
  1959. <thead>
  1960. <tr>
  1961. <th>Name</th>
  1962. <th>Type</th>
  1963. <th class="last">Description</th>
  1964. </tr>
  1965. </thead>
  1966. <tbody>
  1967. <tr>
  1968. <td class="name"><code>out</code></td>
  1969. <td class="type">
  1970. <span class="param-type">vec2</span>
  1971. </td>
  1972. <td class="description last">the receiving vector</td>
  1973. </tr>
  1974. <tr>
  1975. <td class="name"><code>a</code></td>
  1976. <td class="type">
  1977. <span class="param-type">vec2</span>
  1978. </td>
  1979. <td class="description last">the vector to transform</td>
  1980. </tr>
  1981. <tr>
  1982. <td class="name"><code>m</code></td>
  1983. <td class="type">
  1984. <span class="param-type">mat4</span>
  1985. </td>
  1986. <td class="description last">matrix to transform with</td>
  1987. </tr>
  1988. </tbody>
  1989. </table>
  1990. <dl class="details">
  1991. <dt class="tag-source">Source:</dt>
  1992. <dd class="tag-source"><ul class="dummy"><li>
  1993. <a href="vec2.js.html">vec2.js</a>, <a href="vec2.js.html#line442">line 442</a>
  1994. </li></ul></dd>
  1995. </dl>
  1996. <h5>Returns:</h5>
  1997. <div class="param-desc">
  1998. out
  1999. </div>
  2000. <dl>
  2001. <dt>
  2002. Type
  2003. </dt>
  2004. <dd>
  2005. <span class="param-type">vec2</span>
  2006. </dd>
  2007. </dl>
  2008. </article>
  2009. </section>
  2010. </div>
  2011. <nav>
  2012. <h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-glMatrix.html">glMatrix</a></li><li><a href="module-mat2.html">mat2</a></li><li><a href="module-mat2d.html">mat2d</a></li><li><a href="module-mat3.html">mat3</a></li><li><a href="module-mat4.html">mat4</a></li><li><a href="module-quat.html">quat</a></li><li><a href="module-quat2.html">quat2</a></li><li><a href="module-vec2.html">vec2</a></li><li><a href="module-vec3.html">vec3</a></li><li><a href="module-vec4.html">vec4</a></li></ul>
  2013. </nav>
  2014. <br class="clear">
  2015. <footer>
  2016. Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Fri Jul 13 2018 11:51:34 GMT+0200 (W. Europe Daylight Time)
  2017. </footer>
  2018. <script> prettyPrint(); </script>
  2019. <script src="scripts/linenumber.js"> </script>
  2020. </body>
  2021. </html>