Skip to content

Vector Extension

crocblancyt edited this page Dec 1, 2025 · 2 revisions

Vector methods extension

How to load

see import

dofile("vector.methods.lua")
OR
import(".../vector.methods.lua")

Functions

angle

local v, vector.new(1,0,0)
local pi = v:angle(-v)

component

local v = vector.new(1,0,0)
local line = vector.new(2,0,0)
local scalar = v:component(line)

projectOnto

local v = vector.new(1,0,0)
local line = vector.new(2,0,0)
local projection = v:projectOnto(line)

planeFromNormal

local v = vector.new(1,1,1)
local normal = vector.new(0,1,0)
local flat = v:planeFromNormal(normal)

rotate

local v = vector.new(1,0,0)
local axis = vector.new(0,1,0)
local theta = math.rad(90)
local flat = v:rotate(axis, theta)

Clone this wiki locally