Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Media";
Текущий архив: 2006.05.28;
Скачать: [xml.tar.bz2];

Вниз

Векторная графика   Найти похожие ветки 

 
Mulka   (2005-12-26 19:08) [0]

Господа, с наступающим новым годом!

А проблема такая:

Есть ли в инете или в книгах алгоритмы по которым рисуются
линии в векторной графике?
Т.е. если заданы две точки на Canvas то какие пикселы
будут окрашены в нужный цвет?
А вообще задача у меня такая:

На bmp-файле нарисован "регион", надо найти его вершины.


 
palva ©   (2005-12-26 23:42) [1]

Если по рисовании линий, то можно посмотреть тут:
http://graphics.cs.msu.ru/courses/cg_el99/notes/lect01.doc


 
DrPass ©   (2005-12-27 00:34) [2]


> Есть ли в инете или в книгах алгоритмы по которым рисуются
> линии в векторной графике?

Есть. y = a * x + b


 
MBo ©   (2005-12-27 07:25) [3]

>если заданы две точки на Canvas то какие пикселы
будут окрашены в нужный цвет?

Алгоритм Брезенхема или DDA

>На bmp-файле нарисован "регион", надо найти его вершины.
Тут, скорее всего, нужно будет не совсем так - если создается объект - регион, то GetRegionData, иначе вести отрисовку в BegintPath/EndPath, затем преобразовать траекторию в регион


 
Mulka   (2005-12-27 09:18) [4]

Большое спасибо всем за ответы.


> Тут, скорее всего, нужно будет не совсем так - если создается
> объект - регион, то GetRegionData, иначе вести отрисовку
> в BegintPath/EndPath, затем преобразовать траекторию в регион


Я наверное не правильно выразился.
В bmp имеется область пиксели которой имеют определенный цвет.
Моя задача найти точки, которые позволят отоброжать эту область
посредством региона с определенной точностью.


 
MBo ©   (2005-12-27 09:53) [5]

соответствует ли твой термин "регион" такому же объекту Windows?


 
Mulka   (2005-12-27 09:59) [6]

Разумеется


 
Mulka   (2005-12-27 10:04) [7]

Вообще не обязательно регион можно и polyline.
Главное определить координаты точек по которым должен быть
построен примитив.


 
MBo ©   (2005-12-27 10:04) [8]

Тогда не составляет большого труда обойти все пикселы, добавляя нужные в сложный регион. Простейшая реализация - создавать каждый раз региончик 1x1 и CombineRgn с уже имеющимся. Более быстрый метод - группировка в прямоугольники. Описано  на www.delphikingdom.ru в статье А. Григорьева о библиотеке BmpRgn, или в первоисточнике - где-то в недрах www.codeproject.com или www.codeguru.com


 
MBo ©   (2005-12-27 10:05) [9]

>Вообще не обязательно регион можно и polyline.
тогда мне, наверно, не очень понятна задача. Поподробнее.


 
Mulka   (2005-12-27 10:25) [10]


> MBo ©   (27.12.05 10:04) [8]

тоже очень полезно, большое спасибо.

А вообще если скажем в bmp нарисован регион типа Canvas.Polygon(Point1,
Point2,Point3, Point4); (я его сам не рисовал и могу только обращаться к
пикселам), нужно найти Point1, Point2,Point3, Point4.



Страницы: 1 вся ветка

Форум: "Media";
Текущий архив: 2006.05.28;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.012 c
15-1146650290
homm
2006-05-03 13:58
2006.05.28
HTML: выравнивание ячеек в таблице


2-1147156430
EvgeniyC
2006-05-09 10:33
2006.05.28
Здраствуйте! Вопрос: Можно ли сохранить в граф. файл?


4-1141969994
antonn
2006-03-10 08:53
2006.05.28
Баги при работе с TaskSwitchXP


8-1135176215
Woolen
2005-12-21 17:43
2006.05.28
Формат bitmap


1-1145653640
Leonardo
2006-04-22 01:07
2006.05.28
Как определить есть ли в переменной типа TIcon сама иконка





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский