1

Тема: перевірка чи належить точка многокутнику

На системі координат розташовані відрізки, які утворюють многокутники. Та дана точка.
Потрібно дізнатись якому многокутнику належить дана точка, та чи одна з вершин многокутника лежить на границі поля координат, але це не так важливо, головне визначити в якому многокутнику знаходиться точка, маючи тільки відрізки, вершини яких збережені таким чином:

Chemist-i написав:

Мій варіант:

    Type
        TtwoCoordinates = Record
            X1 : Integer;
            Y1 : Integer;
            X2 : Integer;
            Y2 : Integer;
        End;     

відрізками вважається люба лінія, яка знаходиться між жовтими точками на рисунку (точки на границі поля також утворюють собою відрізки).

Тож мене цікавить сам алгоритм яким можна буде перебрати сектори (такі, які ті, що пронумеровані на рисунку) з подальшою перевіркою на наявність в них точки

2

Re: перевірка чи належить точка многокутнику

Було вже.

x

3

Re: перевірка чи належить точка многокутнику

Ага, це явно продовження попереднього топіку. Але нехай уже воно буде тут.

4

Re: перевірка чи належить точка многокутнику

Chemist-i
Для мене не дуже зрозумілий ваш спосіб, тобто, якщо ми прдовжимо відрізок 1
http://s3.hostingkartinok.com/uploads/thumbs/2014/02/af8d9d101fbcf6259511ef0f590537ce.png
то ми будемо надалі працювати з півплощиною, яка знаходиться вище нього, але як ми тоді визначимо, що ця фігура дотикається до нижньої границі?

5

Re: перевірка чи належить точка многокутнику

укр.вікі
рус.вікі
А тут про те, що я пояснював, але більш докладно (рус).

x

6

Re: перевірка чи належить точка многокутнику

я це розумію, але у такому випадку http://s3.hostingkartinok.com/uploads/thumbs/2014/02/6ac901f10d0f7fc2421e02750a8b8995.png
у нас немає конкрентого многокутника, а лише збережені координати початку та кінця відрізків, які утворюють собою многокутники.
Мене цікавить як можна перебрати усі ці многокутники (як ті, що пронумеровані на зображенні)