Главная страница
    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.47 MB
Время: 0.012 c
10-1120033112
supervk
2005-06-29 12:18
2006.05.28
Позиция текста в TWordDocument или TWordApplication


15-1146580228
geserx111
2006-05-02 18:30
2006.05.28
вопрос модераторам


1-1145377281
Dust
2006-04-18 20:21
2006.05.28
Указатель на функцию из метода.


15-1146811361
Rulikkk
2006-05-05 10:42
2006.05.28
Ищу openSource компонент, для отображения блок схем.


2-1147511357
Vitalik__
2006-05-13 13:09
2006.05.28
Кто нибудь работал с SynEdit?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский