private Rectangle KernelBounds(Rectangle intersectRect, Rectangle searchRect, bool randomise)
        {
            // First find the intersection between the tile and the background drawn bounds.
            //Rectangle intersectRect = backgroundRect;
            Size size = GetKernelSize(intersectRect, searchRect);
            Rectangle rect = new Rectangle(new Point(), size);

            return rect.RectanglePositionAroundCentre(searchRect.Centre());
        }