|
Как рассчитать положение объектов, чтобы они не пересекались
|
|||
---|---|---|---|
#18+
Есть список объектов. Таким способом я определяю размер прямоугольника: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9.
Как мне рассчитать положение каждого прямоугольника, чтобы они располагались в шахматном порядке, если пересеклись? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2015, 12:04 |
|
Как рассчитать положение объектов, чтобы они не пересекались
|
|||
---|---|---|---|
#18+
PavluhaЕсть список объектов. Таким способом я определяю размер прямоугольника: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9.
Как мне рассчитать положение каждого прямоугольника, чтобы они располагались в шахматном порядке, если пересеклись? у структуры Rect есть метод Intersect, она возвращает Rect пересечения 2 прямоугольников. Но вообще это делается с помощью панелей и элементов панели, а не вот таким способом. в WPF переопределять OnRender далеко не лучшая практика. Для размещения элементов существует класс Panel который можно наследовать и переопределить. Задав свою логику расположения объектов в панели. Все панели такие как Grid, StackPanel и так далее наследования от неё. Для виртуализации используйте VirtualiingPanel, но последний класс абстрактный и сделать реально работающую виртуальную панель будет очень и очень не просто. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2015, 12:54 |
|
Как рассчитать положение объектов, чтобы они не пересекались
|
|||
---|---|---|---|
#18+
Roman Mejtes, Мне надо пересчитать просто положение элемента и все. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2015, 13:07 |
|
Как рассчитать положение объектов, чтобы они не пересекались
|
|||
---|---|---|---|
#18+
PavluhaRoman Mejtes, Мне надо пересчитать просто положение элемента и все.ну у вас есть список Rect которые уже размещены на панели когда вы их отрисовали, обходите этот список с новым рект, проверяете, если он пересекается, перемещаете его туда, куда вам надо. в чем проблема то? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2015, 13:11 |
|
|
start [/forum/topic.php?fid=21&msg=38963953&tid=1440866]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
439ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
46ms |
get tp. blocked users: |
2ms |
others: | 13ms |
total: | 542ms |
0 / 0 |