Skip to content

Vector Extension

CrocBlanc edited this page Sep 1, 2025 · 2 revisions

Vector methods extension

How to load

see import

dofile("vector.methods.lua")
OR
import("https://raw.githubusercontent.com/CrocBlancYT/computer-craft-libraries/refs/heads/main/src/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