1 import mathutils
3 # zero length vector
4 vec = mathutils.Vector((0, 0, 1))
6 # unit length vector
7 vec_a = vec.copy().normalize()
9 vec_b = mathutils.Vector((0, 1, 2))
11 vec2d = mathutils.Vector((1, 2))
12 vec3d = mathutils.Vector((1, 0, 0))
13 vec4d = vec_a.copy().resize4D()
15 # other mathutuls types
16 quat = mathutils.Quaternion()
17 matrix = mathutils.Matrix()
19 # Comparison operators can be done on Vector classes:
21 # greater and less then test vector length.
22 vec_a > vec_b
23 vec_a >= vec_b
24 vec_a < vec_b
25 vec_a <= vec_b
27 # ==, != test vector values e.g. 1,2,3 != 3,2,1 even if they are the same length
28 vec_a == vec_b
29 vec_a != vec_b
32 # Math can be performed on Vector classes
33 vec_a + vec_b
34 vec_a - vec_b
35 vec_a * vec_b
36 vec_a * 10.0
37 vec_a * matrix
38 vec_a * vec_b
39 vec_a * quat
40 -vec_a
43 # You can access a vector object like a sequence
44 x = vec_a
45 len(vec)
46 vec_a[:] = vec_b
47 vec2d[:] = vec3d[:2]
50 # Vectors support 'swizzle' operations
51 # See http://en.wikipedia.org/wiki/Swizzling_(computer_graphics)
52 vec.xyz = vec.zyx
53 vec.xy = vec4d.zw
54 vec.xyz = vec4d.wzz
55 vec4d.wxyz = vec.yxyx