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

Вниз

Народ, помогите. Есть изображение фигуры человека, разделенное на   Найти похожие ветки 

 
Maz   (2002-12-09 15:45) [0]

Народ, помогите. Есть изображение фигуры человека, разделенное на области (т.е. руки, ноги, левая часть туловища и т.д.) (медицина) мне нужно чтобы можно было выбрать каждый отдельный кусок тела...как мазаика и активизировать.
я делаю это так.... на каждый участок накладываю несколько Label-ов, потом прописываю события на вход и выход из метки... затем загружаю рисунок такой же но с выделеной частью тела (картинок около 20).
это работает, но очень уж муторно и громоздко получается...
получется где то около 100 меток... на одну картинку, а их 6 :(

помогите как более мудро решить данную проблему....


 
Mirovodin   (2002-12-09 16:38) [1]

Как сделать дольше, но ГРАМОТНО.

1) У каждой картинки (нога, рука и т.д.) создать Transparent фон.
2) Для каждой картинки создать маску с различными цветами. Допустим правая рука желеный, левая белый и т.д.
3) Выводить картинки подготовленные по способу 1 на видимый буфер (TImage, TPaintBox).
4) Картики масок выводить на НЕ Видимый буфер. TBitmap. В то же положение, что и п.3.
5) При клике на картинку 3. получаем координаты клика.
6) По координатам клика вычисляем цвет из картинки созданной по п.4.
7) По цвету определяем, какая часте тела, в данном случае картинка выделена - рука, нога, голова и т.д.
8) Выводим эту картинку со спец. эффектом например чуть просветсяем или гасим.


 
pasha676   (2002-12-09 17:05) [2]

А если сделать через директ или опенЖЛ - то можно просто менять цвет-прозрачность. Имхо - удобней, к тому же человечка можно сделать в 3D ну и маленькие наворотики - вращение, удаление камеры и т.д. Получится очень эффектно и помоему достаточно просто.


 
Mirovodin   (2002-12-09 17:28) [3]

2 pasha676
Медицинские картинки хорошего качества только в 2D есть. Тут же не Quake пишут, а программу для изучени. Тебе нужно будет сделать модель человека + текстуры реалистичные. А так просто отсканить атлас и пару часиков в PhotoShop"е посидеть.


 
pasha676   (2002-12-10 11:51) [4]

Боюсь я не специалист, но все же интересно.

Такой подход как - изображаем текстуру(собственно картинка из атласа) на кубик (или что-то похожее). Картинка по определению - прозрачный фон имеет. Ну нечто вроде примера листа в 3D Max. Потом по необходимости изменяем цвет-прозрачность самого билдера-кубика, на котором лежит текстура. Или тут тоже не прокатит?


 
Maz   (2002-12-10 15:03) [5]

Спасиб за ответы....
С OpenGL я еще не работал....
а вот... с имажем.... все получилось....



 
k0lot00n   (2002-12-20 18:52) [6]

я тоже делал такую программу (человек делится на 24 региона и регионы по разному раскрашиваются) и сделал проще: от каждого региона провел линию и поставил кнопку.
Как тут советовали у меня не получилось:(
Ты мне не пришлешь кусочек кода чтобы я понял технологию ?
Заранее СПАСИБО.


 
AlexT1000   (2002-12-21 10:41) [7]

я бы вообще одним файлом обошелся .однослойный psd c разными значениями альфаканала. съэкономил и место и время и обрабатывать гораздо легче.



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

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

Наверх




Память: 0.46 MB
Время: 0.008 c
1-88051
Evgeny
2003-03-14 17:50
2003.03.27
TStringList


6-88105
Metallica
2002-11-18 18:47
2003.03.27
Вопрос по TWebBrowser...


3-87855
Cranium
2003-03-09 00:37
2003.03.27
Локализация сообщений IB (Yafil) сервера


3-87798
Leo_pr
2003-03-07 15:16
2003.03.27
Картинки в базе


1-87912
hawkins
2003-03-14 09:01
2003.03.27
Есть ли компонент, такой же как TLabel, но многострочный?





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