2013-09-03 4 views
0

У меня есть 2 прямоугольника которых первое являются текущей картой границами и вторым является предыдущим граничным отображение (перед движением):Bing Maps Как получить общую площадь два прямоугольников местоположения

LocationRect currentBounds = map.Bounds; //the first. 

LocationRect previousBounds --> //the second. 

Как я могу получить общую площадь из них? В математических терминах (я думаю) это означает пересечение между ними?

ответ

2

псевдокод:

Rectangle 
{ 
    left, 
    top, 
    right, 
    bottom 
} 

Rectangle Intersection(Rectangle A, Rectangle B) 
{ 
    return Rectangle 
    { 
     left = max(A.left, B.left), 
     top = max(A.top, B.top), 
     right = min(A.right, B.right), 
     bottom = min(A.bottom, B.bottom) 
    } 
} 

Это предполагает, что значения Y увеличения происходит сверху вниз. Если выполняется обратное, просто переключите вызовы min/max на номера top и bottom.

Смежные вопросы