Как проверить принадлежит ли точка (x,y) заданому региону?

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
AlexBlack
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 324
Зарегистрирован: 18.07.2005 (Пн) 19:14
Откуда: Киефф, Юкрейн...

Как проверить принадлежит ли точка (x,y) заданому региону?

Сообщение AlexBlack » 02.09.2005 (Пт) 19:26

регион задаётся через CreateRoundRectRgn
Красный, но студийный.

http://www.rs-creative.com
Alex_Black@rs-creative.com

d3drm
Астролог
Астролог
Аватара пользователя
 
Сообщения: 2873
Зарегистрирован: 29.05.2002 (Ср) 23:34
Откуда: МаСКвА

Сообщение d3drm » 02.09.2005 (Пт) 20:54

разделить регион на треугольники и протестить каждый...
ХЎ

AlexBlack
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 324
Зарегистрирован: 18.07.2005 (Пн) 19:14
Откуда: Киефф, Юкрейн...

Сообщение AlexBlack » 02.09.2005 (Пт) 20:56

:) Ещё гениальные предложения будут?
Красный, но студийный.

http://www.rs-creative.com
Alex_Black@rs-creative.com

Amed
Алфизик
Алфизик
 
Сообщения: 5346
Зарегистрирован: 09.03.2003 (Вс) 9:26

Сообщение Amed » 02.09.2005 (Пт) 20:58

PtInRegion отменяли? Ну-ка марш в апи-гайд! :)

AlexBlack
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 324
Зарегистрирован: 18.07.2005 (Пн) 19:14
Откуда: Киефф, Юкрейн...

Сообщение AlexBlack » 02.09.2005 (Пт) 21:00

да-да....
Незнаю... последнее время лезь лень в справочник (А особенно когда есть такие харошие люди как вы! :) )
Красный, но студийный.

http://www.rs-creative.com
Alex_Black@rs-creative.com

Amed
Алфизик
Алфизик
 
Сообщения: 5346
Зарегистрирован: 09.03.2003 (Вс) 9:26

Сообщение Amed » 02.09.2005 (Пт) 21:08

Код: Выделить всё
Private Declare Function PtInRegion Lib "gdi32" (ByVal hRgn As Long, ByVal x As Long, ByVal y As Long) As Long
Private Declare Function CreateRoundRectRgn Lib "gdi32" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long, ByVal X3 As Long, ByVal Y3 As Long) As Long

Private Sub Form_Load()
Dim hReg As Long
Dim hRes As Long
hReg = CreateRoundRectRgn(0, 0, 500, 500, 100, 100)
hRes = PtInRegion(hReg, 250, 250)
MsgBox hRes
End Sub


Что тут лениться? Одна минута на создание примера с нуля!

AlexBlack
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 324
Зарегистрирован: 18.07.2005 (Пн) 19:14
Откуда: Киефф, Юкрейн...

Сообщение AlexBlack » 03.09.2005 (Сб) 12:54

да не... когда я постил свой месадж уже было всё готово.... просто на поиски апишки лень био-энергию тратить... :):):)
Красный, но студийный.

http://www.rs-creative.com
Alex_Black@rs-creative.com

AlexBlack
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 324
Зарегистрирован: 18.07.2005 (Пн) 19:14
Откуда: Киефф, Юкрейн...

Сообщение AlexBlack » 03.09.2005 (Сб) 17:05

да-да.... есть такое немного... :)
Красный, но студийный.

http://www.rs-creative.com
Alex_Black@rs-creative.com


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Majestic-12 [Bot], SemrushBot и гости: 29

    TopList