Source code for dk64_lib.f3dex2.triangle

from dataclasses import dataclass

from dk64_lib.f3dex2 import commands


[docs] @dataclass(frozen=True, slots=True) class Triangle: v1: int v2: int v3: int def __repr__(self): return f"{self.__class__.__qualname__}({self.v1}, {self.v2}, {self.v3})" @classmethod def from_tri1(cls, cmd: commands.G_TRI1): assert cmd.opcode == b"\x05", "Must be an instance of G_TRI1" return cls(cmd.v1, cmd.v2, cmd.v3) @classmethod def from_tri2(cls, cmd: commands.G_TRI2): assert cmd.opcode == b"\x06", "Must be an instance of G_TRI2" return cls(cmd.v1, cmd.v2, cmd.v3), cls(cmd.v4, cmd.v5, cmd.v6)