diff options
Diffstat (limited to 'src/engine/geometry.rs')
-rw-r--r-- | src/engine/geometry.rs | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/engine/geometry.rs b/src/engine/geometry.rs index 22b56f0..02fe44b 100644 --- a/src/engine/geometry.rs +++ b/src/engine/geometry.rs @@ -59,6 +59,16 @@ impl Point { 1 << index } } + + pub fn to_either_bitfield(&self, width: u8) -> u64 { + if self.x >= width { + let index = self.y * width + self.x - width; + 1 << index + } else { + let index = self.y * width + self.x; + 1 << index + } + } } use std::cmp::Ord; |