private void AddCurrCell() { if ((m_curr_cell.Area | m_curr_cell.Cover) != 0) { if (m_num_used_cells >= (int)cell_block_scale_e.cell_block_limit) { return; } AllocateCellsIfRequired(); m_cells.Data()[m_num_used_cells].Set(m_curr_cell); m_num_used_cells++; #if false if (m_num_used_cells == 281) { int a = 12; } DebugFile.Print(m_num_used_cells.ToString() + ". x=" + m_curr_cell.m_x.ToString() + " y=" + m_curr_cell.m_y.ToString() + " area=" + m_curr_cell.m_area.ToString() + " cover=" + m_curr_cell.m_cover.ToString() + "\n"); #endif } }
public void ScanlineCells(uint y, out CellAA[] CellData, out uint Offset) { CellData = m_sorted_cells.Data(); Offset = m_sorted_y[(int)y - m_min_y].start; }
public uint ScanlineNumCells(uint y) { return((uint)m_sorted_y.Data()[(int)y - m_min_y].num); }