亚洲精品国产精品乱码视色,下载应用成人电影AVapp,成人影院下载视频

      <track id="gfhue"><i id="gfhue"></i></track><input id="gfhue"></input>

      1. 更多精彩內(nèi)容,歡迎關(guān)注:

        視頻號
        視頻號

        抖音
        抖音

        快手
        快手

        微博
        微博

        當(dāng)前位置:首頁 科技百科 java geotools

        java geotools

        文檔

        java geotools

        Geotools是一個java類庫,提供了很多的標(biāo)準(zhǔn)類和方法來處理空間數(shù)據(jù),同時這個類庫是構(gòu)建在OGC標(biāo)準(zhǔn)之上的,是OGC思想的一種實現(xiàn)。使用Java語言和面向?qū)ο蠓椒〞r,按照功能劃分模塊,結(jié)構(gòu)清晰。
        推薦度:
        導(dǎo)讀Geotools是一個java類庫,提供了很多的標(biāo)準(zhǔn)類和方法來處理空間數(shù)據(jù),同時這個類庫是構(gòu)建在OGC標(biāo)準(zhǔn)之上的,是OGC思想的一種實現(xiàn)。使用Java語言和面向?qū)ο蠓椒〞r,按照功能劃分模塊,結(jié)構(gòu)清晰。

        java geotools是什么,讓我們一起了解一下?

        Geotools是一個java類庫,提供了很多的標(biāo)準(zhǔn)類和方法來處理空間數(shù)據(jù),同時這個類庫是構(gòu)建在OGC標(biāo)準(zhǔn)之上的,是OGC思想的一種實現(xiàn)。使用Java語言和面向?qū)ο蠓椒〞r,按照功能劃分模塊,結(jié)構(gòu)清晰。

        它的核心特點是什么?1、為空間概念和數(shù)據(jù)結(jié)構(gòu)定義了很多的接口。2、通過JTS類庫集成了對幾何拓?fù)涞闹С帧?、通過使用OGC過濾編碼規(guī)范可以對屬性和空間要素過濾。4、對于數(shù)據(jù)訪問API,支持要素訪問、事務(wù)支持和線程間鎖定。5、可以訪問多種格式的數(shù)據(jù)和空間數(shù)據(jù)庫。

        6、支持多種坐標(biāo)參考系統(tǒng)和及其轉(zhuǎn)換。7、可以和擴展的地圖投影一同工作。8、可以按照空間和非空間屬性來過濾和分析數(shù)據(jù)。9、一種無狀態(tài)的,耗低內(nèi)存的渲染機制,尤其在服務(wù)端環(huán)境下。10、通過復(fù)雜的樣式(SLD)來組成和展現(xiàn)地圖。

        實戰(zhàn)操作:

        java如何用geotools類庫讀取shapefile?

        shapefile是esri公司最先搞出來的,那么arcgis應(yīng)該是有相關(guān)的類庫的吧?好像找不到?我問過搞移動端的同事,arcgis for android確有處理shapefile的類庫,處理起來易如反掌。

        但是,在WEB系統(tǒng),服務(wù)器端從shapefile讀出數(shù)據(jù),最終是要在前端瀏覽器中展示,像我們目前在建的項目,就是要用arcgis for js來展示這些數(shù)據(jù),而安卓系統(tǒng)類似CS項目,有很大的不同。最大的不同,WEB系統(tǒng)中,數(shù)據(jù)要以JSON的形式給前端,這樣才好處理。

        import?com.alibaba.fastjson.JSON;
        import?com.alibaba.fastjson.JSONArray;
        import?com.alibaba.fastjson.JSONObject;
        import?org.geotools.data.FileDataStore;
        import?org.geotools.data.FileDataStoreFinder;
        import?org.geotools.data.shapefile.ShapefileDataStore;
        import?org.geotools.data.shapefile.dbf.DbaseFileHeader;
        import?org.geotools.data.shapefile.dbf.DbaseFileReader;
        import?org.geotools.data.shapefile.files.ShpFiles;
        import?org.geotools.data.simple.SimpleFeatureCollection;
        import?org.geotools.data.simple.SimpleFeatureIterator;
        import?org.geotools.data.simple.SimpleFeatureSource;
        import?org.geotools.geojson.feature.FeatureJSON;
        import?org.geotools.geometry.jts.ReferencedEnvelope;
        import?org.locationtech.jts.geom.Coordinate;
        import?org.locationtech.jts.geom.Geometry;
        import?org.opengis.feature.Property;
        import?org.opengis.feature.simple.SimpleFeature;
        import?org.opengis.feature.simple.SimpleFeatureType;
        import?org.opengis.referencing.FactoryException;
        import?org.opengis.referencing.crs.CoordinateReferenceSystem;
        import?org.opengis.referencing.operation.TransformException;
        import?java.io.*;
        import?java.nio.charset.Charset;
        import?java.util.*;
        /*
        ????shapefile操作類
        ?*/
        public?class?ShapefileHelper?{
        ????public?static?Object?read(String?path)?throws?IOException?{
        ????/*
        參數(shù)path就是shp文件的完整路徑,如:E:\\蟠桃會資源清查\\調(diào)查圖斑.shp??
        系統(tǒng)會自動檢查同一個目錄下有沒有其他相關(guān)文件,有的話會一并讀出,
        相關(guān)文件的路徑無須給出
        .shp?存儲地理形狀和位置信息
        .dbf?存儲屬性信息
        .shx?索引文件
        .prj?坐標(biāo)系
        .cpg?字符編碼,如UTF-8
        讀取出來的結(jié)果類型為?List
        */
        ????????List?list?=?new?ArrayList();
        ????????File?file?=?getFile(path);
        ????????if?(file?==?null)?{
        ????????????return?list;
        ????????}
        ????????String?charset?=?getCharSet(path);
        ????????FileDataStore?store?=?FileDataStoreFinder.getDataStore(file);
        ????????((ShapefileDataStore)store).setCharset(Charset.forName(charset));
        ????????SimpleFeatureSource?featureSource?=?store.getFeatureSource();
        ????????SimpleFeatureCollection?collection?=?featureSource.getFeatures();
        ????????SimpleFeatureIterator?features?=?collection.features();
        ????????while?(features.hasNext())?{
        ????????????Map?item?=?new?HashMap();
        ????????????SimpleFeature?f?=?features.next();
        ????????????Collection?p?=?f.getProperties();
        ????????????Iterator?it?=?p.iterator();
        ????????????while?(it.hasNext())?{
        ????????????????Property?pro?=?it.next();
        ????????????????String?field?=?pro.getName().toString();
        ????????????????field?=?field.equals("the_geom")???"wkt"?:?field;
        ????????????????String?value?=?pro.getValue().toString();
        ????????????????item.put(field,?value);
        ????????????}
        ????????????list.add(item);
        ????????}
        ????????return?list;
        ????}
        ????
        ????private?static?File?getFile(String?path){
        ????????File?file?=?new?File(path);
        ????????if?(file?==?null)?{
        ????????????System.out.println("找不到路徑:"?+?path);
        ????????}
        ????????return?file;
        ????}
        ????/*
        ????獲取shapefile字符編碼
        ????如果存在.cpg文件,則從中讀取,否則默認(rèn)為UTF-8
        ?????*/
        ????private?static?String?getCharSet(String?path){
        ????????String?charset?=?"UTF-8";
        ????????int?p?=?path.lastIndexOf(".");
        ????????String?cpg?=?path.substring(0,p)?+?".cpg";
        ????????File?file?=?getFile(cpg);
        ????????if(file?!=?null)?{
        ????????????RandomAccessFile?raf?=?null;
        ????????????try?{
        ????????????????raf?=?new?RandomAccessFile(cpg,?"r");
        ????????????????charset?=?raf.readLine();
        ????????????????raf.close();
        ????????????}?catch?(FileNotFoundException?e)?{
        ????????????????e.printStackTrace();
        ????????????}?catch?(IOException?e)?{
        ????????????????e.printStackTrace();
        ????????????}
        ????????}
        ????????return?charset;
        ????}
        }

        以上就是小編今天的分享了,希望可以幫助到大家。

        文檔

        java geotools

        Geotools是一個java類庫,提供了很多的標(biāo)準(zhǔn)類和方法來處理空間數(shù)據(jù),同時這個類庫是構(gòu)建在OGC標(biāo)準(zhǔn)之上的,是OGC思想的一種實現(xiàn)。使用Java語言和面向?qū)ο蠓椒〞r,按照功能劃分模塊,結(jié)構(gòu)清晰。
        推薦度:
        為你推薦
        資訊專欄
        熱門視頻
        相關(guān)推薦
        java getbytes java hashcode java hdfs java node類 java notify java nslookup java number java hibernate java htmlunit java image java implements java influxdb java inputstreamreader java onvif java openfire java opengl java openjdk java rectangle java redirect java reference java nfs java nexus java nextline java nextint java newinstance java namespace java mybatisplus java mvvm java multiset java mqtt java mono java monad java module java modelandview java mockito java mmap java mkdir java mina java mian java method
        Top