mirror of
https://github.com/meteoinfo/MeteoInfo.git
synced 2025-12-08 20:36:05 +00:00
add shapewrite function
This commit is contained in:
parent
71559f3e24
commit
1b1a5b6604
@ -69,7 +69,7 @@ import java.util.zip.ZipInputStream;
|
||||
public static String getVersion() {
|
||||
String version = GlobalUtil.class.getPackage().getImplementationVersion();
|
||||
if (version == null || version.equals("")) {
|
||||
version = "4.0";
|
||||
version = "4.0.1";
|
||||
}
|
||||
return version;
|
||||
}
|
||||
|
||||
@ -1,32 +1,32 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<MeteoInfo File="milconfig.xml" Type="configurefile">
|
||||
<Path OpenPath="D:\Working\MIScript\Jython\mis\array">
|
||||
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\common_math\stats"/>
|
||||
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\io\dataconvert"/>
|
||||
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\io"/>
|
||||
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\common_math\signal"/>
|
||||
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\test"/>
|
||||
<Path OpenPath="D:\Working\MIScript\Jython\mis\io\grib">
|
||||
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\io\netcdf"/>
|
||||
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\dataframe"/>
|
||||
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\io\burf"/>
|
||||
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\io\grib"/>
|
||||
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\map"/>
|
||||
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\map\webmap"/>
|
||||
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\common_math\linalg"/>
|
||||
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\common_math"/>
|
||||
<RecentFolder Folder="D:\Working\MIScript\Jython\mis"/>
|
||||
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\array"/>
|
||||
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\map\webmap"/>
|
||||
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\map\geoshow"/>
|
||||
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\map"/>
|
||||
<RecentFolder Folder="D:\Working\MIScript\Jython\mis"/>
|
||||
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\plot_types"/>
|
||||
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\plot_types\contour"/>
|
||||
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\io\json"/>
|
||||
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\io"/>
|
||||
<RecentFolder Folder="D:\Working\MIScript\Jython\mis\io\grib"/>
|
||||
</Path>
|
||||
<File>
|
||||
<OpenedFiles>
|
||||
<OpenedFile File="D:\Working\MIScript\Jython\mis\io\radar\radar_x_phase_2.py"/>
|
||||
<OpenedFile File="D:\Working\MIScript\Jython\mis\map\webmap\new_tilefactory_tianditu-1.py"/>
|
||||
<OpenedFile File="D:\Working\MIScript\Jython\mis\common_math\linalg\toeplitz_1.py"/>
|
||||
<OpenedFile File="D:\Working\MIScript\Jython\mis\plot_types\contour\conoutm.py"/>
|
||||
<OpenedFile File="D:\Working\MIScript\Jython\mis\io\grib\Z_NAFP_C_BCSH_9km_1.py"/>
|
||||
<OpenedFile File="D:\Working\MIScript\Jython\mis\io\grib\Z_NAFP_C_BCSH_9km_proj.py"/>
|
||||
</OpenedFiles>
|
||||
<RecentFiles>
|
||||
<RecentFile File="D:\Working\MIScript\Jython\mis\io\radar\radar_x_phase_2.py"/>
|
||||
<RecentFile File="D:\Working\MIScript\Jython\mis\map\webmap\new_tilefactory_tianditu-1.py"/>
|
||||
<RecentFile File="D:\Working\MIScript\Jython\mis\common_math\linalg\toeplitz_1.py"/>
|
||||
<RecentFile File="D:\Working\MIScript\Jython\mis\plot_types\contour\conoutm.py"/>
|
||||
<RecentFile File="D:\Working\MIScript\Jython\mis\io\grib\Z_NAFP_C_BCSH_9km_1.py"/>
|
||||
<RecentFile File="D:\Working\MIScript\Jython\mis\io\grib\Z_NAFP_C_BCSH_9km_proj.py"/>
|
||||
</RecentFiles>
|
||||
</File>
|
||||
<Font>
|
||||
|
||||
@ -27,6 +27,21 @@ class GeoGraphicCollection(object):
|
||||
else:
|
||||
return self._geographic.xshift(xshift)
|
||||
|
||||
@classmethod
|
||||
def factory(cls, graphics, projection=None):
|
||||
"""
|
||||
Create GeoGraphicCollection from GraphicCollection.
|
||||
|
||||
:param graphics: (*GraphicCollection*) The graphics.
|
||||
:param projection: (*ProjectionInfo*) The projection.
|
||||
:return: (*GeoGraphicCollection*) Created GeoGraphicCollection object.
|
||||
"""
|
||||
gg = JGeoGraphicCollection.factory(graphics)
|
||||
if projection is not None:
|
||||
gg.setProjInfo(projection)
|
||||
|
||||
return GeoGraphicCollection(geographic=gg)
|
||||
|
||||
@property
|
||||
def shapes(self):
|
||||
return self._geographic.getShapes()
|
||||
|
||||
Binary file not shown.
@ -14,7 +14,7 @@ from org.meteoinfo.geometry.graphic import Graphic
|
||||
from org.meteoinfo.geometry.legend import BreakTypes
|
||||
from org.meteoinfo.geometry.geoprocess import GeoComputation, GeometryUtil
|
||||
from org.meteoinfo.ndarray.math import ArrayMath, ArrayUtil
|
||||
from org.meteoinfo.geo.mapdata import MapDataManage
|
||||
from org.meteoinfo.geo.mapdata import MapDataManage, ShapeFileManage
|
||||
from org.meteoinfo.geo.util import GeoIOUtil
|
||||
from org.meteoinfo.geo.io import GeoJSONWriter
|
||||
from org.meteoinfo.table import AttributeTable
|
||||
@ -35,7 +35,7 @@ from java.util import ArrayList
|
||||
__all__ = [
|
||||
'arrayinpolygon', 'bilwrite', 'circle', 'convert_encoding_dbf', 'distance', 'geojson_write', 'georead', 'geotiffread', 'gridarea',
|
||||
'maplayer', 'inpolygon', 'maskin', 'maskout', 'polyarea', 'polygon', 'rmaskin', 'rmaskout', 'shaperead',
|
||||
'polygonindex', 'projinfo', 'project', 'projectxy', 'reproject', 'reproject_image'
|
||||
'shapewrite', 'polygonindex', 'projinfo', 'project', 'projectxy', 'reproject', 'reproject_image'
|
||||
]
|
||||
|
||||
|
||||
@ -72,6 +72,18 @@ def shaperead(fn, encoding=None):
|
||||
raise
|
||||
|
||||
|
||||
def shapewrite(fn, graphics, projection=None):
|
||||
"""
|
||||
Save graphics as a shape file.
|
||||
|
||||
:param fn: (*str*) The shape file name
|
||||
:param graphics: (*GraphicCollection*) The graphics
|
||||
:param projection: (*ProjectionInfo*) The projection
|
||||
"""
|
||||
geographic = GeoGraphicCollection.factory(graphics, projection=projection)
|
||||
ShapeFileManage.saveShapeFile(fn, geographic._geographic)
|
||||
|
||||
|
||||
def georead(fn, encoding=None):
|
||||
"""
|
||||
Returns a layer read from a supported geo-data file.
|
||||
|
||||
2
pom.xml
2
pom.xml
@ -35,7 +35,7 @@
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<java.version>1.8</java.version>
|
||||
<revision>4.0</revision>
|
||||
<revision>4.0.1</revision>
|
||||
<maven.compiler.source>8</maven.compiler.source>
|
||||
<maven.compiler.target>8</maven.compiler.target>
|
||||
<maven.compiler.release>8</maven.compiler.release>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user