집 >데이터 베이스 >MySQL 튜토리얼 >PHP에서 점이 다각형 내부에 있는지 어떻게 확인할 수 있나요?
문제:
다각형과 비슷한 좌표를 가진 점을 사용하여 점이 다각형의 경계 내에 있는지 확인합니다.
구현:
PHP는 고전적인 방법을 사용하여 이 문제를 해결하는 기능을 제공합니다. Point-in-Polygon 알고리즘. 함수는 다음과 같습니다.
<code class="php">function is_in_polygon($points_polygon, $vertices_x, $vertices_y, $longitude_x, $latitude_y) { $i = $j = $c = 0; for ($i = 0, $j = $points_polygon ; $i < $points_polygon; $j = $i++) { if ( (($vertices_y[$i] > $latitude_y != ($vertices_y[$j] > $latitude_y)) && ($longitude_x < ($vertices_x[$j] - $vertices_x[$i]) * ($latitude_y - $vertices_y[$i]) / ($vertices_y[$j] - $vertices_y[$i]) + $vertices_x[$i]) ) ) $c = !$c; } return $c; }</code>
사용법:
함수를 사용하려면 다음 매개변수를 제공하세요.
점이 다각형 내에 있고 그렇지 않으면 false.
추가 참고 사항:PHP는 또한 isInside를 포함하여 여러 다각형 관련 함수가 포함된 Polygon.php 클래스를 제공합니다. 점이 다각형 내에 있는지 확인하는 데 사용할 수 있습니다.
위 내용은 PHP에서 점이 다각형 내부에 있는지 어떻게 확인할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!