Вниз
Скачать: CL | DM;

а как узнать path окошка?   Найти похожие ветки 

 
Альберт ©   (2007-01-18 23:19) [0]

окна с лесенкой такие некрасивые( вот я и хочу сделать сглаживание неровностей.. и хотел бы начать с определения точек окна по периметру.

подскажите пожалуйста, а как это сделать?


 
default ©   (2007-01-18 23:33) [1]

GetWindowRgn
штука в том, что разным путям может соответствовать один и тот же регион
а окну однозначно соответствует регион, а не путь

ну, а как это применить для изменения региона по существуюшему...
сходу не скажу
возможно, анализировать регион как картинку


 
Джо ©   (2007-01-18 23:48) [2]

Регионы, внутренне, это совокупность прямоугольников, вписанных в данную фигуру.


 
Альберт ©   (2007-01-19 00:53) [3]

а потом я так понимаю GetRegionData


 
default ©   (2007-01-19 00:59) [4]

что-то я слабо представляю, как ты собираешься по аппроксимирующим прямоугольникам искать "лесничатый путь" очерчивающий контур формы
а вот с пиксельным пробегом будет очень просто, если граница окна идёт лесенкой и строго под прямыми углами


 
Альберт ©   (2007-01-19 01:11) [5]

типа взять getdc окна и пробежать по периметру?


 
default ©   (2007-01-19 01:13) [6]

Альберт ©   (19.01.07 01:11) [5]
опиши с окнами какой формы имеешь дело
если лесенка границы окна может идти не только под прямым углом, тогда всё заметно усложняется


 
Альберт ©   (2007-01-19 01:18) [7]

окно чужого приложения, не диалоговое, обычное


 
Альберт ©   (2007-01-19 01:20) [8]

а лесенка абстрактна, без прямого угла
возможен выход из проблемы, если я сам задам регион окну. это может чем-то помочь?


 
default ©   (2007-01-19 01:21) [9]

Альберт ©   (19.01.07 01:18) [7]
я про их форму
"окна с лесенкой такие некрасивые"
вот это расшифруй
вообщем, какой формы границы окон собираешься сглаживать
ну границы могут быть прямоугольные(обычно такие), круглые, эллипсом, и всякие другие
какие у тебя


 
default ©   (2007-01-19 01:25) [10]

Альберт ©   (19.01.07 01:20) [8]
тогда дело хуже
"возможен выход из проблемы, если я сам задам регион окну. "
ты сам можешь задавать регионы окнам которые нужно потом сглаживать?


 
Альберт ©   (2007-01-19 01:35) [11]

ну да в принципе


 
Альберт ©   (2007-01-19 01:40) [12]

в общем цель сглаживание лесенки. круглые, некруглые, не думаю, что значение имеет..

я думаю так, можно скопировать с экрана изображение формы, зная rgn, инвертируем его, перекрасим в другой цвет. таким образом думаю пробежаться по периметру.


 
default ©   (2007-01-19 01:52) [13]

Альберт ©   (19.01.07 01:40) [12]
так-то оно так
только вот как пробегаться будешь
посмотри алгоритмы машинной графики
думаю, что-то подобное должно быть
можно и самому, сложность зависит как и с каким качество сглаживать


 
Альберт ©   (2007-01-19 02:37) [14]

пытаюсь сделать скриншот формы и не фига .. глупая ошибка..
dc:=getdc(0);
getwindowrect(w,rect);
BitBlt(dc, 0, 0, 200, 200, DC, rect.Left + 100, rect.Top, SRCCOPY );


 
default ©   (2007-01-19 08:48) [15]

ты сам можешь задавать регионы окнам которые нужно потом сглаживать?
ну да в принципе

что-то я вчера это без внимания оставил
попробуй тогда о них инфу сохранять



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

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.028 c
15-1168891620
DemonP
2007-01-15 23:07
2007.02.04
Инсталляция BDE


2-1169198242
Extar
2007-01-19 12:17
2007.02.04
Не сворачивается главная форма.


2-1169122651
dr_craigan
2007-01-18 15:17
2007.02.04
Как отнаследовать Transparent в TMainMenu?


2-1169295348
redlord
2007-01-20 15:15
2007.02.04
получение почты средствами компонентов indi


3-1163531908
Kolan
2006-11-14 22:18
2007.02.04
Неужели циклы в T-SQL так тупо сделаны - неверю...




   Наверх