private void removeFromInner(GridRegion region) { int rsx = region.RegionSizeX; int rsy = region.RegionSizeY; if (rsx < 257 && rsy < 257) { return; } rsx >>= 8; rsy >>= 8; ulong handle = region.RegionHandle & HANDLEMASK; fastRegionHandle fh = new fastRegionHandle(handle); uint startY = fh.y; for (int i = 0; i < rsx; i++) { for (int j = 0; j < rsy; j++) { m_innerHandles.Remove(fh.toHandle()); fh.y += 256; } fh.y = startY; fh.x += 256; } }
private void addToInner(GridRegion region) { int rsx = region.RegionSizeX; int rsy = region.RegionSizeY; if (rsx < 512 && rsy < 512) { return; } rsx >>= 8; rsy >>= 8; ulong handle = region.RegionHandle & HANDLEMASK; fastRegionHandle fh = new fastRegionHandle(handle); uint startY = fh.y; for (int i = 0; i < rsx; i++) { for (int j = 0; j < rsy; j++) { innerHandles[fh.toHandle()] = handle; fh.y += 256; } fh.y = startY; fh.x += 256; } }
public override bool Equals(Object obj) { if (obj == null) { return(false); } fastRegionHandle p = obj as fastRegionHandle; return(p.handle == handle); }