This file is from Wikimedia Commons and may be used by other projects.
The description on its file description page there is shown below.
Summary
DescriptionWinding number algorithm example.svg
English: Example of the winding number algorithm, as described by Dan Sunday. The algorithm determines if a point is inside a given polygon (with counter-clockwise orientation). It does so by casting a horizontal ray starting from the point, and counting its edge crossings, incrementing 1 if the edge crosses upwards through the ray, and decrementing 1 if the edge crosses downwards. If the resulting number is 0, then the point is outside the polygon. Otherwise, the point is inside the polygon.
Português: Exemplo do algoritmo de índice, como descrito por Dan Sunday. O algoritmo determina se um ponto está dentro de um dado polígono (com orientação anti-horária). Ele faz isso traçando uma linha horizontal a partir do ponto, e contando cruzamentos de arestas, incrementando 1 se a aresta cruza a linha para cima, e decrementando 1 se a aresta cruza para baixo. Se o número resultante é 0, então o ponto está fora do polígono. Caso contrário, o ponto está dentro do polígono.
to share – to copy, distribute and transmit the work
to remix – to adapt the work
Under the following conditions:
attribution – You must give appropriate credit, provide a link to the licence, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
share alike – If you remix, transform, or build upon the material, you must distribute your contributions under the same or compatible licence as the original.
Change last line to be an example of wn = −1, as that was previously missing (and might lead viewers to believe points inside the polygon require wn > 0, instead of the correct wn ≠ 0)