ThinkGeo.com    |     Documentation    |     Premium Support

Shape File not loading

Is there a reason why the attached shapefile should not display?


I tried to plug it (replace) into one of your samples (ShapeFilesOverGoogleMap)

Nothing shows up? What am I doing wrong? Is the file OK? 

Thanks for your help.



Jakub




669-CCAFSgrplume.zip (24.7 KB)

Hi Jakub, 



It seems there is some problem with your ShapeFile, you can get the exception by the following method.shapeFileFeatureLayer.Validate();
Any questions please let me know.



Thanks,



Howard



Strange. The shapefile opens perfectly in ArcView



Exactly.


This is a valid shapefile. I have downloaded bunch of shapefiles from Florida state - all open fine in ArcView, but none of them display in Map Suite. Any idea why?


 



Posted By Howard on 05-12-2009 01:36 AM 

Hi Jakub, 



It seems there is some problem with your ShapeFile, you can get the exception by the following method.




shapeFileFeatureLayer.Validate();

Any questions please let me know.



Thanks,



Howard

 







 


I am getting "The Layer must be opened before you can perform this method." error when trying to use .Validate()


??


 



Hi Jakub, 
  
 I double checked the type of your ShapeFile, and it’s PolygonZ type what is not supported in our existing version. We’ll support this type in the upcoming version. 
  
 If you have any questions please let me know. 
  
 Thanks, 
  
 Howard

What is the timeline on the version that will support it?


I need to have this functionality for a client and this is the last item before I get OK to buy your application. If it is coming soon, I can buy now (start coding), and then get the upgrade, right?


Is there a way to convert the shapefile to a different (supported) type?


Thanks


Jakub


 











Hi Jakub,


 


The upcoming version will be released around early of next week, please keep an eye on our web site.


 


The type of ShapeFile is defined when you creating it. We don’t support changing the type of ShapeFile.


I tried just changing the Shape Type of the SHP file’s Header, it doesn’t work because Polygon and PolygonZ have different record format which you need to change them too.


 


By the way, here is a screenshot which loading from your ShapeFile by our current version.


 


Any questions please let me know.


 


Thanks,


 


Howard




Thanks Howard, 
  
 thats good news. The sample above lloks good, only the location is little suspicious, it should be on the ground :) 
  


Hi Jakub, 
  
 That’s a simple test for the latest version, just let it go. 
  
 Please feel free to let us know if you have more queries. 
  
 Thanks, 
  
 Howard

Posted By Howard on 05-13-2009 10:29 PM 








Hi Jakub,


 The upcoming version will be released around early of next week, please keep an eye on our web site.


 The type of ShapeFile is defined when you creating it. We don’t support changing the type of ShapeFile.


I tried just changing the Shape Type of the SHP file’s Header, it doesn’t work because Polygon and PolygonZ have different record format which you need to change them too.



By the way, here is a screenshot which loading from your ShapeFile by our current version.


 Any questions please let me know.


 Thanks,


 Howard


 





Hi Howard,


My eye is getting tired :)

Has the new version with Z-shapefile been released?

When can I get it. I bought the software specifically for that.


Thanks,


Jakub


 



Jakub, 
  
 We planned to release it in Middle May but very sorry that we are behind our schedule now. We are going to release the new version of Desktop today or tomorrow and the Web might be available one week later. If this issue is emergent for you, we can provide a development assembly with this problem solved, and you can replace it with the new public release when it is available, how does this sound? 
  
 Thanks, 
  
 Ben

That would work.


I need to be able to show client a demo with his shapefiles loaded soon.


As long as the production version is ready with in several weeks the development version will work for now.


How do I get it?


 


Thanks for the offer.


 


Jakub


 



Jackub, 
  
 The plan changed a bit and we are going to release the new web edition also tomorrow. How about like this? If it is released tomorrow, please get it from our website; if not, we will send a temporary assembly to you also tomorrow. I’m trying to provide you a well tested assembly if possible.  
  
 Thanks, 
  
 Ben.

Perfect. 
 Thanks.

Jakub, 
  
 The new version (3.1.124) is ready, maybe you can get it today from our website:) 
  
 Thanks, 
  
 Ben

Thanks. 
 Just downloaded it. BUT: 
 I cannot install it, It says that I have to unistall previous version. 
 There is no uninstall for it on my Vista 64bit 
 How do I uninstall? 
  
 Thanks 
 Jakub 


Figured it out. 
 run the install fro the old version again. DUH! :) 


Installed the new version, but I am still unable to display the Shapefile from my first post above. 
 It is probably related to some sort of projection or units conversion issue. 
 I am able to load it and display it in Map Suite Explorer, but when I try to overlay it over STATES.SHP from your examples it does not show up (and vice versa STATES.shp does not show up when Plume is displayed) 
 I need to overlay the Plume.shp over a Google map. Can you point me in the right direction please? 
 Thanks, 
 Jakub

Jakub,



I tested the ShapeFile with latest release with the following code, and it works fine; 
// Version check.
string version = Map.Version;
if (!version.Equals("MapSuiteCore:3.1.124,Evaluation;WebEdition:3.1.124", StringComparison.OrdinalIgnoreCase))
{
    throw new Exception("You are not using our latest version.");
}

Map1.MapUnit = GeographyUnit.Meter;
ShapeFileFeatureLayer plumeLayer = new ShapeFileFeatureLayer(MapPath("CCAFSgrplume.shp"));
plumeLayer.ZoomLevelSet.ZoomLevel01.DefaultAreaStyle = AreaStyles.Country1;
plumeLayer.ZoomLevelSet.ZoomLevel01.ApplyUntilZoomLevel = ApplyUntilZoomLevel.Level20;

Map1.StaticOverlay.Layers.Add(plumeLayer);

plumeLayer.Open();
Map1.CurrentExtent = plumeLayer.GetBoundingBox();
plumeLayer.Close();

I added version checking in the code above; if it throws an exception, please make sure the DLL you are using is the latest one.



On the other hand, I tested with GoogleOverlay, but it’s in the area near Africa. I think it’s about the issue with the projection. You need to know the default projection in the ShapeFile and convert to EPSG:900913 in the code, then it will be fine.



If you have any questions please let me know.



Thanks,



Howard