2013-06-02 2 views
2

Есть ли возможность получить размер Shapefile с помощью библиотеки GeoTools? Я хочу прочитать TOP, LEFT, BOTTOM, RIGHT координаты от SHP.Прочитать размер шейп-файла с помощью Geotools

Кажется, что нет никакого вида getExtent() метода ...

+0

Вы имеете в виду geotools.org или geotools.com? –

+0

geotools.org, извините. Я уже обновил ссылку. знаете ли вы какое-либо решение? – manuSO

ответ

2

Я не компилируется следующим, но он должен работать.

File file = new File("example.shp"); 
Map map = new HashMap(); 
map.put("url", file.toURL()); 
DataStore dataStore = DataStoreFinder.getDataStore(map); 

SimpleFeatureSource featureSource = dataStore.getFeatureSource(typeName); 
SimpleFeatureCollection collection = featureSource.getFeatures(); 

ReferencedEnvelope env = collection.getBounds(); 
double left = env.getMinX(); 
double right = env.getMaxX(); 
double top = env.getMaxY(); 
double bottom = env.getMinY(); 
2

спасибо, это именно то, что я искал! Мне нужно было изменить карту url. это рабочий код:

File file = new File(shpFilePath); 
Map<String, URL> map = new HashMap<String, URL>();  
map.put("url", file.toURI().toURL()); 

DataStore dataStore = DataStoreFinder.getDataStore(map); 

// SimpleFeatureSource featureSource = dataStore.getFeatureSource(shpName); this works too 
SimpleFeatureSource featureSource = dataStore.getFeatureSource(dataStore.getTypeNames()[0]);   
SimpleFeatureCollection collection = featureSource.getFeatures(); 

ReferencedEnvelope env = collection.getBounds(); 
double left = env.getMinX(); 
double right = env.getMaxX(); 
double top = env.getMaxY(); 
double bottom = env.getMinY(); 
Смежные вопросы