public function geotest() { $point11 = array('x' => 1, 'y' => 1); $point12 = array('x' => 1, 'y' => 2); $point21 = array('x' => 2, 'y' => 1); $point22 = array('x' => 2, 'y' => 2); $point23 = array('x' => 2, 'y' => 3); $point31 = array('x' => 3, 'y' => 1); $point32 = array('x' => 3, 'y' => 2); $point33 = array('x' => 3, 'y' => 3); $point43 = array('x' => 4, 'y' => 3); $point75 = array('x' => 7, 'y' => 5); $line1 = array($point31, $point43); $line2 = array($point12, $point43); $line3 = array($point11, $point23); $line4 = array($point32, $point33); $line5 = array($point43, $point75); $polygon1 = array($point11, $point21, $point32, $point33, $point23); // var_dump(Geometry::lineCuttingPolygon($line1, $polygon1)); // var_dump(Geometry::lineCuttingPolygon($line2, $polygon1)); // var_dump(Geometry::segmentIntersectSegment($line1, $line4)); // var_dump(Geometry::segmentCuttingPolygon($line1, $polygon1)); // var_dump(Geometry::segmentCuttingPolygon($line5, $polygon1)); // var_dump(Geometry::pointDistancePoint($point12, $point23)); var_dump(Geometry::pointDistanceLine($point31, array($point21, $point32))); // var_dump(Geometry::pointDistanceSegment($point12, array($point23, $point11))); // var_dump(Geometry::pointPedalSegment($point12, array($point23, $point33))); // var_dump(Geometry::pointDistancePolyline($point22, $polygon1)); var_dump(Geometry::pointDistancePolygon($point31, $polygon1)); }