道格拉斯坐标抽稀算法 无 $polyline = "116.621222,41.028553;116.621648,41.029848;.....";$pl = split(";", $polyline);$plstr = "";$flag = 0;$min = 0.0001;for ($j=0; $j count($pl)-1; $j=$j+3) { $xy1 = split(",", $pl[$j]);$x1 = $xy1[0];$y1 = $xy1
道格拉斯坐标抽稀算法
$polyline = "116.621222,41.028553;116.621648,41.029848;....."; $pl = split(";", $polyline); $plstr = ""; $flag = 0; $min = 0.0001; for ($j=0; $j < count($pl)-1; $j=$j+3) { $xy1 = split(",", $pl[$j]); $x1 = $xy1[0]; $y1 = $xy1[1]; $xy2 = split(",", $pl[$j+2]); $x2 = $xy2[0]; $y2 = $xy2[1]; $b = $x1 - $x2; $a = $y2 - $y1; $c = ($y1 - $y2)*$x1 - $y1*($x1 -$x2); $xys = split(",", $pl[$j+1]); $d = (abs($a * $xys[0] + $b * $xys[1] + $c)) / (sqrt($a * $a + $b * $b)); if($d < $min) { if($flag == 0) $plstr .= $pl[$j+1]; else $plstr .= ";".$pl[$j+1]; $flag++; } } $polyline = $plstr; //希望有技术大神多多提点,帮助我完善代码,万分感谢