ncca-ngl 0.2.7__py3-none-any.whl → 0.3.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
ncca/ngl/quaternion.py CHANGED
@@ -75,6 +75,27 @@ class Quaternion:
75
75
 
76
76
  return Quaternion(s, x, y, z)
77
77
 
78
+ @staticmethod
79
+ def from_axis_angle(axis: "Vec3", angle: float) -> "Quaternion":
80
+ """
81
+ Creates a new Quaternion from an axis and angle.
82
+
83
+ Args:
84
+ axis (Vec3): The axis of rotation.
85
+ angle (float): The angle of rotation in degrees.
86
+
87
+ Returns:
88
+ Quaternion: A new Quaternion representing the rotation.
89
+ """
90
+ angle_rad = math.radians(angle)
91
+ half_angle = angle_rad * 0.5
92
+ s = math.cos(half_angle)
93
+ sin_half_angle = math.sin(half_angle)
94
+ x = axis.x * sin_half_angle
95
+ y = axis.y * sin_half_angle
96
+ z = axis.z * sin_half_angle
97
+ return Quaternion(s, x, y, z)
98
+
78
99
  def __add__(self, rhs):
79
100
  return Quaternion(self.s + rhs.s, self.x + rhs.x, self.y + rhs.y, self.z + rhs.z)
80
101
 
@@ -1,4 +1,4 @@
1
- #version 410 core
1
+ #version 330 core
2
2
  in vec3 fragmentNormal;
3
3
  in vec2 uv;
4
4
 
@@ -1,4 +1,4 @@
1
- #version 410 core
1
+ #version 330 core
2
2
 
3
3
 
4
4
  /// @brief the vertex passed in
@@ -1,4 +1,4 @@
1
- #version 410 core
1
+ #version 330 core
2
2
 
3
3
  uniform mat4 MVP;
4
4
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: ncca-ngl
3
- Version: 0.2.7
3
+ Version: 0.3.0
4
4
  Summary: A Python version of the NGL graphics library.
5
5
  Author: Jon Macey
6
6
  Author-email: Jon Macey <jmacey@bournemouth.ac.uk>
@@ -34,15 +34,15 @@ ncca/ngl/plane.py,sha256=96WuGzexYKhoeRVevGP2pZcustt9fzyyAjuwJHT25tk,1299
34
34
  ncca/ngl/prim_data.py,sha256=Ji08CdnCJP4KPYEwh5P_NcltC76rPfNPx3MXgnkUW-E,19114
35
35
  ncca/ngl/primitives.py,sha256=pThdSWLv7jJa9weBVOXhRgTfVVH54AWCbsDFCEI1YLg,4841
36
36
  ncca/ngl/pyside_event_handling_mixin.py,sha256=L8obXeTp-g2Va2eXyd1hnmSp-sY7p4GX6EcFYRnH1F4,10588
37
- ncca/ngl/quaternion.py,sha256=hvMoaV7uxx60boPg4cTqLJDyTpFZrEpUhikNqmNVTrU,5188
37
+ ncca/ngl/quaternion.py,sha256=sKCoHTzKyN-rx-A4q_eAz_4yLWjFcNYS8H8ay6eCBeA,5868
38
38
  ncca/ngl/random.py,sha256=wX1R2rMpb76TP4rk44NUp5XoVuMisH9d-eBG5kFBZsM,5579
39
39
  ncca/ngl/shader.py,sha256=fEz8R_itsQssIxQp1E8-PhY3aOaTdm7sXpyFYoARSic,7696
40
40
  ncca/ngl/shader_lib.py,sha256=YmF3EJM9roTEt5OI5sHonAVN_ydIseyiOUBFZTX4KdA,18627
41
41
  ncca/ngl/shader_program.py,sha256=WNEUOl4N4giC6caC0uMXm5ikDUtzCuZl7dqZl4M7p6k,33655
42
- ncca/ngl/shaders/checker_fragment.glsl,sha256=2hJH8yOJxLH5DdDdS15C3uom4o4YsiBle0fIYLkx9jI,640
43
- ncca/ngl/shaders/checker_vertex.glsl,sha256=G90GDAY5yEsdYMHhpZhWTmFFx_jfpDUexam-vpuVrXo,411
42
+ ncca/ngl/shaders/checker_fragment.glsl,sha256=FGReGg5l_l9QfGyfdXeOQg5i9KCqw3qpKEJ5H0TAW8Q,640
43
+ ncca/ngl/shaders/checker_vertex.glsl,sha256=Xb3SYKs9iSkw1ejtfttrBrTDTgfdlBy2hVcxrUXIzos,411
44
44
  ncca/ngl/shaders/colour_fragment.glsl,sha256=Y8CeWyDyQAK7u3-rQhURO6Ee3ibturZR3B75e5vcb2U,118
45
- ncca/ngl/shaders/colour_vertex.glsl,sha256=moRuaWAmWbItzIgFlweDMz1dklQrJ_jZKNjw8SaXd9I,154
45
+ ncca/ngl/shaders/colour_vertex.glsl,sha256=MZTFp0KIeiMEi6XPFScxp6I-enpr4wX2Cx8LYmaBnC8,154
46
46
  ncca/ngl/shaders/diffuse_fragment.glsl,sha256=vkKJ9R683yk5OlyUGUwdoqrLyOsvFz3CjZS-wRCuzaY,615
47
47
  ncca/ngl/shaders/diffuse_vertex.glsl,sha256=j1t1Zv5iky0gsBG0HOQGOix6qyj09RHo7c_irMMJZHo,621
48
48
  ncca/ngl/shaders/text_fragment.glsl,sha256=1jrKOSl5EjJOFonWdgj7dNiQtzFSbZy1QaZrUwUidNQ,220
@@ -61,6 +61,6 @@ ncca/ngl/vec3.py,sha256=N_-LvP0nB0CQrZWG7TJntUl6QDHzIVLP-J1w8wPZTM0,12275
61
61
  ncca/ngl/vec3_array.py,sha256=fLRC8k0TwcaU7CnR2GmJ0prud4dcvvUX0JTbQH_2W3Y,3535
62
62
  ncca/ngl/vec4.py,sha256=mLl23D-3yAxh7GsP44ilRto-PMqIDxJjcZpNl2MyqGQ,6751
63
63
  ncca/ngl/vec4_array.py,sha256=PSJXfG0g2AT4oQCLHiVAP6EC5n7vMXRQy0N1rGvv1iw,3426
64
- ncca_ngl-0.2.7.dist-info/WHEEL,sha256=eh7sammvW2TypMMMGKgsM83HyA_3qQ5Lgg3ynoecH3M,79
65
- ncca_ngl-0.2.7.dist-info/METADATA,sha256=M6DICVnyLStX-WNzY-6ThLULlB9tWQkMu7Q8EGF1SRw,1596
66
- ncca_ngl-0.2.7.dist-info/RECORD,,
64
+ ncca_ngl-0.3.0.dist-info/WHEEL,sha256=eh7sammvW2TypMMMGKgsM83HyA_3qQ5Lgg3ynoecH3M,79
65
+ ncca_ngl-0.3.0.dist-info/METADATA,sha256=2ZYRgZJeE3S3Qhlm-9BJQsPof91hJBfq-dgFb9FHyLk,1596
66
+ ncca_ngl-0.3.0.dist-info/RECORD,,