Přihlášení
Email:
Heslo:
Zapomenuté heslo
Nová registrace
Zapomenuté heslo
Email:
<< Zpět na příhlášení
Přihlásit

Funkce "je bod v polygonu"

Autor: Martin Zemek | Datum: 1.1.1970 - 01:00 | Shlédnuto: 187x


JAVASCRIPT

 
/**
     * 
     * @param {type} poly [x,y]
     * @param {type} pt [x,y]
     * @returns {Boolean}
     */
    this.isPointInPoly = function(poly, pt) {
        for (var c = false, i = -1, l = poly.length, j = l - 1; ++i < l; j = i)
            ((poly[i].y <= pt.y && pt.y < poly[j].y) || 
(poly[j].y <= pt.y && pt.y < poly[i].y)) && (pt.x < (poly[j].x - poly[i].x) *
(pt.y - poly[i].y) / (poly[j].y - poly[i].y) + poly[i].x) && (c = !c); return c; };

PHP

function isPointInPoly($poly, $pt) { 
     for ($c = false, $i = -1, $l = count($poly), $j = $l - 1; ++$i < $l; $j = $i)        
 (($poly[$i][1] <= $pt['y'] && $pt['y'] < $poly[$j][1]) ||        
 ($poly[$j][1] <= $pt['y'] && $pt['y'] < $poly[$i][1])) &&      
 ($pt['x'] < ($poly[$j][0] - $poly[$i][0]) * ($pt['y'] - $poly[$i][1]) /         
($poly[$j][1] - $poly[$i][1]) + $poly[$i][0]) && ($c = !$c); return $c;
}


Akce s článkem
Podobné články