Provides 2D and 3D vector types for vector operations in Julia.
Run one of those commands in the Julia REPL:
-
Through the SISL registry:
] registry add https://github.com/sisl/Registry add Vec
-
Through
Pkgimport Pkg Pkg.add(PackageSpec(url="https://github.com/sisl/Vec.jl.git"))
Vec.jl provides several vector types, named after their groups. All types are immutable and are subtypes of 'StaticArrays'' FieldVector, so they can be indexed and used as vectors in many contexts.
VecE2provides an (x,y) type of the Euclidean-2 group.VecE3provides an (x,y,z) type of the Euclidean-3 group.VecSE2provides an (x,y,theta) type of the special-Euclidean 2 group.
v = VecE2(0, 1)
v = VecSE2(0,1,0.5)
v = VecE3(0, 1, 2)Additional geometry types include Quat for quaternions, Line, LineSegment, and Projectile.
The switch to StaticArrays brings several breaking changes. If you need a backwards-compatible version, please checkout the v0.1.0 tag with cd(Pkg.dir("Vec")); run(`git checkout v0.1.0`).