On 7/11/2017 1:43 PM, Basques, Bob (CI-StPaul) wrote:
Steve,
Yeah, my poison is Perl. Was just trying to make it simpler is all.
I have a few services already in place like this.
A separate service it is then . . .
bobb
You want something like this:
http://maps.camavision.com/map/jasperia?pin=08.34.204.012
I use perl with mapscript, the request looks like:
my $xpin = $req->param('pin');
# pin can only contain letters and numbers
($xpin) = $xpin =~ /(\w+)/;
my $map = new mapscript::mapObj($filename);
$q = $db->prepare(
"select * from $schema.getpoint where pin = \$1",
{pg_server_prepare => 0}
);
getPoint returns box2d(st_expand(the_geom, 100)) for a single pin.
Then we generate some javascript:
if ($zoom =~ /BOX\(([-0-9\.]+)\s+([-0-9\.]+),([-0-9\.]+)\s+([-0-9\.]+)\)/)
{
$zoom = "zoomToBound($1, $2, $3, $4);\n";
}
That variable is included in the html, and I have a javascript library
function:
function zoomToBound(x1, y1, x2, y2) {
var bb = new OpenLayers.Bounds.fromArray([x1, y1, x2, y2]);
map.zoomToExtent(bb, true);
}
-Andy
_______________________________________________
mapserver-users mailing list
[email protected]
https://lists.osgeo.org/mailman/listinfo/mapserver-users