Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Графика и игры
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #16  
Старый 16.04.2010, 11:39
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,721
Репутация: 52347
По умолчанию

Если я правильно понял, то вы при выделении области предложенным мной способом само выделение не видите. Об этом речь?
Тогда надо наверное просто рисовать одновременно с выделением полигон по тем-же кординатам.
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
  #17  
Старый 17.04.2010, 14:41
Аватар для Mystery
Mystery Mystery вне форума
Прохожий
 
Регистрация: 14.04.2010
Адрес: Рязань
Сообщения: 15
Репутация: 10
По умолчанию

Да, мысль верная, то есть в процессе выделения, хотелось бы видеть, что выделяешь.(как карандашиком обводишь )
И потом уже сама выделенная область отображается таким образом, что под ней не видно самого изображения (объясняю как блондинка, извините), как будто сверху наложили заплатку. Можно ли сделать чтобы было видно изображение исходное?
Ответить с цитированием
  #18  
Старый 17.04.2010, 16:36
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,721
Репутация: 52347
По умолчанию

Так добавьте всего одну строчку, в тот код что я вам дал ранее:
Код:
if StartSelectArea
 then if (SelectArea[High(SelectArea)].X <> X) or (SelectArea[High(SelectArea)].Y <> Y)
      then begin
           SetLength(SelectArea, Length(SelectArea)+1);
           SelectArea[High(SelectArea)] := Point(X,Y);
           Image1.Canvas.Polyline(SelectArea);
           end;
Можно еще задать цвет, стиль и толщину линии для выделения.
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
  #19  
Старый 18.04.2010, 02:13
Аватар для Mystery
Mystery Mystery вне форума
Прохожий
 
Регистрация: 14.04.2010
Адрес: Рязань
Сообщения: 15
Репутация: 10
По умолчанию

Как здорово! Спасибо большое ! =))
__________________
Чем дольше я на форуме, тем больше люблю программистов
Ответить с цитированием
  #20  
Старый 24.04.2010, 11:55
Аватар для Mystery
Mystery Mystery вне форума
Прохожий
 
Регистрация: 14.04.2010
Адрес: Рязань
Сообщения: 15
Репутация: 10
По умолчанию

а можно как-то посчитать площадь выделенной области?
и если потом изначально выделенная область будет редактироваться (как в пейнте граф редактор типа карандашик, стирка), можно ли ее площадь считать?
__________________
Чем дольше я на форуме, тем больше люблю программистов
Ответить с цитированием
  #21  
Старый 24.04.2010, 14:34
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,721
Репутация: 52347
По умолчанию

Подсчитать площадь? Интересный вопрос. Поскольку все координаты выделенной области нам известны, то предположу что нужно сделать так:
Найти точку однозначно попадающую в нашу выделенную область. Это будет как-бы центр фигуры. Не принципиально, будет эта точка действительно по центру или очень приближенно. Далее двигаясь скажем по часовой стрелке, берем координаты пары близлежащих точек на выделенной области, иначе говоря это элементы массива точек с индексами N и N+1 и координату нашего центра. Т.е. имеем три координаты образующие треугольник. Подсчитать площадь треугольника мы уже можем, остается проделать эту операцию последовательно со всеми парами точек выделенной области, сложить полученные площади и получим площадь N-угольника.
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.

Последний раз редактировалось Страдалецъ, 24.04.2010 в 14:37.
Ответить с цитированием
  #22  
Старый 24.04.2010, 22:06
Аватар для Mystery
Mystery Mystery вне форума
Прохожий
 
Регистрация: 14.04.2010
Адрес: Рязань
Сообщения: 15
Репутация: 10
По умолчанию

Хмм. Насчет центра или приближения к нему я очень сильно сомневаюсь т.к. выделенные фигуры будет довольно произвольной формы.(в основном тонкие продолговатые).
Это у меня теперь основная загвоздка: получается, что если выделенную фигуру отредактировать вручную, то площадь подсчитать не получится?
__________________
Чем дольше я на форуме, тем больше люблю программистов
Ответить с цитированием
  #23  
Старый 25.04.2010, 00:37
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,721
Репутация: 52347
По умолчанию

Подсчитать все можно, но вот как это сделать я затрудняюсь сказать. Получается, что вам надо подсчитать площадь исходя из граничного цвета. Видимо надо искать решение в инете.
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
  #24  
Старый 25.04.2010, 13:10
Аватар для Mystery
Mystery Mystery вне форума
Прохожий
 
Регистрация: 14.04.2010
Адрес: Рязань
Сообщения: 15
Репутация: 10
По умолчанию

А как в массиве точек SelectArea выбрать крайние координаты? Для последующего вписания выделенной фигуры в прямоугольник.
__________________
Чем дольше я на форуме, тем больше люблю программистов

Последний раз редактировалось Mystery, 25.04.2010 в 17:58.
Ответить с цитированием
  #25  
Старый 25.04.2010, 14:57
Аватар для Mystery
Mystery Mystery вне форума
Прохожий
 
Регистрация: 14.04.2010
Адрес: Рязань
Сообщения: 15
Репутация: 10
По умолчанию

Хочу попробовать использовать метод Монте карло
__________________
Чем дольше я на форуме, тем больше люблю программистов

Последний раз редактировалось Mystery, 25.04.2010 в 18:00.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 00:14.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter