|
2 | 2 |
|
3 | 3 | import math |
4 | 4 | import struct |
5 | | -from typing import TYPE_CHECKING, List, Optional, Sequence, Tuple, TypeVar, Union, cast |
| 5 | +from typing import TYPE_CHECKING, List, Optional, Tuple, Union, cast |
6 | 6 |
|
7 | 7 | from ..classes.generated import ( |
8 | 8 | ChannelInfo, |
|
34 | 34 | Tuple3f = Tuple[float, float, float] |
35 | 35 | Tuple4f = Tuple[float, float, float, float] |
36 | 36 |
|
37 | | -T = TypeVar("T") |
38 | | - |
39 | | - |
40 | | -def flat_list_to_tuples(data: Sequence[T], item_size: int) -> List[tuple[T, ...]]: |
41 | | - return [tuple(data[i : i + item_size]) for i in range(0, len(data), item_size)] |
42 | | - |
43 | 37 |
|
44 | 38 | def vector_list_to_tuples( |
45 | 39 | data: Union[List[Vector2f], List[Vector3f], List[Vector4f]], |
@@ -403,7 +397,10 @@ def read_vertex_data(self, m_Channels: list[ChannelInfo], m_Streams: list[Stream |
403 | 397 |
|
404 | 398 | count = len(componentBytes) // component_byte_size |
405 | 399 | component_data = struct.unpack(f">{count}{component_dtype}", componentBytes) |
406 | | - component_data = flat_list_to_tuples(component_data, channel_dimension) |
| 400 | + component_data = [ |
| 401 | + tuple(component_data[i : i + channel_dimension]) |
| 402 | + for i in range(0, len(component_data), channel_dimension) |
| 403 | + ] |
407 | 404 |
|
408 | 405 | self.assign_channel_vertex_data(chn, component_data) |
409 | 406 |
|
|
0 commit comments