ThinkGeo.com    |     Documentation    |     Premium Support

Supported Data Types

I am very confused by what the website says about support for data types. The website says that this version:


"Natively handle Shapefile, TAB, Oracle Spatial, SQL 2008, PostGIS & more"


But, how is this possible? We specifically need to know, how can a Windows Phone 7 device send and receive spatial data from SQL Server 2008. Please explain how this is achieved.


Secondly, our application needs to be an offline solution. We will be syncing spatial data in to a database called EffiProz in isolated storage. The data type will be of an image data type. But, the data will be stored in the OGC standard format. Can we render this data in the Windows Phone Edition? How?


Does the Windows Phone Edition have support for Shape Files stored on the device or in isolated storage? (i.e. not served up from a web service).


Christian



Christian, 
  
 Thanks for your post, I can see how it can be confusing as most of these data formats are only supported via a server connection.  The Windows Phone 7 edition is very similar to the Silverlight edition where it has a client piece that can run on the actual phone and a server piece that has more functionality and capabilities and a connector/communication mechanism so these two pieces can talk to each other.    To see how this interaction works take a look at the Vehicle Tracking Sample that comes along with the evaluation version.  Of course to get any value out of the server piece you need to have a network connection and this doesn’t sound feasible for your case.  
  
 Two answer your second question in an offline application there really aren’t many good options, you can render shapefiles on the phone and pull them from isolated storage but the rendering speed will be very slow.   None of the other formats are available to you for rendering on the phone due to the limitations of the platform and not having access to the server. Probably a better solution would be to cache the image tiles on the phone so all the drawing is done on the server except maybe some real simple markers or a hand full of items.  This approach would require you to have a connection to download the tiles but then could work offline after they were downloaded to the phone.  Of course his approach has trade offs as you will have to manage your tile cache.   Most of our design considerations with the Windows Phone edition were around having a network connection since it is a phone and should have communication capabilities.    
  
 Hope this helps. 
  
 Thanks! 
  
  
  


Clint,


So you are saying that in offline mode, the only way to render a map is with Shape Files. Is that correct?


Are you saying that we can't even take OGC standard polygons and have them rendered on the phone? We have been considering sync'ing SQL Server 2008 spatial data in to an "image" column on the device. As I understand it, the spatial data is just Xml and can be parsed. Are you saying that the library on the Silverlight device would have no support to take this data and render it on screen?


Are you saying that Shape Files are currently unusably slow?We currently use the Windows Mobile 6 version of your tools to render shape files. It is slow, but we were hoping for improvements in this version seeing that hardware has come a long way since the Windows Mobile 6 days.


Anyway, I think it is misleading to tell people that the Windows Phone Version supports several data formats when in actual fact it only displays images which are rendered on the server side. It makes it very hard to judge whether or not the technology will be useful for a given organisation. It should be made clear that this is the case.


Christian


 


 


 


 



"Probably a better solution would be to cache the image tiles on the phone so all the drawing is done on the server except maybe some real simple markers or a hand full of items." 



If we did cache image files, how would we do radial searches and so on? We still have to be able to query the data. 



Most of our design considerations with the Windows Phone edition were around having a network connection since it is a phone and should have communication capabilities.  



Why? The original version dealt with offline considerations. By not considering offline, you are cutting out a large portion of your market where internet connections are either slow, patchy, expensive, or non-existent. 

 


 



Christian, 
  
 Thanks for your questions I’m not sure why you think it’s misleading to say we support these data formats.  The Windows Phone Edition was built for a phone where a network connection is present.  These formats can be easily rendered server side sent down to the client/phone via a network connection.  To make sure there is no confusion on this in the future we have added an asterisk by the data format information on the Windows Phone product page stating that certain types of data formats are only supported via the server component.     
  
 As for your question about drawing shapefiles and OGC Standar Polygons (I’m assuming you mean Polygons described by Well Known Text?), yes these can be stored on the phone and be drawn on the phone, however performance may be slow if you have a lot of data.    That is why we recommend you do as much rendering and other processing tasks on the server and only use the client side rendering for simple features that need to be highly interactive. 
  
 One other point I would like to clarify is that the Windows Phone Edition is a completely different product than the old Map Suite Pocket PC product that you are using on Windows Mobile 6.0.  They are built on completely different code bases and the Windows Phone Edition was designed specifically for the Windows 7 Phone platform. 
  
 Hope this helps. 
  
 Thanks! 
  
  
  
  
  
  
  
 Thanks! 


Hi,


Sorry for barging in on this thread, but I noticed something Christian wrote: "Windows Phone Version supports several data formats when in actual fact  it only displays images which are rendered on the server side".


My understanding is that Phone Edition retrieves real vector data, not images, streamed from the server in some (proprietary) format, and just renders it locally. Is this a misunderstanding ?


If I wanted map images in any mapping solution from a server, I'd use WMS. I assume this is still possible in Phone Edition ?


@Christian: spatial data in a server database is usually binary. This is certainly the case with SQL 2008. There are routines to convert from/to OGC WKT/WKB, but the storage format is proprietary.


Cheers,


 



Lars, 
  
 Thanks for the questions. 
  
 The server piece is open so you can build up your server piece to pass what ever you like back down to the client whether it be images or vector data it’s up to you.  We recommend you do most of your rendering on the server side as it will be faster than rendering complex maps on the phone, however if you need to render a small number of features on the phone that the user is interacting with you can pass down the vector data in WKT or WKB and render it on the phone using an InMemory Feature layer.  In addition you can pass down information about the feature from the server so you can display it on the device.    
  
 About your question on WMS, yes you can also consume WMS on the Windows Phone Edition. 
  
 I would recommend taking a look at the Vehicle Tracking example included with the Windows Phone Edition, this provides some guidance on best practices on how to build and architect your application in a real world scenario. 
  
 Thanks!  
  


I’m not sure why you think it’s misleading to say we support these data formats  
  
 It’s misleading because it doesn’t support those formats. All it does is render images from the server. In actuality, it’s only the server which supports the data formats. 
  
 I’m confused on a point that Lars brought up.  
  
  […] [Polygons] can be stored on the phone and be drawn on the phone, however performance may be slow if you have a lot of data. 
  
 But… 
  
 The server piece is open so you can build up your server piece to pass what ever you like back down to the client whether it be images or vector data it’s up to you… […] We recommend you do most of your rendering on the server side as it will be faster than rendering complex maps on the phone   
  
 So, it is possible to pass vector data down to the client that can be rendered but it would be slow, just as rendering shape files would be slow. Is that correct? 
  
 Anyway, here’s the basic point/question: 
  
 We used the Map Suite Pocket PC edition in the past. It was bordering on unusably slow, but it did the job. Now, the question is will rendering shape files on the current version be unusably slow? Will it be slower than the original? If so, why? Newer hardware should mean that it renders faster than the original. 
  
  
  


Christian, 
  
 It is possible to pass down vector data and render it on the client as you can implement your own web service that can serve up WKT or WKB and render it locally on the device.  We haven’t bench marked it against the old Pocket PC edition, you can utilize the Evaluation Edition of the Windows Phone Edition and see if you think the speed is acceptable or not for your needs.    A lot of it is going to depend on the amount of data you want to render and how complex it is.  Since each application scenario is different so the best way to know if it will fit your needs is to run some tests.    
  
 Thanks 
  
  
  


Hi Clint,


Posted By Clint on 11-28-2011 03:56 PM 



It is possible to pass down vector data and render it on the client as you can implement your own web service that can serve up WKT or WKB and render it locally on the device. ...




I need to ask further about this statement.


What you're essentially saying here is that Map Suite Phone Edition does _not_ support vector data retrieval implicitly via the ServerOverlay object or any other Overlay object ?


Yes, we can of course build our own web services for this - and the client code to back it up - but when using a framework such as Map Suite I would have thought it to be a natural thing that Map Suite supported transferral of vector data features from server to client implicitly, much like the EditOverlay in the Web Edition, when the main purpose of the Windows Phone Edition is to build client run apps.


I haven't given the Desktop Edition much attention, as I'm primarily focused on the Web Edition, but how does this scenario work here ?


I would assume that desktop app developers also want vector data retrieval for local analysis and rendering. Is this not supported implicitly in the Desktop Edition either ?


Cheers.



 <i> </i><u> </u><blockquote> </blockquote>[code]