You are here

SUAS MapServer 3.11.0415 beta3 released!

17 posts / 0 new
Last post
leelight
SUAS MapServer 3.11.0415 beta3 released!

Hi folks,
Thank you for your testing and bug reporting!
New version is released now.

Add Features:
1. Log management
2. Cache and style defination file management

3. Empty Table function in setting

4. SVGZ output function, without gzip module in PHP

Fixed Bug:
1, Attribute information in DBF and MIF can not has single quote.
2, Error when import MIF with Text geometries
3. many other little bugs

TODO:
1, MIF file input
2, E00 file input
3, Cache system, Database query cache system
4, Layer's scale Denominator in SLD
5, PostGIS database support
6, WFS: GetGmlObject, and Transaction request
7, SVG and Raster Map browser client, user could interact with MapServer
8, Gzip output compression
9, Log error record system
10, WCS service
11, Data and style defination file backup function

The source code can be downloaded here. suas3_11_0415_beta3.rar

Thank you!
leeight

AddThis: 
karabas

About text rendering
I replaced imagestring with

 imagettftext($this->image, $fontsize+10, 0, $Pixel_x, $Pixel_y, $color, "/var/www/html/suas/arial.ttf",$textstring);

converted mif file to utf8, imported the file and got russian text on picture.

1. strings are cut on boundary of square.

2. first two letters of every string are dissappeared.

3. I cannot import files after installation - no active  link in menu!  I need to import new layers any time I want without total reinstalling. I also need ability to edit Style ( f. e. colors) any time I want.

4. as I see you dont handle angle info of text strings at all.

 

karabas

By the way what editor can be used for editing layers in mysql database?It is very annoying every time after editing layer in Mapinfo exporting to mif and importing from mif to suas...

leelight

1. strings are cut on boundary of square.

2. first two letters of every string are dissappeared.

Because your mif file is stored as unicode format, SUAS uses utf-8 format to import the data, the transfering will meet error when tranfer unicode text to utf-8 text. Could you save your MIF file to utf-8 format(in window, save as utf-8), and zip it and send me again? I need one utf-8 file to test.

3. I cannot import files after installation - no active  link in menu!  I need to import new layers any time I want without total reinstalling. I also need ability to edit Style ( f. e. colors) any time I want.

Please try setting.php in setting, import new file, edit style and every thing you should use setting, not the installation--installation will be used only one time, after the installation, setting fodler is used for any configuration. And the old configuration will be kept.
If you use install again, the old configuration will be erased.

4. as I see you dont handle angle info of text strings at all.
yes, I have not add this function. If the text strings in your mif file are placed with angel(how it look in Mapinfo?), I will use your mif file to test and finish this function. Thank you@

leelight

You can try PHPMyAdmin, it is nice tool to edit MySQL database.
Maybe later we could add similar tool  in SUAS, but I consider that it will waste time, because PHPMyAdmin can do everything perfect. :)

karabas

Sorry, I mean GIS editor. I want to migrate from Mapinfo to linux or crossplatform GIS editor.
And Mapinfo does not support mysql.
Of course I use phpmyadmin.

leelight

Yes,  Mapinfo does not support direct data access to MySQL spatial data
But I found this in MySQL forum:
---------------------
My understanding is that Mapinfo support for WFS is quite stable, just that Mapinfo Pro insists that the versions of WFS and GML protocols advertised by the WFS server need to be exactly what it expects. I found this reference in the 7.8 release notes:
>>>>
? The server must support V1.0.0 of WFS. The MapInfo Professional WFS client will send
the initial GetCapabilities and specify version 1.0.0. The server returns a GetCapabilities
response that includes a version number. If the version returned by the server is not 1.0.0,
then the MapInfo WFS client cannot use that server. No further operations will be allowed
from that server.
? The server must respond to GetCapabilities using HTTP GET. The response must be in
XML, and as noted above, must be V1.0.0.
? The server must be able to respond to the GetFeature request by returning GML2 (OGC
GML V2.1.1). This information should be contained in the GetCapabilities response from
the server. If the server does not claim to use GML2 as the Result Format for GetFeature,
then the MapInfo WFS client can not use the server and no further operations will be
allowed.

-----------------------------------

I think that SUAS need extend Transaction function in WFS, oh.... so many things are listed in the TODO list.
I should install Mapinfo to test SUAS, be patient please.

karabas

1 still cut words on square boundaries

2 I think text rendering must be on only from given zoom scale.

leelight

1 still cut words on square boundaries

I have sent you one updated php file to fix the bug yesterday per email. Please check it.

2 I think text rendering must be on only from given zoom scale.

Yes, I agree with you!  this is in the Todo list, Layer's scale Denominator in SLD.

karabas

Of course I got and use that file
Yes the bug with two letters is fixed
but boundaries problem still here - You can easy see it

Still cannot add mif import
I tried http://localhost/suas/setting/setting.php
it stops working on s5 step - empty page.

So total install every time...
I choose cache option on.

leelight

but boundaries problem still here - You can easy see it
yes, should use zoom level to fix it, please wait.

I tried http://localhost/suas/setting/setting.php it stops working on s5 step - empty page.
The whole page is empty or only the right part is empty? Could you try 7.php in setting folder?

karabas

I checked several times with different zoom levels - the same: picture of character string truncated up or down or right boundary. I think text is rendered after dividing image on tiles.

leelight

Yes, I have concidered that for one night, I have not found a best solutiion. Yes, only after the tiles' boundary is decided, the path and text can be rendered. The text string was stored as point geometry before, and I have changed it to linestring geometry, now the text redering is better than before, but it still has such truncating problem when the linestring length stored in MIF file is too small -- that will cause that the linestring can not be detected by the neighbooring tiles, amd string can not be rendered in the neighbooring tiles AGAIN.

If I extend the length of the linestring in MIF( so that the text can be detected by the neighbooring tiles) ok, the problem seems to be solved, but many texts that are not in the neighbooring tiles were also be rendered. The speed of getmap is obviously decreased. How does GoogleMap solve it? i am desired to know. Anyone has any idea?

karabas

1. It can solve only horizontal problem but upper and lower tiles remain unrendered.

2. I think you can try php functions for retrieving size of textstring in pixels and use it when

I mean
http://www.php.net/manual/en/function.imagettfbbox.php
http://www.php.net/manual/en/function.imageftbbox.php
or something

leelight

Thank you, You suggestion I have thought before, but this method will move the text to a suitable position to fix the size, that will cause the text for street are not on the street exactly. Now I use overlap and scale zoom level to solve that. The two neighboring tiles will keep one part of overlap that covers each other, and the overlap will render the outside part of text string in tile two even the text are in tile one.
And utf-8 code and text angle problems have been also solved. These new features will be included in the new version.
The following image show the russian street names.

karabas

I look at the above picture - boundary problem still here
and I see little artefacts on strings across horizontal boundary - position of pixels  shifted about 1 pixel up.

leelight

I look at the above picture - boundary problem still here
Because of my pathetic slow notebook, I have not set the overlap ratio to a big value, if you set it near 0.5, the problem will never occur.

I see little artefacts on strings across horizontal boundary - position of pixels  shifted about 1 pixel up.
Yes, I hope I have fixed it, because I use rund() function( it will return the rounded value of val to specified precision ) when I calculate the boundary, it will lose some precision. Now I do not use it more.

Log in to post comments