{"_id":"@aliser/vector2","_rev":"25-27e04ef7002474cca372b132dd38e149","time":{"0.0.5":"2021-02-11T18:33:39.875Z","created":"2021-02-11T18:33:54.945Z","0.0.6":"2021-02-11T18:33:55.158Z","modified":"2022-04-04T13:27:45.244Z","0.0.7":"2021-02-11T18:38:24.209Z","1.0.0":"2021-02-12T17:17:14.072Z","1.0.1":"2021-02-12T17:17:46.508Z","1.0.2":"2021-02-12T17:43:37.009Z","1.0.3":"2021-02-13T10:38:24.648Z","2.0.0":"2021-03-22T16:49:25.508Z"},"name":"@aliser/vector2","dist-tags":{"latest":"2.0.0"},"versions":{"1.0.1":{"name":"@aliser/vector2","version":"1.0.1","description":"Some basic functionality to represent and work with 2D vectors.","main":"./dist/index.js","types":"./dist/index.d.ts","scripts":{"build":"npm run readme && npm run compile","compile":"rimraf dist && tsc","readme":"rimraf readme.md && typedoc --plugin typedoc-plugin-markdown src/index.ts --disableSources && concat-md --toc --decrease-title-levels --dir-name-as-title docs > README.md && rimraf docs","test":"ts-mocha -p tsconfig.test.json test/*.*","coverage":"nyc npm run test"},"keywords":["math","vector","2D"],"author":{"name":"@aliser"},"license":"MIT","devDependencies":{"@types/expect":"^24.3.0","@types/mocha":"^8.2.0","@types/typescript":"^2.0.0","@typescript-eslint/eslint-plugin":"^4.15.0","@typescript-eslint/parser":"^4.15.0","concat-md":"^0.3.5","cpy-cli":"^3.1.1","eslint":"^7.19.0","minify":"^7.0.0","mocha":"^8.2.1","nyc":"^15.1.0","rimraf":"^3.0.2","ts-mocha":"^8.0.0","ts-node":"^9.1.1","typedoc":"^0.20.24","typedoc-plugin-markdown":"^3.4.5","typescript":"^4.1.3"},"repository":{"type":"git","directory":"https://github.com/Eleseer/vector2js.git"},"bugs":{"url":"https://github.com/Eleseer/vector2js/issues"},"type":"module","gitHead":"edc9805d33dbb5cf1fee2108b76e3d577e18ce91","_id":"@aliser/vector2@1.0.1","_nodeVersion":"14.15.4","_npmVersion":"6.14.10","dist":{"integrity":"sha512-1tqzf734OhBDsxZIGkD2Dw6qHpTXbkGRUvE/Zvow0B5ynVxbGDE+QjBbVko0uLnagilY/Pv8HGj8dWqrCCDtzA==","shasum":"69a8a153b74b9a8b922acdbb9380b9566c3a225c","tarball":"https://registry.npmjs.org/@aliser/vector2/-/vector2-1.0.1.tgz","fileCount":5,"unpackedSize":48307,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJrg6CRA9TVsSAnZWagAAi7UP/2sbB9JJ/boK4C63tU9/\n6TTFJFDZL08rWDX6isHTrrAHemibQGdT0im+BMiFfF/ZZAQEjBNBNDfjwAQq\nu42BdSDLhw0ZIvSeZvCyStu/wjBW5KTlvNJmFFPJu24GMd00BAI6LF7w9Nsp\nYDFCUpAHMwgLCUK0HRtm+3bmNDs2jJHqK2IbpvMXaR03HuPZ0ANof+abE0Xo\n1uX9YvwZlNZZBcQhnJLnCyaDdex55M6k+9dB1u4+DUe33xKSGKIk+LteQweO\nU99rh81dimi3m+rVVFTcKODH6y33P4toiXovBnyOe3WvankFoDSbZkJdY+d7\nPw3wDBe/fkcn07OZtwv6ULoNak5gHt/nVDet7ML56swBnpGRxs/r8+8DhY0b\nb0a5zJtCrls9yil65ILTpjrc1HtlnDMrJUDHhYCzm+w2c3arbI6XJ1kkTmYO\nGfRGGGbv5+Z6m7Uv6IwrEUOXItVyVYm92/r4GW/32aDZ1hbYx/2xuEeNDBAM\nwBoGnva407oe1NCIhaJ54iqR1xOsNX+oTmqKtYPZCeFKwvgqBfL2wHlrqdW8\nYxz3/1gll9KYkcW8t7xk0Vq2AoKb/7SCGxy8ASZG68KkXwng5s3noCyLWBRk\nZ2rBBWOkJHauf1arlfrL2aVXzpL+tCzsg7/83AZ5gKYMpIUannbO+VI3aGkZ\nQ//h\r\n=uuPn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCLU86QYoWJeefwOhcUaM96YERB8UeYPfB+FZR6V9LSHQIgG0hIsYz/dEPLJPuVQ40dhW6ap/5Lk1tbVQ5h+17BfzA="}]},"_npmUser":{"name":"aliser","email":"silikovaniy@mail.ru"},"directories":{},"maintainers":[{"name":"aliser","email":"silikovaniy@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vector2_1.0.1_1613150266370_0.13900974069275418"},"_hasShrinkwrap":false},"1.0.2":{"name":"@aliser/vector2","version":"1.0.2","description":"Some basic functionality to represent and work with 2D vectors.","main":"./dist/index.js","types":"./dist/index.d.ts","scripts":{"build":"npm run readme && npm run compile","compile":"rimraf dist && tsc","readme":"rimraf readme.md && typedoc --plugin typedoc-plugin-markdown src/index.ts --disableSources && concat-md --toc --decrease-title-levels --dir-name-as-title docs > README.md && rimraf docs","test":"ts-mocha -p tsconfig.test.json test/*.*","coverage":"nyc npm run test"},"keywords":["math","vector","2D"],"author":{"name":"@aliser"},"license":"MIT","devDependencies":{"@types/expect":"^24.3.0","@types/mocha":"^8.2.0","@types/typescript":"^2.0.0","@typescript-eslint/eslint-plugin":"^4.15.0","@typescript-eslint/parser":"^4.15.0","concat-md":"^0.3.5","cpy-cli":"^3.1.1","eslint":"^7.19.0","minify":"^7.0.0","mocha":"^8.2.1","nyc":"^15.1.0","rimraf":"^3.0.2","ts-mocha":"^8.0.0","ts-node":"^9.1.1","typedoc":"^0.20.24","typedoc-plugin-markdown":"^3.4.5","typescript":"^4.1.3"},"repository":{"type":"git","url":"git+https://github.com/Eleseer/vector2js.git"},"bugs":{"url":"https://github.com/Eleseer/vector2js/issues"},"type":"module","gitHead":"4778c8ad801f304b6daada47ecb12751c6d4f765","homepage":"https://github.com/Eleseer/vector2js#readme","_id":"@aliser/vector2@1.0.2","_nodeVersion":"14.15.4","_npmVersion":"6.14.10","dist":{"integrity":"sha512-x0M+LWyxP56IP/8iGmm0wVJZmUFukViQnXdy1l0BbYAVPIqaUuu3lDLKaX8J+eZJCyINTOmYDonmnpK82ioQyA==","shasum":"cfec9069b0a3fca53d9f48f3a4dd4b8d06106b97","tarball":"https://registry.npmjs.org/@aliser/vector2/-/vector2-1.0.2.tgz","fileCount":5,"unpackedSize":48227,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJr5JCRA9TVsSAnZWagAART0P/jEPfcdmrA1WZvoCw+be\nx6rXMJfol7ueoF2kPBILcO2whcnVSXbHYDQQnpBrgVu8/XkwEZcvVAmBbvZk\nauT5e0T8mF9CStWOkLTEXaQNL/oDIM4KjpXz0QOzmAVPaw7aPJzRVhEGDxAF\n6njR7XKRBBAcEYF9Bs03GO+NKCGVWYrOQ+03Kvq1jbldl6UqUMlEjfjaPPlV\n+0PLPwjEc7Bd0qaP+9oeixqemLIORxYo5sSKQpGtiyuh524K4gEC1YQBpOV2\nT04aSRrr4kgGRgUwWdFhH/tUabH25PEG2QkJWxESqHa5TnnnW1qoQ98YKO4E\nhfMgUn2pPeaKfI2mDU2N1cyeeucBPabOkzVZzmp8qNG2NXY8LXD+D39RrTVs\nJ3Zum7oaD/ixbL45ExPrWfxmJmZ4oj0caoqI0VFc62K9/otG2kTs4G5fLJEp\nOheiADbFhhI8zmY3ZA+w/2JphuJWyRu3pA1+dns1N4sOu+4LyjHC1v5oor2p\nKzNCdtuQLATFTFU20LcOHP37oIM7YqhjHc92/bPZr3/ERVJCgSmg1F9Zbrj0\no/uNYH8JZlgkhujMAja90s858NI6/D9enI1mvOxrc87ae70LuEgPcgin7AFU\n0p2lDRc/g1EQaMJUtQJxZpVqaqIz/GNXW7XPLSOxOSQ8oGGPW1PxQ3HedRlF\nPGDn\r\n=B5Ql\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCmeXQa+2ia14THi0EPlMvEJHKhJHTJoPcOiGINpcKqhwIhAKpQXzXsM+yfjT6Q8IXE8yaFMB9pkmS2YBbx9VCrVST+"}]},"_npmUser":{"name":"aliser","email":"silikovaniy@mail.ru"},"directories":{},"maintainers":[{"name":"aliser","email":"silikovaniy@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vector2_1.0.2_1613151816869_0.8264457924862849"},"_hasShrinkwrap":false},"1.0.3":{"name":"@aliser/vector2","version":"1.0.3","description":"Some basic functionality to represent and work with 2D vectors.","main":"./dist/index.js","types":"./dist/index.d.ts","scripts":{"build":"npm run test && npm run readme && npm run compile","compile":"rimraf dist && tsc","readme":"rimraf readme.md && typedoc --plugin typedoc-plugin-markdown --disableSources src/index.ts && cpy README_HEADER.md docs && concat-md --toc --decrease-title-levels --dir-name-as-title docs > README.md && rimraf docs","test":"ts-mocha -p tsconfig.test.json test/*.*","coverage":"nyc npm run test"},"keywords":["math","vector","2D"],"author":{"name":"@aliser"},"license":"MIT","devDependencies":{"@types/expect":"^24.3.0","@types/mocha":"^8.2.0","@types/typescript":"^2.0.0","@typescript-eslint/eslint-plugin":"^4.15.0","@typescript-eslint/parser":"^4.15.0","concat-md":"^0.3.5","cpy-cli":"^3.1.1","eslint":"^7.19.0","minify":"^7.0.0","mocha":"^8.2.1","nyc":"^15.1.0","rimraf":"^3.0.2","ts-mocha":"^8.0.0","ts-node":"^9.1.1","typedoc":"^0.20.24","typedoc-plugin-markdown":"^3.4.5","typescript":"^4.1.3"},"repository":{"type":"git","url":"git+https://github.com/Eleseer/vector2js.git"},"bugs":{"url":"https://github.com/Eleseer/vector2js/issues"},"type":"module","gitHead":"3427fbdf060089984d4939d755d451091341541d","homepage":"https://github.com/Eleseer/vector2js#readme","_id":"@aliser/vector2@1.0.3","_nodeVersion":"14.15.4","_npmVersion":"6.14.10","dist":{"integrity":"sha512-m/0YScqmdwBD7LswehXD55fyICBwgyrx3BNMDudIO1eu0coS82vAjsFuQ+cZkMCs5J4YWTAOLqkrX62ZF3kSgA==","shasum":"1e6ede94e8a2963670e167398736918c96aa5aec","tarball":"https://registry.npmjs.org/@aliser/vector2/-/vector2-1.0.3.tgz","fileCount":5,"unpackedSize":50093,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJ6whCRA9TVsSAnZWagAAjL8P/AhZHCTyjdsc10FPrT1/\nG+HPXst0JWdeCVgnWBeAWPyV4pI2DoNgR/BY4skDX074qiWl8wuCR0U2uwXh\nxNZIRHsD2z3iuTMjGVoELx8reX5PXYtCOlR2aul3Y4Hzp1s1AoeBUwk6x3vq\ndPToxzIgGaOx/a0jgvQKrb87421aoBfU/o3DRWs9j5WEMCr1wRYycVbtMmjy\nsm313NtoDKMtKMVN01WHk1Wyi98UA/69q1dRbR1PeRg28Lf+ijSj8acfnTuV\neMZ5VBD7cUqvtL1HPHtXA29K/DjzJu5dIYp3c5yw6Yj8/kti5NATGt8KXVM7\nzcXBhhdtIgtl/oW13oDORhniZ/ZxodKSl3bhFiUj1sL67fRiGQ+W5iW7D48f\nKGgNCqj4AI0UoPBFipFaT1UecGreDVdM6xRHdYWXMYL+qZKzV6ZvJ62H2TyT\nc5Um4iyAOb7xXkd5df3Qcc8ka/QGRWcVt30Y1zQrk8QCfR+tWjs1RMRXWi90\nCh0P9CQYFCXv0fTqzDNYP+WOsWwp3f7mlE34RWFgpAIHmuxjr+6jFPZtKInn\nDjcni/vYL/W3cbPiyz9IXyfdIK9FTrXqWLcmZNInyeiavbdMhIWuYKwwrOFQ\nzSxTyFja7qq4IlR4hAeytJi2EQ6bS39dMFYvMjbT1coFPz/yv8ghvkyc33nz\nWc0t\r\n=lxC5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGVFY6pkzRwIxuHXh3uJ6A7dnUdS631O+jGkGQK64YDwAiEAra+z2GlyD+fRhGzKItH/mQEbbxZLxcnpvRZ0/hZxlag="}]},"_npmUser":{"name":"aliser","email":"silikovaniy@mail.ru"},"directories":{},"maintainers":[{"name":"aliser","email":"silikovaniy@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vector2_1.0.3_1613212704546_0.9683836005582704"},"_hasShrinkwrap":false},"2.0.0":{"name":"@aliser/vector2","version":"2.0.0","description":"Some basic functionality to represent and work with 2D vectors.","main":"./dist/index.js","types":"./dist/index.d.ts","scripts":{"build":"npm test && npm run readme && npm run compile","compile":"rimraf dist && tsc","readme":"rimraf readme.md && typedoc --plugin typedoc-plugin-markdown --disableSources src/index.ts && cpy README_HEADER.md docs && concat-md --toc --decrease-title-levels --dir-name-as-title docs > README.md && rimraf docs","test":"ts-mocha -p tsconfig.test.json test/*.*","test:coverage":"nyc npm test","test:coveralls":"nyc npm test && nyc report --reporter=text-lcov | coveralls"},"keywords":["math","vector","2D"],"author":{"name":"@aliser"},"license":"MIT","devDependencies":{"@types/expect":"^24.3.0","@types/mocha":"^8.2.0","@types/typescript":"^2.0.0","@typescript-eslint/eslint-plugin":"^4.15.0","@typescript-eslint/parser":"^4.15.0","concat-md":"^0.3.5","coveralls":"^3.1.0","cpy-cli":"^3.1.1","eslint":"^7.19.0","minify":"^7.0.0","mocha":"^8.2.1","mocha-lcov-reporter":"^1.3.0","nyc":"^15.1.0","rimraf":"^3.0.2","ts-mocha":"^8.0.0","ts-node":"^9.1.1","typedoc":"^0.20.24","typedoc-plugin-markdown":"^3.4.5","typescript":"^4.1.3"},"repository":{"type":"git","url":"git+https://github.com/Eleseer/vector2js.git"},"bugs":{"url":"https://github.com/Eleseer/vector2js/issues"},"type":"module","sideEffects":false,"gitHead":"62ee21c2b61edfcc662cdf8f4eff4a697a117026","homepage":"https://github.com/Eleseer/vector2js#readme","_id":"@aliser/vector2@2.0.0","_nodeVersion":"14.15.4","_npmVersion":"6.14.10","dist":{"integrity":"sha512-ZhJh5KJFxiBOJE4t+83oa8trH5lUdSNYeRlzdBhNcAEz850IvG51WF0rNVumIYNLLg1ifQzZ5m0tdankr18C/g==","shasum":"1d0d23e5007989e03ca977279922c08cb1a5a79e","tarball":"https://registry.npmjs.org/@aliser/vector2/-/vector2-2.0.0.tgz","fileCount":5,"unpackedSize":46096,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWMqWCRA9TVsSAnZWagAA7/UP/3FU3c0yPC8pRKqaeRsH\nCeJAM/r74YsanWu1DU+OikqS+ivyCrrpAxPBY8RxKIO7LYFfaeWNMqRzPDGX\neWDkNRTqtmOqCP6teC8xty0tWU/UxK8U3OSPxU4tqMJ66MjEhoHagXCg4BVX\n1CWiT3dUi1Dayytt68B0xA1PsPcJTECWrXmrJIMslSrvVXy09L9EG0pOco1a\nDZyda1e7z414ycf/0fYPxfFLrt5d15Ug8q14VfiBCqDnHSQWJ/9Zii1zKihv\nAEDbx26RsonpLpxLWRJ/NiFTTi6brGrzw3T4mFS7CgdpN9HzsbUDSa3p6xZ1\nH9zwcJpvaZLRL1FYAAtpXIrSDyEfC0Z9Ss6LRay22u1U7I+Ygjt++XCC94pn\n53Dwr0KQmaKaQJPud1cYOJ46hiFNmkT2+XmcMw3wXGO1ZJGGNMBqLbQt6R+a\n+ofCCP8L56/dqVLKS7ruzP6mWg0vQYLNpgmoQejBvxcpRvaymA3NwEZA/0Tc\n+5IcWAOifWA6N0D42wgdxKH0WCDUI7Ra0stQoh31bk6AppyBdYJhhU+9/AFF\nthIyhfgoJuV+lVOBLB5sxJiZNM02/BeRou8NRVh2ahyWLI4MbeEhGgDPlJ7u\nKIVnAxmjVdtuBL3NaxuV583+AlYDjlJfAglYxcTlpqNr+mtTqYUxUO1Bf5Ee\n9nDE\r\n=j+Lh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDfn0KvlXsKwtNkT8HdlKBm/e97tr+2uhJXkTHKnvcY8gIgMLdbTNe/zuDmqv79ARTX/LdwFrZLqfjSD7J1p3tXij8="}]},"_npmUser":{"name":"aliser","email":"silikovaniy@mail.ru"},"directories":{},"maintainers":[{"name":"aliser","email":"silikovaniy@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vector2_2.0.0_1616431765350_0.042894667070644044"},"_hasShrinkwrap":false}},"maintainers":[{"name":"aliser","email":"silikovaniy@mail.ru"}],"description":"Some basic functionality to represent and work with 2D vectors.","keywords":["math","vector","2D"],"repository":{"type":"git","url":"git+https://github.com/Eleseer/vector2js.git"},"author":{"name":"@aliser"},"license":"MIT","readme":"<!-- START doctoc generated TOC please keep comment here to allow auto update -->\r\n<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->\r\n\r\n\r\n- [Usage](#usage)\r\n- [*TODO*](#todo)\r\n- [Classes](#classes)\r\n  - [Class: Vector2](#class-vector2)\r\n    - [Hierarchy](#hierarchy)\r\n    - [Implements](#implements)\r\n    - [Table of contents](#table-of-contents)\r\n    - [Constructors](#constructors)\r\n    - [Properties](#properties)\r\n    - [Accessors](#accessors)\r\n    - [Methods](#methods)\r\n- [@aliser/vector2](#aliservector2)\r\n  - [Table of contents](#table-of-contents-1)\r\n    - [Classes](#classes-1)\r\n    - [Variables](#variables)\r\n  - [Variables](#variables-1)\r\n    - [DEG2RAD](#deg2rad)\r\n    - [RAD2DEG](#rad2deg)\r\n\r\n<!-- END doctoc generated TOC please keep comment here to allow auto update -->\r\n\r\n\r\n<a name=\"readmemd\"></a>\r\n\r\n@aliser/vector2 / [Exports](#modulesmd)\r\n\r\n\r\n<a name=\"readme_headermd\"></a>\r\n\r\n[![Build Status](https://www.travis-ci.com/Eleseer/vector2js.svg?branch=main)](https://www.travis-ci.com/Eleseer/vector2js)\r\n[![Coverage Status](https://coveralls.io/repos/github/Eleseer/vector2js/badge.svg?branch=main)](https://coveralls.io/github/Eleseer/vector2js?branch=main)\r\n\r\n# Usage\r\nInstall with npm.\r\n```shell\r\nnpm install @aliser/vector2\r\n```\r\nImport as a module.\r\n```javascript\r\nimport { Vector2, RAD2DEG, DEG2RAD } from '@aliser/vector2';\r\n```\r\n**Enjoy!**\r\n\r\nBelow you can find the docs for all of this.\r\n\r\n*Note: the static and the instance methods are mixed. Sorry for that.* \r\n\r\n# *TODO*\r\n- [ ] custom interpolation functions for the `static lerp` - slide with ease!\r\n- [ ] maybe some static damping function - it'll make the target vector experience some kind of repulsion (the magnitude of which is controller by some specified function) on approaching the end point.\r\n- [ ] getters for directions - up, down, right, west, east, forward, backward, sideways, the 5- and 11- dimensions and other.\r\n- [ ] implement the stuff that other libs like this one are providing: reflect, normal, moveTowards.\r\n# Classes\r\n\r\n\r\n<a name=\"classesvector2md\"></a>\r\n\r\n[@aliser/vector2](#readmemd) / [Exports](#modulesmd) / Vector2\r\n\r\n## Class: Vector2\r\n\r\n### Hierarchy\r\n\r\n* **Vector2**\r\n\r\n### Implements\r\n\r\n* *IVector2*\r\n\r\n### Table of contents\r\n\r\n#### Constructors\r\n\r\n- [constructor](#constructor)\r\n\r\n#### Properties\r\n\r\n- [x](#x)\r\n- [y](#y)\r\n\r\n#### Accessors\r\n\r\n- [0](#0)\r\n- [1](#1)\r\n- [angle](#angle)\r\n- [mag](#mag)\r\n- [max](#max)\r\n- [min](#min)\r\n- [sqrMag](#sqrmag)\r\n- [u](#u)\r\n- [v](#v)\r\n\r\n#### Methods\r\n\r\n- [add](#add)\r\n- [ceil](#ceil)\r\n- [clamp](#clamp)\r\n- [copy](#copy)\r\n- [div](#div)\r\n- [floor](#floor)\r\n- [isEquals](#isequals)\r\n- [lerp](#lerp)\r\n- [mod](#mod)\r\n- [mult](#mult)\r\n- [negate](#negate)\r\n- [normalize](#normalize)\r\n- [rotateBy](#rotateby)\r\n- [rotateTo](#rotateto)\r\n- [round](#round)\r\n- [set](#set)\r\n- [setMag](#setmag)\r\n- [sub](#sub)\r\n- [add](#add)\r\n- [angleBetween](#anglebetween)\r\n- [angleBetweenSigned](#anglebetweensigned)\r\n- [dist](#dist)\r\n- [div](#div)\r\n- [dot](#dot)\r\n- [fromAngle](#fromangle)\r\n- [lerp](#lerp)\r\n- [mult](#mult)\r\n- [random](#random)\r\n- [randomWithLength](#randomwithlength)\r\n- [sub](#sub)\r\n- [zero](#zero)\r\n\r\n### Constructors\r\n\r\n#### constructor\r\n\r\n\\+ **new Vector2**(`x?`: *number*, `y?`: *number*): [*Vector2*](#classesvector2md)\r\n\r\nCreates an instance.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`x?` | *number* |\r\n`y?` | *number* |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n\\+ **new Vector2**(`xy?`: *number*): [*Vector2*](#classesvector2md)\r\n\r\nCreates an instance, where 'x' and 'y' are both equal to 'xy'.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`xy?` | *number* |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n\\+ **new Vector2**(): [*Vector2*](#classesvector2md)\r\n\r\nCreates an instance, where 'x' and 'y' are both equal to 0.\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n\\+ **new Vector2**(`vec?`: [*Vector2*](#classesvector2md)): [*Vector2*](#classesvector2md)\r\n\r\nCreates an instance, where 'x' and 'y' are equal to 'x' and 'y' of 'vec', respectively.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`vec?` | [*Vector2*](#classesvector2md) |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n### Properties\r\n\r\n#### x\r\n\r\n• **x**: *number*\r\n\r\n___\r\n\r\n#### y\r\n\r\n• **y**: *number*\r\n\r\n### Accessors\r\n\r\n#### 0\r\n\r\n• **0**(): *number*\r\n\r\n**Returns:** *number*\r\n\r\nalias for 'x'.\r\n\r\n• **0**(`value`: *number*): *void*\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`value` | *number* |\r\n\r\n**Returns:** *void*\r\n\r\nalias for 'x'.\r\n\r\n___\r\n\r\n#### 1\r\n\r\n• **1**(): *number*\r\n\r\n**Returns:** *number*\r\n\r\nalias for 'y'.\r\n\r\n• **1**(`value`: *number*): *void*\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`value` | *number* |\r\n\r\n**Returns:** *void*\r\n\r\nalias for 'y'.\r\n\r\n___\r\n\r\n#### angle\r\n\r\n• **angle**(): *number*\r\n\r\nThe signed angle (from -PI to PI radians).\r\n\r\n**Returns:** *number*\r\n\r\n• **angle**(`value`: *number*): *void*\r\n\r\nThe signed angle (from -PI to PI radians).\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`value` | *number* |\r\n\r\n**Returns:** *void*\r\n\r\n___\r\n\r\n#### mag\r\n\r\n• **mag**(): *number*\r\n\r\nThe length.\r\n\r\nNote, when setting 'mag' to negative value, both 'x' and 'y' will be set to 0, and the magnitude will be 0.\r\n\r\n**Returns:** *number*\r\n\r\n• **mag**(`value`: *number*): *void*\r\n\r\nThe length.\r\n\r\nNote, when setting 'mag' to negative value, both 'x' and 'y' will be set to 0, and the magnitude will be 0.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`value` | *number* |\r\n\r\n**Returns:** *void*\r\n\r\n___\r\n\r\n#### max\r\n\r\n• **max**(): *number*\r\n\r\n**Returns:** *number*\r\n\r\nthe largest of 'x' and 'y'.\r\n\r\n___\r\n\r\n#### min\r\n\r\n• **min**(): *number*\r\n\r\n**Returns:** *number*\r\n\r\nthe smallest of 'x' and 'y'.\r\n\r\n___\r\n\r\n#### sqrMag\r\n\r\n• **sqrMag**(): *number*\r\n\r\n**Returns:** *number*\r\n\r\nthe length, squared.\r\n\r\n___\r\n\r\n#### u\r\n\r\n• **u**(): *number*\r\n\r\n**Returns:** *number*\r\n\r\nalias for 'x'.\r\n\r\n• **u**(`value`: *number*): *void*\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`value` | *number* |\r\n\r\n**Returns:** *void*\r\n\r\nalias for 'x'.\r\n\r\n___\r\n\r\n#### v\r\n\r\n• **v**(): *number*\r\n\r\n**Returns:** *number*\r\n\r\nalias for 'y'.\r\n\r\n• **v**(`value`: *number*): *void*\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`value` | *number* |\r\n\r\n**Returns:** *void*\r\n\r\nalias for 'y'.\r\n\r\n### Methods\r\n\r\n#### add\r\n\r\n▸ **add**(`deltaX`: *number*): [*Vector2*](#classesvector2md)\r\n\r\nAdds 'deltaX' to both 'x' and 'y'.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`deltaX` | *number* |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n▸ **add**(`deltaX`: *number*, `deltaY`: *number*): [*Vector2*](#classesvector2md)\r\n\r\nAdds 'deltaX' and 'deltaY' to 'x' and 'y', respectively.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`deltaX` | *number* |\r\n`deltaY` | *number* |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n▸ **add**(`vec`: [*Vector2*](#classesvector2md)): [*Vector2*](#classesvector2md)\r\n\r\nAdds 'x' and 'y' of 'vec' to 'x' and 'y', respectively.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`vec` | [*Vector2*](#classesvector2md) |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n___\r\n\r\n#### ceil\r\n\r\n▸ **ceil**(): [*Vector2*](#classesvector2md)\r\n\r\nDoes the rounding to the nearest larger integer.\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n___\r\n\r\n#### clamp\r\n\r\n▸ **clamp**(): [*Vector2*](#classesvector2md)\r\n\r\nRestricts 'x' and 'y' from going below 0 or above 1.\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n▸ **clamp**(`upperBound`: *number*): [*Vector2*](#classesvector2md)\r\n\r\nRestricts 'x' and 'y' from going below 0 or above 'upperBound'.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`upperBound` | *number* |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n▸ **clamp**(`lowerBound`: *number*, `upperBound`: *number*): [*Vector2*](#classesvector2md)\r\n\r\nRestricts 'x' and 'y' from going below 'lowerBound' or above 'upperBound'.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`lowerBound` | *number* |\r\n`upperBound` | *number* |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n▸ **clamp**(`lowerBoundX`: *number*, `upperBoundX`: *number*, `lowerBoundY`: *number*, `upperBoundY`: *number*): [*Vector2*](#classesvector2md)\r\n\r\nRestricts 'x' from going below 'lowerBoundX' or above 'upperBoundX', and for 'y' from going below 'lowerBoundY' or above 'upperBoundY'.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`lowerBoundX` | *number* |\r\n`upperBoundX` | *number* |\r\n`lowerBoundY` | *number* |\r\n`upperBoundY` | *number* |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n___\r\n\r\n#### copy\r\n\r\n▸ **copy**(): [*Vector2*](#classesvector2md)\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\na copy of this instance.\r\n\r\n___\r\n\r\n#### div\r\n\r\n▸ **div**(`divisor`: *number*): [*Vector2*](#classesvector2md)\r\n\r\nDivides both 'x' and 'y' by 'divisor'.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`divisor` | *number* |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n▸ **div**(`divisorX`: *number*, `divisorY`: *number*): [*Vector2*](#classesvector2md)\r\n\r\nDivides 'x' and 'y' by 'divisorX' and 'divisorY', respectively.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`divisorX` | *number* |\r\n`divisorY` | *number* |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n▸ **div**(`vec`: [*Vector2*](#classesvector2md)): [*Vector2*](#classesvector2md)\r\n\r\nDivides 'x' and 'y' by 'x' and 'y' of vec, respectively.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`vec` | [*Vector2*](#classesvector2md) |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n___\r\n\r\n#### floor\r\n\r\n▸ **floor**(): [*Vector2*](#classesvector2md)\r\n\r\nDoes the rounding to the nearest smaller integer.\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n___\r\n\r\n#### isEquals\r\n\r\n▸ **isEquals**(`vec`: [*Vector2*](#classesvector2md)): *boolean*\r\n\r\nChecks if 'x' and 'y' are strictly equal to 'x' and 'y', respectively.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`vec` | [*Vector2*](#classesvector2md) |\r\n\r\n**Returns:** *boolean*\r\n\r\n___\r\n\r\n#### lerp\r\n\r\n▸ **lerp**(`vec1`: [*Vector2*](#classesvector2md), `vec2`: [*Vector2*](#classesvector2md), `t`: *number*): [*Vector2*](#classesvector2md)\r\n\r\nLinearly interpolates between 'vec1' and 'vec2' by 't', setting this instance to result.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`vec1` | [*Vector2*](#classesvector2md) |\r\n`vec2` | [*Vector2*](#classesvector2md) |\r\n`t` | *number* |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n___\r\n\r\n#### mod\r\n\r\n▸ **mod**(`divisor`: *number*): [*Vector2*](#classesvector2md)\r\n\r\nDivides both 'x' and 'y' by 'divisor' and sets them to the remainder of that division, respectively.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`divisor` | *number* |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n▸ **mod**(`divisorX`: *number*, `divisorY`: *number*): [*Vector2*](#classesvector2md)\r\n\r\nDivides 'x' and 'y' by 'divisorX' and 'divisorY', respectively, and sets them to the remainder of that division, also respectively.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`divisorX` | *number* |\r\n`divisorY` | *number* |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n___\r\n\r\n#### mult\r\n\r\n▸ **mult**(`multiplier`: *number*): [*Vector2*](#classesvector2md)\r\n\r\nMultiplies both 'x' and 'y' by 'multiplier'.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`multiplier` | *number* |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n▸ **mult**(`multiplierX`: *number*, `multiplierY`: *number*): [*Vector2*](#classesvector2md)\r\n\r\nMultiplies 'x' and 'y' by 'multiplierX' and 'multiplierY', respectively.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`multiplierX` | *number* |\r\n`multiplierY` | *number* |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n▸ **mult**(`vec`: [*Vector2*](#classesvector2md)): [*Vector2*](#classesvector2md)\r\n\r\nMultiplies 'x' and 'y' by 'x' and 'y' of 'vec', respectively.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`vec` | [*Vector2*](#classesvector2md) |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n___\r\n\r\n#### negate\r\n\r\n▸ **negate**(): [*Vector2*](#classesvector2md)\r\n\r\nInverts both 'x' and 'y' (makes them -'x' and -'y').\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n___\r\n\r\n#### normalize\r\n\r\n▸ **normalize**(): [*Vector2*](#classesvector2md)\r\n\r\nMangles the length of this instance until it will be 1.\r\n\r\nNote, if the length of this instance is 0, than it will not be changed.\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n___\r\n\r\n#### rotateBy\r\n\r\n▸ **rotateBy**(`angleInRadiansDelta`: *number*): [*Vector2*](#classesvector2md)\r\n\r\nRotates this instance by 'angleInRadiansDelta' radians.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`angleInRadiansDelta` | *number* |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n▸ **rotateBy**(`vec`: [*Vector2*](#classesvector2md)): [*Vector2*](#classesvector2md)\r\n\r\nRotates this instance by the signed angle of 'vec'.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`vec` | [*Vector2*](#classesvector2md) |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n___\r\n\r\n#### rotateTo\r\n\r\n▸ **rotateTo**(`angleInRadians`: *number*): [*Vector2*](#classesvector2md)\r\n\r\nRotates this instance to 'angleInRadians' radians.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`angleInRadians` | *number* |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n▸ **rotateTo**(`vec`: [*Vector2*](#classesvector2md)): [*Vector2*](#classesvector2md)\r\n\r\nRotates this instance to the angle of 'vec'.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`vec` | [*Vector2*](#classesvector2md) |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n___\r\n\r\n#### round\r\n\r\n▸ **round**(): [*Vector2*](#classesvector2md)\r\n\r\nDoes the rounding to the nearest integer.\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n___\r\n\r\n#### set\r\n\r\n▸ **set**(`x?`: *number*, `y?`: *number*): [*Vector2*](#classesvector2md)\r\n\r\nSets 'x' and 'y', respectively.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`x?` | *number* |\r\n`y?` | *number* |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n▸ **set**(`xy?`: *number*): [*Vector2*](#classesvector2md)\r\n\r\nSets both 'x' and 'y' to 'xy'.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`xy?` | *number* |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n▸ **set**(): [*Vector2*](#classesvector2md)\r\n\r\nSets both 'x' and 'y' to 0.\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n▸ **set**(`vec?`: [*Vector2*](#classesvector2md)): [*Vector2*](#classesvector2md)\r\n\r\nSets 'x' and 'y' to 'x' and 'y' of 'vec', respectively.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`vec?` | [*Vector2*](#classesvector2md) |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n___\r\n\r\n#### setMag\r\n\r\n▸ **setMag**(`value`: *number*): [*Vector2*](#classesvector2md)\r\n\r\nFunction alias of 'mag'.\r\n\r\nSets the length.\r\n\r\nNote, when setting 'value' is negative, both 'x' and 'y' will be set to 0, and the magnitude will be 0.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`value` | *number* |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n▸ **setMag**(`vec`: [*Vector2*](#classesvector2md)): [*Vector2*](#classesvector2md)\r\n\r\nSets the length to the length of `vec`.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`vec` | [*Vector2*](#classesvector2md) |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n___\r\n\r\n#### sub\r\n\r\n▸ **sub**(`delta`: *number*): [*Vector2*](#classesvector2md)\r\n\r\nSubtracts 'delta' from both 'x' and 'y'.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`delta` | *number* |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n▸ **sub**(`deltaX`: *number*, `deltaY`: *number*): [*Vector2*](#classesvector2md)\r\n\r\nSubtracts 'deltaX' and 'deltaY' from 'x' and 'y', respectively.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`deltaX` | *number* |\r\n`deltaY` | *number* |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n▸ **sub**(`vec`: [*Vector2*](#classesvector2md)): [*Vector2*](#classesvector2md)\r\n\r\nSubtracts 'x' and 'y' of 'vec' from 'x' and 'y', respectively.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`vec` | [*Vector2*](#classesvector2md) |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n___\r\n\r\n#### add\r\n\r\n▸ `Static`**add**(...`vecs`: [[*Vector2*](#classesvector2md), [*Vector2*](#classesvector2md), ...Vector2[]]): [*Vector2*](#classesvector2md)\r\n\r\nAdds 'vecs' together.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`...vecs` | [[*Vector2*](#classesvector2md), [*Vector2*](#classesvector2md), ...Vector2[]] |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n___\r\n\r\n#### angleBetween\r\n\r\n▸ `Static`**angleBetween**(`vec1`: [*Vector2*](#classesvector2md), `vec2`: [*Vector2*](#classesvector2md)): *number*\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`vec1` | [*Vector2*](#classesvector2md) |\r\n`vec2` | [*Vector2*](#classesvector2md) |\r\n\r\n**Returns:** *number*\r\n\r\nan unsigned angle (from 0 to PI radians) between 'vec1' and 'vec2'.\r\n\r\n___\r\n\r\n#### angleBetweenSigned\r\n\r\n▸ `Static`**angleBetweenSigned**(`vec1`: [*Vector2*](#classesvector2md), `vec2`: [*Vector2*](#classesvector2md)): *number*\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`vec1` | [*Vector2*](#classesvector2md) |\r\n`vec2` | [*Vector2*](#classesvector2md) |\r\n\r\n**Returns:** *number*\r\n\r\nthe smallest signed angle (from -PI to PI radians) between 'vec1' and 'vec2'.\r\n\r\nNote, that the resulting angle is the angle that, if applied as a rotation to 'vec1', will result in 'vec2'.\r\n\r\n___\r\n\r\n#### dist\r\n\r\n▸ `Static`**dist**(`vec1`: [*Vector2*](#classesvector2md), `vec2`: [*Vector2*](#classesvector2md)): *number*\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`vec1` | [*Vector2*](#classesvector2md) |\r\n`vec2` | [*Vector2*](#classesvector2md) |\r\n\r\n**Returns:** *number*\r\n\r\nthe distance between 'vec1' and 'vec2'.\r\n\r\n___\r\n\r\n#### div\r\n\r\n▸ `Static`**div**(...`vectors`: [[*Vector2*](#classesvector2md), [*Vector2*](#classesvector2md), ...Vector2[]]): [*Vector2*](#classesvector2md)\r\n\r\nSequentially divides 'vecs', one by one.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`...vectors` | [[*Vector2*](#classesvector2md), [*Vector2*](#classesvector2md), ...Vector2[]] |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n___\r\n\r\n#### dot\r\n\r\n▸ `Static`**dot**(`vec1`: [*Vector2*](#classesvector2md), `vec2`: [*Vector2*](#classesvector2md)): *number*\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`vec1` | [*Vector2*](#classesvector2md) |\r\n`vec2` | [*Vector2*](#classesvector2md) |\r\n\r\n**Returns:** *number*\r\n\r\nthe dot product of 'vec1' and 'vec2'.\r\n\r\n___\r\n\r\n#### fromAngle\r\n\r\n▸ `Static`**fromAngle**(`angleOfRadians`: *number*, `length?`: *number*): [*Vector2*](#classesvector2md)\r\n\r\n##### Parameters:\r\n\r\nName | Type | Default value |\r\n------ | ------ | ------ |\r\n`angleOfRadians` | *number* | - |\r\n`length` | *number* | 1 |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\na new instance with angle 'angleOfRadians' radians and length 'length'.\r\n\r\n___\r\n\r\n#### lerp\r\n\r\n▸ `Static`**lerp**(`vecOut`: [*Vector2*](#classesvector2md), `vec1`: [*Vector2*](#classesvector2md), `vec2`: [*Vector2*](#classesvector2md), `t`: *number*): [*Vector2*](#classesvector2md)\r\n\r\nLinearly interpolates between 'vec1' and 'vec2' by 't', setting 'vecOut' to result.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`vecOut` | [*Vector2*](#classesvector2md) |\r\n`vec1` | [*Vector2*](#classesvector2md) |\r\n`vec2` | [*Vector2*](#classesvector2md) |\r\n`t` | *number* |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n'vecOut'.\r\n\r\n___\r\n\r\n#### mult\r\n\r\n▸ `Static`**mult**(...`vecs`: [[*Vector2*](#classesvector2md), [*Vector2*](#classesvector2md), ...Vector2[]]): [*Vector2*](#classesvector2md)\r\n\r\nMultiplies 'vecs' together.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`...vecs` | [[*Vector2*](#classesvector2md), [*Vector2*](#classesvector2md), ...Vector2[]] |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n___\r\n\r\n#### random\r\n\r\n▸ `Static`**random**(`multiplier?`: *number*): [*Vector2*](#classesvector2md)\r\n\r\n##### Parameters:\r\n\r\nName | Type | Default value |\r\n------ | ------ | ------ |\r\n`multiplier` | *number* | 1 |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\na new instance with 'x' and 'y' individually set to some random value from -1 to below 1, multiplied by 'multiplier'.\r\n\r\n___\r\n\r\n#### randomWithLength\r\n\r\n▸ `Static`**randomWithLength**(`length?`: *number*): [*Vector2*](#classesvector2md)\r\n\r\n##### Parameters:\r\n\r\nName | Type | Default value |\r\n------ | ------ | ------ |\r\n`length` | *number* | 1 |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\na new instance with 'x' and 'y' individually set to some random value in such a way that the length of the new instance will be 'length'.\r\n\r\n___\r\n\r\n#### sub\r\n\r\n▸ `Static`**sub**(...`vecs`: [[*Vector2*](#classesvector2md), [*Vector2*](#classesvector2md), ...Vector2[]]): [*Vector2*](#classesvector2md)\r\n\r\nSequentially subtracts 'vecs', one by one.\r\n\r\n##### Parameters:\r\n\r\nName | Type |\r\n------ | ------ |\r\n`...vecs` | [[*Vector2*](#classesvector2md), [*Vector2*](#classesvector2md), ...Vector2[]] |\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\n___\r\n\r\n#### zero\r\n\r\n▸ `Static`**zero**(): [*Vector2*](#classesvector2md)\r\n\r\n**Returns:** [*Vector2*](#classesvector2md)\r\n\r\na new instance with both 'x' and 'y' set to 0.\r\n\r\n\r\n<a name=\"modulesmd\"></a>\r\n\r\n[@aliser/vector2](#readmemd) / Exports\r\n\r\n# @aliser/vector2\r\n\r\n## Table of contents\r\n\r\n### Classes\r\n\r\n- [Vector2](#classesvector2md)\r\n\r\n### Variables\r\n\r\n- [DEG2RAD](#deg2rad)\r\n- [RAD2DEG](#rad2deg)\r\n\r\n## Variables\r\n\r\n### DEG2RAD\r\n\r\n• `Const` **DEG2RAD**: *number*\r\n\r\nMultiply your degrees by this to convert them to radians.\r\n\r\n___\r\n\r\n### RAD2DEG\r\n\r\n• `Const` **RAD2DEG**: *number*\r\n\r\nMultiply your radians by this to convert them to degrees.\r\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Eleseer/vector2js/issues"},"homepage":"https://github.com/Eleseer/vector2js#readme"}