Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Графика

343
19 ноября 2007 года
lena_ki
282 / / 14.04.2005
[SIZE=1]Есть следующая задача:
Пользователь хочет иметь возможность рисовать в программе простенькие изображения и иметь возможность двигать их по форме и масштабировать. Можно конечно предоставить пользователю возможность рисовать на компоненте Image через (LineTo, MoveTo и т.д.) Затем можно мышью двигать этот Image, но как я понимаю при масштабировании (растягивании Image) будет портиться качество рисунка сделанного пользователем.
Как решается эта задача может, есть какой-то специализированный компонент для облегчения работы с векторной графикой?[/SIZE]
11
19 ноября 2007 года
oxotnik333
2.9K / / 03.08.2007
а что мешает использовать не абсолютные координаты, а относительные?
247
20 ноября 2007 года
wanja
1.2K / / 03.02.2003
И не проще рисовать прямо на форме?
1
20 ноября 2007 года
kot_
7.3K / / 20.01.2000
Цитата: lena_ki
[SIZE=1]Есть следующая задача:
Пользователь хочет иметь возможность рисовать в программе простенькие изображения и иметь возможность двигать их по форме и масштабировать. Можно конечно предоставить пользователю возможность рисовать на компоненте Image через (LineTo, MoveTo и т.д.) Затем можно мышью двигать этот Image, но как я понимаю при масштабировании (растягивании Image) будет портиться качество рисунка сделанного пользователем.
Как решается эта задача может, есть какой-то специализированный компонент для облегчения работы с векторной графикой?[/SIZE]


На счет специализированного компонента не знаю - возможно такой и существует. Но по сути ваша задача получить текущие координаты объекта - вовсе не играет роли будут они относительные или абсолютные - выполнить над ними необходимую операцию(перемещение, ротацию и т.д.) и перерисовать фигуру. Маштабирование для вектора именно так и делается.

11
20 ноября 2007 года
oxotnik333
2.9K / / 03.08.2007
под относительными координатами имелось ввиду:
есть квадрат с координатами (х1,у1) (х2,у2)
х1 = 0;
у1 = 0;
х2 = 100;
у2 = 100;
в нем есть линия с координатами (х3,у3) (х4,у4) => (0,0)(50,50)
где
х3 = х1;
у3 = у1;
х4 = х2*0.5
у4 = у2*0.5
т.е. привязывать "внутренние" объекты к родителю с помощъю коэффицентов.
тогда при OnMove или OnResize остается только перерисовать их
343
20 ноября 2007 года
lena_ki
282 / / 14.04.2005
Cпасибо за рекомендации. Попробую разобраться.

P.S.
Смотрела эти компоненты. Они существенно облегчают рисование, масштабирование и перемещение примитивов: http://tmssoftware.com/diagram.htm но мне удалось найти только старую версию за 2005 год без справки. Поэтому не смогла до конца разобраться с ними.
276
20 ноября 2007 года
Rebbit
1.1K / / 01.08.2005
Есть (мною написаный) класс, который отображает многоугольники. Потомок TGraphControl, умеет изменять масштаб изображения и область отображения. Понимаю что не совсем то, но если надо пишите, поделюсь.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог