Beispiel #1
0
    private void SubDevide()
    {
        subDividedQuads = new Quad_Test[4];
        float xCenter = boundary.x;
        float yCenter = boundary.y;
        float xShift  = boundary.width / 2;
        float yShift  = boundary.hight / 2;

        Rectangle_Test quadrant0 = new Rectangle_Test(xCenter + xShift, yCenter + yShift, xShift, yShift);

        subDividedQuads[0] = new Quad_Test(quadrant0, capacity);

        Rectangle_Test quadrant1 = new Rectangle_Test(xCenter - xShift, yCenter + yShift, xShift, yShift);

        subDividedQuads[1] = new Quad_Test(quadrant1, capacity);

        Rectangle_Test quadrant2 = new Rectangle_Test(xCenter - xShift, yCenter - yShift, xShift, yShift);

        subDividedQuads[2] = new Quad_Test(quadrant2, capacity);

        Rectangle_Test quadrant3 = new Rectangle_Test(xCenter + xShift, yCenter - yShift, xShift, yShift);

        subDividedQuads[3] = new Quad_Test(quadrant3, capacity);

        divided = true;
    }
Beispiel #2
0
    public void InitilizeTree(float rectangelCenterX, float rectangelCenterY, float rectangelHalfHight, float rectangelHalfWidth, int sectionCapacity)
    {
        Rectangle_Test quadRectangel = new Rectangle_Test(rectangelCenterX, rectangelCenterY, rectangelHalfHight, rectangelHalfWidth);

        rootQuad = new Quad_Test(quadRectangel, sectionCapacity);
    }