All pastes #770191 Raw Edit

houlala

public cpp v1 · immutable
·published 2007-11-11 23:36 UTC
rendered paste body
void Split :: merge(double _p){	QuadTree * c;	rec_zone(root);		for(int i(0); i < rows * lines; i++)		result[i] = 0;		for(int j(0); j < lines - 1; j++)		for(int i(0); i < rows - 1; i++)		{			c = zone[j * rows + i];			if(c != zone[j * rows + i + 1])			{				if(find(c->neighbours.begin(), c->neighbours.end(), zone[j * rows + i + 1]) == c->neighbours.end())				{					c->neighbours.push_back(zone[j * rows + i + 1]);				}			}						if(c != zone[(j + 1) * rows + i])			{				if(find(c->neighbours.begin(), c->neighbours.end(), zone[(j + 1) * rows + i]) == c->neighbours.end())				{					c->neighbours.push_back(zone[(j + 1) * rows + i]);				}			}		}			for(int j(lines - 1); j > 0; j--)		for(int i(rows - 1); i > 0; i--)		{			c = zone[j * rows + i];			if(c != zone[j * rows + i - 1])			{				if(find(c->neighbours.begin(), c->neighbours.end(), zone[j * rows + i - 1]) == c->neighbours.end())				{					c->neighbours.push_back(zone[j * rows + i - 1]);				}			}						if(c != zone[(j - 1) * rows + i])			{				if(find(c->neighbours.begin(), c->neighbours.end(), zone[(j - 1) * rows + i]) == c->neighbours.end())				{					c->neighbours.push_back(zone[(j - 1) * rows + i]);				}			}		}		rec_merge(root, _p);	merged = true;}