Coder Social home page Coder Social logo

mapserver / mapserver Goto Github PK

View Code? Open in Web Editor NEW
974.0 82.0 356.0 68.96 MB

Source code of the MapServer project. Please submit pull requests to the 'main' branch.

Home Page: https://mapserver.org

License: Other

CMake 0.87% Makefile 0.10% C 53.23% Shell 0.26% C++ 32.16% Python 2.25% C# 0.38% Java 0.16% Perl 0.15% HTML 0.99% Ruby 0.01% Tcl 0.04% XSLT 0.43% Lex 0.29% Yacc 0.17% JavaScript 0.08% PHP 0.19% Scheme 8.12% Batchfile 0.05% Dockerfile 0.05%
c mapserver ogc wms wfs wcs sos gml ogc-services geospatial osgeo web map mapping web-mapping gdal optimized speed engine foss4g

mapserver's Introduction

MapServer

Build Status Appveyor Build Status Coveralls Status DOI


Summary

MapServer is a system for developing web-based GIS applications. The basic system consists of a CGI program that can be configured to respond to a variety of spatial requests like making maps, scalebars, and point, area and feature queries. Virtually all aspects of an application, from web interface to map appearance can be developed without any programming. For the more ambitious user, MapServer applications can be enhanced using Python, PHP, Java, JavaScript or many other web technologies. For more information and complete documentation please visit:

https://mapserver.org/

Bug reports and enhancement submissions can be reported in the MapServer issue tracker at the following url. If you do make changes and/or enhancements, please let us know so that they might be incorporated into future releases.

https://github.com/MapServer/MapServer/issues

Join the MapServer user mailing list online at:

https://mapserver.org/community/lists.html

Credits

MapServer was originally written by Stephen Lime. Major funding for development of MapServer has been provided by NASA through cooperative argreements with the University of Minnesota, Department of Forest Resources.

PHP/MapScript developed by DM Solutions Group.

GDAL/OGR support and significant WMS support provided by DM Solutions Group which received funding support from Canadian Government's GeoConnections Program and the Canadian Forest Service.

Raster support developed by Pete Olson of the State of Minnesota, Land Management Information Center, and maintained by Frank Warmerdam (DM Solutions).

PostGIS spatial database support provided by Dave Blasby of Refractions Research.

PDF support developed by Jeff Spielberg and Jamie Wall of Market Insite Group, Inc.

OracleSpatial support developed by Rodrigo Cabral of CTTMAR/UNIVALI, Brazil.

Portions Copyright (c) 1998 State of Minnesota, Land Management Information Center.

Portions derived from Shapelib, Copyright 1995-1999 Frank Warmerdam.

Supporting packages are covered by their own copyrights.

License

See LICENSE.md

Security policy

See SECURITY.md

How to Contribute

See CONTRIBUTING.md

Documentation Repository

Use the separate MapServer-documentation repository for filing documentation tickets and changes.

mapserver's People

Contributors

alexandergabriel avatar constantinius avatar dmorissette avatar ejn avatar geographika avatar gfenoy avatar gogglesguy avatar hobu avatar jbo-ads avatar jlarouche avatar jmckenna avatar jwall avatar klassenjs avatar maxkellermann avatar micking avatar mkofahl avatar pmauduit avatar pramsey avatar ravhed avatar rouault avatar schpidi avatar sdlime avatar sebastic avatar sgillies avatar szekerest avatar tbonfort avatar tokrsen avatar tomkralidis avatar unicolet avatar warmerdam avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mapserver's Issues

PHP PROJ - Add calls for pj_transform with PROJ 4.4.3+

Reporter: dmorissette
Date: 2001/09/20 - 16:37
Trac URL: http://trac.osgeo.org/mapserver/ticket/47

Subject:         [mapserver-users] proj module for php with pj_transform ?
   Date:         Thu, 20 Sep 2001 14:10:38 +0200
   From:         "Claude Philipona" <[email protected]>
     To:         <[email protected]>

There is the source for a proj module for php in the distribution of Mapserver.
We compiled it and use it to have forward and inverse porjection directly
available in PHP.

In the new version of proj 4.4.3 there are some new fonctions allowing to make
datum shift and to transform from any coordinates (projection or geographic)
system to another one, with pj_transform.

We know that these function are not implemented yet in the php module. As we are
not expert in building php module, we wanted to know if anybody is planning to
extend the php proj module with those fucntion?

For now, I'm using the exec() function to call the system command cs2cs (command
using pj_transform). For example to translate from swiss grid to UTM 32N:
exec("cs2cs +init=epsg:9814 +to +init=epsg:32632 <<EOF\n 600000 200000 480 \n 
EOF
\n" ,$cmd_result);


Claude Philipona

new getProjection() method for map or layer classes

Reporter: [email protected]
Date: 2001/09/20 - 18:26
Trac URL: http://trac.osgeo.org/mapserver/ticket/48

Request to add a new method to map and layer classes: getProjection().

The method should return a string, or even better, an array of strings with 
proj4 parameters (if any) of map or layer.

Could be VERY useful in cases when you want to get user-input in some 
coordinate system and convert this input to map coordinates without previously 
knowing the projection of the map.

PHP MapScript - ZoomScale() error

Reporter: dmorissette
Date: 2001/09/20 - 16:31
Trac URL: http://trac.osgeo.org/mapserver/ticket/46

Subject:        [mapserver-users] strange behaviour of zoomscale() in 
phpmapscript
   Date:        Sat, 15 Sep 2001 13:24:53 +0200
   From:        "Claude Philipona" <[email protected]>
     To:        <[email protected]>

Hello,
We have observed a strange behaviour with the zoomscale method in PHPMpscript
3.5.
If we set the zoomscale with a given scale, we get in return a scale that is not
set equal to what we gave as parameter. There is always a shift, which appears,
for a given width and height, to be a constant percentage of the scale. This
appears anywhere on the map, even very far from the maximum mapextent.

Is it a bug or a wrong use of the fonction? Actually, we need for our 
application
to be able to zoom with a precise scale, to get one to one pixel representation
of our raster image

Here is an example of the problem

we use:
MapScript Version (Aug 29, 2001)
MapServer version 3.5 (pre-alpha) OUTPUT=PNG OUTPUT=JPEG OUTPUT=WBMP
SUPPORTS=PROJ SUPPORTS=TTF SUPPORTS=WMS INPUT=EPPL7 INPUT=JPEG INPUT=OGR
INPUT=GDAL INPUT=SHAPEFILE

if we do:
$Map->zoomscale($scale, $pixelpos,
                    $width_pix, $height_pix,
                    $georefext, $georefmaxext);

with the following values (part of var_dump($Map->scale):
$scale:
int(28347)

$pixelpos:
["x"]=> float(281) ["y"]=> float(277)

$width:
int(400)

$height:
int(400)

$georefext:
["minx"]=> float(556933.36088877) ["miny"]=> float(111233.13134228) ["maxx"]=>
float(562918.54274843) ["maxy"]=> float(117218.31320194)

$georefmaxext:
["minx"]=> float(479231.75) ["miny"]=> float(65964.67) ["maxx"]=>
float(847736.75) ["maxy"]=> float(320184.67)

just after $Map->zoomscale() we get

$new_scale: 28276.1325

$new_extent (bbox): 559142.913985  111078.53760395  563132.98830536
115068.61192431


we have a difference between what we asked and what we get of :
28347 - 28276.1325 = 70.8675 which is 0.25% (this factor is constant for 400x400
map at any scale, but it chages with different scale).

This behaviour doesn't  depend on the initial scale prior to the call of
zoomscale (in this example, the initial scale was 42414)

Any idea on what is happening?

Claude Philipona

WMS - Wrong BoundingBox in capabilities

Reporter: dmorissette
Date: 2001/08/14 - 16:04
Trac URL: http://trac.osgeo.org/mapserver/ticket/34

If a map file contains wms_srs metadata with some EPSG codes and data is in a 
projection with no EPSG code equivalent then the BoundingBox is still output 
using the map's default ground units but is advertized as being in the first 
projection in the wms_srs metadata.

Explanation may not be clear enough... here is an example... the following 
mapfile settings:

WEB
  ...
  METADATA
    "wms_title"         "GMap WMS Demo Server"
    "wms_onlineresource" "http://www2.dmsolutions.ca:8099/cgi-bin/mswms_gmap?"
    "wms_srs"   "EPSG:4269 EPSG:4326"
  END
END

PROJECTION
     "proj=lcc"
     "ellps=GRS80"
     "lat_0=49"
     "lon_0=-95"
     "lat_1=49"
     "lat_2=77"
END  

Will return this... in which the BoundingBox coordinates are not in the 
advertized SRS:

    <Title>GMap WMS Demo Server</Title>
    <SRS>EPSG:4269 EPSG:4326</SRS>
    <LatLonBoundingBox minx="-172.367" miny="35.6673" maxx="-11.5624" 
maxy="83.8293" />
    <BoundingBox SRS="EPSG:4269"
                minx="-2.2e+06" miny="-712631" maxx="3.0728e+06" maxy="3.84e+06" 
/>

BBOX that crosses dateline

Reporter: warmerdam
Date: 2001/07/11 - 15:43
Trac URL: http://trac.osgeo.org/mapserver/ticket/25

> My question is how is a BBOX supposed to be specified in geographic
> coordinates for a region that crosses the dateline? 
> 
> If I want the 2x2 degree region with a top left corner of 179E,1N and
> a lower left corner of 179W and 1S would it be:
> 
>   BBOX=179,1,181,-1
> or 
>   BBOX=179,1,-179,-1
> or 
>   BBOX=-179,1,179,1
> 
> The second actually works with the newish WMS implementation 
> in MapServer
> (from UMN) but it freaks me out that xmin is greater than 
> xmax.  The third
> would normally be taken to define a 358x2 degree square not 
> crossing the 
> equator.  The first is only acceptable if degree values outside the 
> -180 to 180 / -90 to 90 range are allowed and even then we 
> would have to
> carefully consider the semantics. 
> 


This is part of the 1.1 specification, par 6.5.6

----- Quote:

In the particular case of longitude, the following behavior applies
regarding the anti-meridian
at 180 degrees of longitude. There is a legitimate desire for maps that
span the
anti-meridian (for example, a map centered on the Pacific Ocean). If
Xmin is the west-most
longitude in degrees and Xmax is the east-most, then the following
constraint
applies:
-180 <= Xmin < Xmax < 540

EXAMPLES: Xmin,Xmax values and the corresponding scope of the bounding
box:
-180,180 = Earth centered at Greenwich
0,360 = Earth with Greenwich at left edge
120,250 = Pacific Ocean

----- Unquote

Best regards,

Bart Adriaanse
www.demis.nl

PHP_MAPSCRIPT - the infamous 'invalid _map_handle_' strikes again

Reporter: dmorissette
Date: 2001/08/09 - 20:31
Trac URL: http://trac.osgeo.org/mapserver/ticket/30

Date:         Wed, 8 Aug 2001 14:26:06 -0400 (CLT)
   From:         "Vinko Vrsalovic B." <[email protected]>
     To:         [email protected] (Daniel Morissette)
    CC:         [email protected]

Well, I finally got the time to upgrade from PHP4.0.3 to PHP 4.0.6.

I'm using the latest CVS build of MS3.5 (08-01) and when executing this code:

dl("php_mapscript.so");

$map = ms_newMapObj("../buses.map");

$imag = $map->prepareImage();

$l_stgo=$map->getLayerByName("arcosbase");
$l_stgo->set("status",1);

$l_stgo->draw($imag);

$bar = $map->drawScalebar();
$url_bar = $bar->saveWebImage(MS_PNG,0,0,0);
$map->drawLabelCache($imag);
$url = $imag->saveWebImage(MS_PNG, 0,0,0);

I get a:

Fatal error: Object has an invalid '_map_handle_' property in 
/var/www/html/ms_demo/php/layer.php on
line 11

If I change the $l_stgo->draw($imag); line to $imag=$map->draw(); 
it works perfectly.

WMS - Scalehint should be provided when MIN/MAXSCALE is set

Reporter: dmorissette
Date: 2001/07/18 - 15:28
Trac URL: http://trac.osgeo.org/mapserver/ticket/27

Paul Ramsey wrote:
> 
> I have started exploring the WMS capability somewhat... I was wondering
> why the WMS does not provide a ScaleHint for layers which have
> explicitly defined min and max scales? 

Probably just an omission... I'll try to check that.

> What will the MapServer WMS do if
> a client does  GetMap on a layer using an extent which violates the
> maxscale? 

The layer just won't show up.

> I am thinking in terms of writing a client which knows nothing
> about the WMS except there is a service there: in order to properly
> request scale-restricted layers, the ScaleHint is vital. Otherwise the
> client could request every contour in the province, when in fact
> contours should only be requested at a close-in zoom level.

PHP_MAPSCRIPT - shapefileObj->free() does not close file

Reporter: dmorissette
Date: 2001/08/30 - 16:50
Trac URL: http://trac.osgeo.org/mapserver/ticket/40

With PHP 4.0.6, a call to shpfile->free() does not close the file immediately, 
and this has the side-effect that a script that creates a temporary shapefile 
cannot reuse it until the next script execution.

This can be reproduced using test_writeshape.phtml, after adding error_log() 
messages in the PHP script, and a msDebug() call in mapscript_i.c: 
shapefileObj_destroy()

Note: doing 2 calls in a row to shapefile->free() will actually close the 
file... so this is definitely related to the reference counts that were added 
internally in PHP4.

Impossible to set MS_MAPFILE on Windows

Reporter: dmorissette
Date: 2001/05/21 - 18:30
Trac URL: http://trac.osgeo.org/mapserver/ticket/14

When using the WMS server we cannot (and don't want to!) pass the mapfile path 
in the URL, that's why the MS_MAPFILE environment variable was added.

This works fine on Unix since we can easily create a shell script that will set 
the variable and then pass control to the mapserv CGI, but on Windows it is not 
that easy to setup a CGI script, and .bat files won't seem to work.

We need to come up with a better way to specify which mapfile to use with the 
WMS server.

Quebec separated from Canada (!!!)

Reporter: dmorissette
Date: 2001/05/22 - 16:29
Trac URL: http://trac.osgeo.org/mapserver/ticket/16

This is not a political post... but the above WMS URL does not seem consider 
Quebec to be part of Canada any more! :)

Actually, what happens is that with an image size of 300x300, Quebec and the 
Maritimes are gone, but if you change the size to 600x300 then all the provinces 
are fine.  Interesting!?!??!?!

SDE Query failure

Reporter: [email protected]
Date: 2001/07/31 - 15:34
Trac URL: http://trac.osgeo.org/mapserver/ticket/29

I'm still having a bit of a problem with SDE queries.  It's no big deal and I 
have solutions around it I was just curious as to the best way to inform you.  
Should I log it into Bugzilla?

http://gis.vedp.org/test_map_sde/ <http://gis.vedp.org/test_map_sde/> 

This is the site.  Not all layers are from SDE (most aren't).  The Sites Layer 
is and acts a bit erratic you want to play with it.  If you turn it on and 
select a few sites here and there you get varying behavior (some Internal 
Server Errors; some blank returns; some hits).  Contours Layer also pulls from 
SDE and acts funky as well.

No biggie just wanted to know if you wanted me to log this or if you wanted 
access through the firewall to the SDE port to test.

Thanks again,

Lowell Ballard
Unix/Database Administrator
Virginia Economic Development Partnership
901 E. Byrd St., Richmond, Va. 23218
http://gis.vedp.org

PHP_MAPSCRIPT - ZoomPoint confused when YMax < YMin

Reporter: dmorissette
Date: 2001/08/10 - 18:26
Trac URL: http://trac.osgeo.org/mapserver/ticket/33

Date:         Thu, 09 Aug 2001 16:13:23 -0600
   From:         "ANDREW WOOLEY" <[email protected]>
     To:         <[email protected]>

Folks,

I am getting what seems to me to be strange results on my zoompoint method.  I 
feel like I have
followed the docs pretty closely and have even tried an example that I found in 
the email archives, but
still have yet to get a useable result.

I am using MapScript Version (Aug 1, 2001), a nightly build and when executing 
the code: 

$ptClicked = ms_newPointObj(); 
$ptClicked->setXY($mainmap_x,$mainmap_y); 

$extent = ms_newRectObj();
$extent->setextent($map->extent->minx, $map->extent->miny, $map->extent->maxx, 
$map->extent->maxy); 

$map->zoompoint(2, $ptClicked, 600, 600, $extent); 

When I echo the extent minx, etc. it gives reasonable coordinates for the map 
extent (1800193, 825044,
2115496, 542882), however, after this code executes and I echo the new extent, I 
get good values for
some of the coordinates but not others (1877442.235, -78702.92, 2035093.735, 
78702.92).  Can someone
explain to me what I am doing wrong and why the negative values show up?  
Thanks.

CIB Transparency through GDAL

Reporter: warmerdam
Date: 2001/04/23 - 15:56
Trac URL: http://trac.osgeo.org/mapserver/ticket/4

Frank Warmerdam <[email protected]> wrote:

> I have made a first crack at putting up CIB 10m data for Jacksonville, NC.
> The server is at:
>
>  http://www2.dmsolutions.ca:8099/cgi-bin/mswms_mpp1

I have added this to our corporate cascading map server as "CIB Demo
Server".  One thing I notice is that there is some bleed-through when
the CIB maps are put on top of other layers, as in (long URL):

http://www.cubewerx.com/demo/cubeview/cubeview.cgi?clickMode=zoom+in&layerToQuery=%28none%29&dataStores=CubeWerx&themes=BOUNDARIES&layers=Coastlines&action=+Go+&newScale=1.25M&newX=-77.23912772&newY=34.738032301&newImageWidth=600&newImageHeight=300&newImageType=PNG&newQuality=MEDIUM&zoomFactor=2&newSrs=4326+%28WGS+84%29&serverURL=http%3A%2F%2Fwww.cubewerx.com%2Fdemo%2Fcubeserv%2Fcubeserv.cgi&layersToPlot=Global+30+Second+Elevations%2C10meter+CIB%2CCoastlines&currentY=34.7380323010824&currentX=-7
7.2391277188667&currentScale=1.25M&currentImageWidth=600&currentImageHeight=300&currentSrs=EPSG%3A4326&currentImageType=PNG&currentQuality=MEDIUM

Near the center of the image, the green of the GTOPO30 layer shows through
the CIB map.  I suspect that there is confusion of white (0xFF) and
Transparent pixel values in the original data, the processing of the data,
and/or the generation of the 8-bit PNG image.  Chroma-key transparency
is a doomed art when dealing with natural images.

I also notice that the CIB image block doesn't get plotted into the last
two pixel rows of the image (and sometimes the last one or two pixel
columns).  I expect that the calculations of exactly what bounds of data
to fetch/plot is slightly off.  Remember that the pixels in GetMap images
represent areas and not a grid of points.

--------------------------+------------------------+--------------------------
Dr. Craig S. Bruce        | Ph.: 819-771-8303 x205 |             CubeWerx Inc.
Senior Software Developer |   Fax: 819-771-8388    |      Hull, Québec, Canada
[email protected]      | http://www.csbruce.com |  http://www.cubewerx.com/
--------------------------+------------------------+--------------------------
             "Ladies and gentlemen, the money supply is secure."

Vector Reprojection problem with whole world extent (Alaska)

Reporter: dmorissette
Date: 2001/05/22 - 16:22
Trac URL: http://trac.osgeo.org/mapserver/ticket/15

With the above URL using the GMap data and trying to display the whole world 
extent, some points from Alaska are reprojected at the other end of the world 
and this creates lines across the top of the map.

We need to find a way to at least avoid this (clipping?), and if possible 
properly draw the portion of Alaska that should go at the top-right of the map.

PHP_MAPSCRIPT - Missing LegendObj and ScalebarObj

Reporter: dmorissette
Date: 2001/09/11 - 15:03
Trac URL: http://trac.osgeo.org/mapserver/ticket/41

Subject:         [mapserver-users] LegendObj with php/mapscript
   Date:         Tue, 11 Sep 2001 10:36:10 +0200
   From:         jrom <[email protected]>
     To:         [email protected]

Hi,

I'm currently writing s acript that parse
a mapfile and import all parameters of the
mapfile in a database. I'm using php/mapscript.
I can get layerObj, classObject parameters, etc...
But it seems that i cannot get legend and scalebar
object. Is there a trick to get these parameters from
the mapfile using php/mapscript or may i write a
parser specially for these objects?

Regards

jrom

-------

There is currently no way to access the legendObj and scalebarObj from PHP 
MapScript... these will have to be added eventually.

Non-antialiasing with FreeType 2 corrupts images.

Reporter: sdlime
Date: 2001/04/13 - 06:06
Trac URL: http://trac.osgeo.org/mapserver/ticket/2

Not using antialiasing with TrueType fonts and FreeType 2 causes corruption of 
GD image output. Most likely a GD/FreeType problem, but I told John that I 
would patch both versions of the GD/FreeType code to fix font rendering with 
non-antialiased fonts. With FreeType 1 there is an error in his code that 
always requests grayscale pixmaps even with no antialiasing. It should request 
a bitmap instead. Fix is to add a key to his caching code and this was already 
written for versions 3.4 and earlier. I suspect the same problem exists with 
FreeType 2 since it uses the same caching code, however since not setting the 
antialias flag corrupts the image I can't tell. Will have to fix that first.

Workaround is to use antialiasing with TrueType fonts.

Function ms_newMapObj changes PHP's current directory

Reporter: [email protected]
Date: 2001/09/14 - 07:30
Trac URL: http://trac.osgeo.org/mapserver/ticket/43

Function ms_newMapObj changes PHP's current directory without any notice.
There is a way around:

<?php
...
$cwd = getcwd();
$mapObj = ms_newMapObj("???.map");
chdir($cwd);
...
?>

As I remember there is no PHP function except chdir with this behaviour. The 
reason for is probably using relative paths in the MAP file but I think there 
are only two possibilities:
  1. Write it to the documentation.
  2. Correct it.

Memory leaks

Reporter: dmorissette
Date: 2001/09/13 - 19:47
Trac URL: http://trac.osgeo.org/mapserver/ticket/42

From: Assefa Yewondwossen <[email protected]>
  To: Daniel Morissette <[email protected]>

J'ai roule mapserver 3.5 (avec la getgeatureinfo) et voici les memory
leaks reportes :

1)

  msInsertHashTable+0x8d [maphash.c:42 ip=0x0044432c] (maphash.c, ligne
42)

 struct hashObj *msInsertHashTable(hashTableObj table, char *string,
char *data)
{
  struct hashObj *tp;
  unsigned hashval;

  if(!table || !string || !data)
    return(NULL);

  for(tp=table[hash(string)]; tp!=NULL; tp=tp->next)
    if(strcasecmp(string, tp->key) == 0)
      break;

  if(tp == NULL) { /* not found */
    tp = (struct hashObj *) malloc(sizeof(*tp)); <========= ligne a
problem
  ...

2) lea autres erreurs sont des memory leaks ou on a oublie de freer de
la memoire en sortant de la fonction.

    -  msSHPOpen+0xc1       [mapshape.c:184 ip=0x004508a1]
    -     msSHPDiskTreeOpen+0xf8 [maptree.c:102 ip=0x0045960f]
    -     msSHPDiskTreeOpen+0x4d [maptree.c:88 ip=0x00459564]
    -      msSHPDiskTreeOpen+0x32 [maptree.c:82 ip=0x00459549]
    -     main+0x91            [mapserv.c:1403 ip=0x0040c04e]
    -     initWeb+0xd5         [mapfile.c:2633 ip=0x00416890]
    -     initWeb+0xc2         [mapfile.c:2632 ip=0x0041687d]

Reprojection problem with whole world extents

Reporter: dmorissette
Date: 2001/05/02 - 19:46
Trac URL: http://trac.osgeo.org/mapserver/ticket/7

Requesting a map with BBOX=-180,-90,180,90 produces an error in the GDAL 
resampling code about lat/lon values exceeding the allowed limits.

Similar thing happens with vectors, but instead of getting an error we get 
points reprojected at the other end of the world.

Here is Frank's reply:

This is a result of the PROJ.4 pj_transform() call failing.  I pass the
error on up with msSetError(). 

Clearly this needs to be fixed, and I am sure something can be done.  

Is there a bug report in bugzilla on these two issues?  Who will make them
up?

As for the vector side of things, I don't know the data paths well.  This
must not be anything new though right?  I notice that the map bounds
are 154 to -154 in latitude when you request a world view.

multiple query layers

Reporter: [email protected]
Date: 2001/09/18 - 01:25
Trac URL: http://trac.osgeo.org/mapserver/ticket/45

This is a feature suggestion. It would be nice to allow more than one query 
layer. This functionality would be akin to MapInfo and ArcView in that a layer 
can be in various states: on/off, selectable/not-selectable, etc. As it stands 
now, mapserver accepts a single qlayer, or else all layers with a template 
within their class are queried if not qlayer is specified. I am suggesting sort 
of a middle ground.

This feature could be added in conjunction with GROUP, or maybe with a 
new �qlayers� similar to the existing layer and layers.

Thanks,
Rich

PHP MapScript Docs - shapeObj->draw() args have changed in MS3.5

Reporter: dmorissette
Date: 2001/08/21 - 16:12
Trac URL: http://trac.osgeo.org/mapserver/ticket/36

"Vinko Vrsalovic B." wrote:
> 
> for ($i=0; $i<7 && (user said yes to i); $i++) {
>         $shape[i]->draw($map,$layer_lines,$image,$i,"");
> }
> 
> I was hoping for the $i parameter of the draw shape method to set
> the class on $layer_lines, but they all are drawn on class 0.
> 

OOppps... there's an error in the docs.  In MS 3.5 the shape->draw()
method doesn't take the class index argument any more.  The docs should
say:
   int draw(mapObj map, layerObj layer, imageObj img)

(and same thing with rectObj->draw()), etc.)


--------
Note: the PHP MapScript class reference doc. (XML) will have to be updated as 
well.

[OGR] Legend keys are blank when using STYLEITEM AUTO

Reporter: dmorissette
Date: 2001/07/16 - 22:30
Trac URL: http://trac.osgeo.org/mapserver/ticket/26

Reported by Matt Wilkie:

> Bug:
> 
> I notice when zooming in that the legend entries sometimes have
> blank keys. At first I though that might be because the feature
> is not visible in the viewable area. However zooming in excessively
> proves that not to be the case.
> 
> It doesn't happen with the other two tab demos, maybe because
> they use fewer tab files.
>

Order of layers in WMS requests is ignored

Reporter: dmorissette
Date: 2001/06/27 - 16:27
Trac URL: http://trac.osgeo.org/mapserver/ticket/21

Frank Warmerdam wrote:

Does the order of layer requests in a WMS request affect the order they
are drawn? It doesn't seem to.  It appears that only the order in the map
file matters, but isn't the client supposed to be able to alter the 
layering of layers based on the order in the layers= directive?

PHP_MAPSCRIPT - Cannot open 2 mapfiles with version 3.4

Reporter: dmorissette
Date: 2001/08/09 - 20:42
Trac URL: http://trac.osgeo.org/mapserver/ticket/31

Date:  Thu, 09 Aug 2001 01:14:08 +0200 (MEST)
      From:  Jean-François MONY <[email protected]>
        To:  Daniel Morissette <[email protected]>

En réponse à Daniel Morissette <[email protected]>:

> > From: Jean-François MONY <[email protected]>
> > 
> > I'm using the php mapscript module of mapserver 3.4, with php
> 4.01pl1.
> > The problem seems to be simple.
> > When I create a new mapobject, and then I try to create another one
> base on a
> > distinct map file I receive an error saying that it's impossible to
> open the
> > map file (the second one).
> > 
> 
> 4.0.1pl1???  That's quite old!  Are you sure you didn't mean 4.0.4pl1?
> 
> If not then I suggest first upgrading to 4.0.4pl1 (or 4.0.5).  Also
> note
> that MapScript 3.4 won't work well with PHP 4.0.6 or newer
> 
> Also, on which OS are you running and with which web server?  If
> you're
> on Windows then make sure your PHP is installed as a CGI and not as a
> module (Apache) or as an ISAPI extension (IIS).
> 
> With the info you sent us that all I can suggest.
> 
> 

Hi,

I'm using PHP Version 4.0.3pl1 on Linux (Mandrake 7.1 updated), and 
Mapserver/mapscript 3.4 compiled as a DSO.

Which further informations do you need ?

VendorSpecificCapabilities Handling

Reporter: warmerdam
Date: 2001/04/23 - 16:02
Trac URL: http://trac.osgeo.org/mapserver/ticket/5

From:  jeff <[email protected]>
To: [email protected]

Hi,

This request:

http://www2.dmsolutions.ca:8099/cgi-bin/mswms_mpp1?request=capabilities

gives this result:

Reference to undeclared element: 'VendorSpecificCapabilities'.

and if we look into the dtd we see that you have it mentioned:

<!ELEMENT Capability (Request, Exception?, VendorSpecificCapabilities?,
UserDefinedSymbolization?, Layer?)>

but not defined anywhere.

So either you should leave the reference to the DTD out of the GetCapabilities
result, or you should add a definition -- even a trivial one, like
<!ELEMENT VendorSpecificCapabilities (#PCDATA)>
-- to the DTD.
Thanks,
Jeff

PHP_MAPSCRIPT - problems when loading php_mapscript.so in php.ini

Reporter: dmorissette
Date: 2001/08/09 - 20:50
Trac URL: http://trac.osgeo.org/mapserver/ticket/32

Date:         Wed, 25 Jul 2001 19:26:20 -0400 (CLT)
   From:         "Vinko Vrsalovic B." <[email protected]>
     To:         [email protected]

Hi, 

        I noticed that when I enable php_mapscript.so in php.ini it
doesn't load maps as expected, sometimes works and sometimes doesn't, giving
errors like:

Warning: MapServer Error in msLoadMap(): (LINESET):(2) in /file/path on line 4

        When I use dl, it all works as expected.

        This using php 4.0.3pl1, apache 1.3.14, and the nightly build 
from two days ago of mapserver.

PHP MapScript - shapeObj needs a set() method

Reporter: dmorissette
Date: 2001/08/21 - 16:20
Trac URL: http://trac.osgeo.org/mapserver/ticket/37

shapeObj class in PHP MapScript currently has all its members read-only.

TODO:
- add a shape->set() method
- review all shapeObj members and decide which ones don't have to be read-only. 
 At least the "classindex" and "text" should be modifiable via set()
- Update docs accordingly... note that "text" is not listed in docs...

gdImagePaletteCopy() requires GD1.5 or more recent

Reporter: dmorissette
Date: 2001/08/23 - 17:56
Trac URL: http://trac.osgeo.org/mapserver/ticket/39

Date: 
        Thu, 23 Aug 2001 12:32:26 +1000 (EST)
   From: 
        Marcus Dillury <[email protected]>
     To: 
        <[email protected]>

I am trying to compile a 3.5 build of mapserver on a Redhat 7 Linux box.
I am using the following options with the configuration script.

./configure --with-proj=/usr/local --with-gdal --with-gd=/usr/local/lib/gd-1.2 
--with-freetype=/usr/lib

proj-4.4.3
gdal-1.1.5
gd-1.2
freetype-1.3.1-7


The Makefile builds without complaint.
When I run 'make' I get the following problem


gcc -O2  -Wall -DIGNORE_MISSING_DATA  -DUSE_EPPL -DUSE_PROJ
-DUSE_PROJ_API_H -DUSE_WMS  -DUSE_TIFF -DUSE_JPEG -DUSE_GD_GIF
-DUSE_GD_SWAP_XY   -DUSE_GDAL   -I/usr/local/lib/gd-1.2
-I/usr/local/include        -I/usr/local/include   shp2img.o  -L. -lmap
-L/usr/local/lib/gd-1.2 -lgd -ljpeg -L/usr/lib -lttf -lpng -lz -ltiff
-ljpeg -L/usr/lib -lttf -lpng -lz -L/usr/local/lib -lproj -ljpeg
-L/usr/local/lib -lgdal.1.1    -lm   -o shp2img
./libmap.a(mapresample.o): In function `msResampleGDALToMap':
mapresample.o(.text+0xe8e): undefined reference to `gdImagePaletteCopy'
mapresample.o(.text+0xec4): undefined reference to `gdImagePaletteCopy'
collect2: ld returned 1 exit status
make: *** [shp2img] Error 1

PHP MapScript ms_newMapObj() with empty map doesn't work

Reporter: dmorissette
Date: 2001/07/05 - 19:25
Trac URL: http://trac.osgeo.org/mapserver/ticket/23

Problem reported by Rob Martinson on 2001-07-02:

I'm attempting to load layers from a database on an empty map object.
This way I can control all of the maps from a database without writing
out a new .map file for each change. Currently I'm trying:

dl("php_mapscript.so");
$map = ms_newMapObj('');
$map->set("width",400);
$map->set("height",300);
$map->set("shapepath","/path/to/my/data");

$layer = ms_newLayerObj($map);
$layer->set("name","county");
$layer->set("type",POLYGON);
$layer->set("status",MS_ON);
$layer->set("data","ctybdpy");

$img = $map->draw();   <--at this point I get an error stating "Object
has an invalid _handle_ property"

The same small script and data work if I load the layers through a .map
file using the same paths with:

dl("php_mapscript.so");

$map = ms_newMapObj("demo2.map");
$img = $map->draw();

I'm sure someone else has done something similar. Any pointers?

Label Scaling not Working

Reporter: refractions
Date: 2001/08/17 - 23:06
Trac URL: http://trac.osgeo.org/mapserver/ticket/35

Using the LandView site as a guide, I have tried to get my labels to scale 
nicely from small to large. I set up a SYMBOLSCALE, MAXSIZE, MINSIZE and SIZE, 
but the text is always being displayed using the SIZE. If I remove the SIZE, 
the text always is displayed at the MINSIZE. No matter what value I give the 
SYMBOLSCALE, this is the behavior. I am using the very latest CVS version.

OGR - MULTIPOLYGON not supported

Reporter: dmorissette
Date: 2001/07/05 - 20:48
Trac URL: http://trac.osgeo.org/mapserver/ticket/24

Reported by Rob Martinson:

> A single MapInfo layer may contain different types of objects. I have a
> layer that contains points and polygons. If I define the layer as "TYPE
> Polygon" I get the polygons as expected. If I define the layer as "TYPE
> Point" I get the error message: "ogrGeomPoints(): OGR error. OGRGeometry
> type `MULTIPOLYGON' not supported yet.". Ideally I would like to define the
> layer as "TYPE Multiple", or some such thing, so that it behaves as it does
> in MapInfo. Have you given this any consideration?
>

STATUS QUERYONLY gives error

Reporter: refractions
Date: 2001/06/27 - 19:59
Trac URL: http://trac.osgeo.org/mapserver/ticket/22

The 'STATUS QUERYONLY' parameter described in the 3.5 does not work. The error 
returned is "getSymbol(): Symbol definition error. (QUERYONLY):(177)" 
Grepping the source for 'queryonly' returns nothing at all, which is odd... is 
the feature removed from source but not from documentation?

msSHPOpenFile doesn't detect drive-letter mappings

Reporter: [email protected]
Date: 2001/09/14 - 18:14
Trac URL: http://trac.osgeo.org/mapserver/ticket/44

I came across this when using indexed (.qix) TILEINDEX files to point to raster 
source images.  There are two problems here, and the second masks the first.

The first problem (and the serious one) is that msSHPOpenFile (at line 1083 in 
the current CVS code) attempts to determine whether the shapefile filename 
already includes a full path or not.  It does so by checking to see if the 
filename string begins with '/' or '\'.  However, a Windows drive-letter mapped 
path ("g:\path\filename") slips through this test.  As a result, the data 
directory path is prepended to this string and the filename ends up looking 
like "g:\path/g:\path\filename" - this value goes in the shpfile->source field.

It appears that this bug is generally benign, because most shapefiles are 
opened just fine (obviously) on Windows with drive-letter mappings.  However, 
when looking for a TILEINDEX file in a raster layer, after the existence of the 
index file is detected, a call to msSHPWhichShapes (mapraster.c, line 1666) 
uses the shpfile->source string to attempt to open the file.  The open fails, 
and the index is ignored.  An error message is generated, but never displayed.

Of course, the image is still generated without the benefit of the index, so 
when msDrawMap finishes, the img is NOT null, which means writeError is never 
called and the error message is not displayed.  I'm not sure whether this is 
correct behavior when the image gets created after all, but it caused me to 
completely miss the error and spend the last few weeks wondering why my testing 
on various permutations of TILEINDEX indexing (with shptree) wasn't making any 
difference at all - all the indices were being ignored.

Changing line 1083 in mapshape.c to:

  if((*filename == '\\') || (*filename == '/') || (*(filename + 1) == ':')) 
{ /* already full path */

will fix this by adding the test for the second character being a colon.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.