Skip to content
This repository was archived by the owner on Sep 20, 2024. It is now read-only.

Releases: 52North/IlwisCore

ILWIS Objects 1.0 Beta 3.0

08 Jul 13:41

Choose a tag to compare

Pre-release

This beta release of the ILWIS Objects Python extension comes with several enhancements and stability improvements, and includes the most recent ILWIS Objects framework.

+++Release notes+++

Improvements in the installation:

  • Versions are made available for Python 3.3, 3.4 and 3.5 (choose the one that you need to download)

Improvements in the Python API:

  • The python extension was renamed from ilwisobjects to ilwis. Now you do import ilwis instead of import ilwisobjects as ilwis.
  • Doing select on the attribute table of an ilwis3 FeatureCoverage didn't work (e.g. attrtable.select("pop_est > 10000")).
  • Change: FeatureCoverage('name') can no longer be used to create a new empty FeatureCoverage. Use fc = FeatureCoverage() followed by fc.name('name').
  • A clipping iterator over a rastercoverage clipped with a polygon that is too small would crash.
  • Removed the unused parameter spaces from CoordinateSystem.toWKT().
  • FeatureIterator now supports indexing, E.g. iter(fc)[100].
  • Now addColumn() on an ilwis.Table works correctly.
  • Solved crash in PixelIterator when indexing an item outside the raster (e.g. rciter[10000000]).
  • Added support for south UTM zones.
  • Many new ilwis Engine.do(...) operations, e.g. point2raster, polygon2raster, distanceraster, joinattributes. Check ilwis.Engine.operations() for the complete list.
  • Storing ilwis3 rasters with int32 resolution would throw an error.
  • Correctly store ilwis3 coordinate systems along with the featurecoverages.
  • Corrected the problem of attempting to store an ilwis3 table to a bad path (the path string was doubled).
  • Implemented the > and < operators for RasterCoverage (e.g. rcout = rc1 > rc2), producing a boolean RasterCoverage as output.
  • ilwis.Engine.do(...) with binary logical operations now works properly.
  • Solved a problem with setWorkingCatalog() that caused problems opening ilwis3 files with warnings like "Couldn't find coordinate system myname.csy, defaulting to unknown".
  • Corrected compatibility in storing/loading Ilwis3 files, especially tables, domains, all numeric values, and coordinate systems:
    • Domain Value 32 bits integer was unsupported
    • Stored tables couldn't be loaded by Ilwis3 due to a missing domain
    • Numeric values (all integer and floating point values, like coordinates, domain-range boundaries, nodata values) were written in a format that is not always compatible with Ilwis3
    • Coordinate systems would have wrong data
  • The gdal connector would treat CSV files in a way that they couldn't be opened as a table (only as an attribute-table of a non-existing featurecoverage, which didn't work).
  • The FeatureCoverage.reprojectFeatures() operation would enlarge the extents of the output.
  • Operation RasterCoverage.select() would produce a bad clip result, or produce a georeference that is slightly shifted and scaled compared to the original pixels, or occasionally crash.
  • Improvement in the error feedback of ilwis.Engine.do().
  • ilwis.Engine.operations() and ilwis.Engine.operationMetaData() are now called without round brackets after Engine, thus not Engine(), to be consistent with the other Engine functions.
  • For FeatureCoverage and RasterCoverage, renamed setSubDefinition(), subDomain() and countSubs() to setStackDefinition(), stackDomain() and countStackDomainItems(), to clarify that those functions refer to the domain of the map-stack (the additional dimension).
  • Simplified the store() of the ilwis objects: store() can now be called with less parameters when it is obvious which format or which driver to use.
  • Operation merge for merging two DataDefinitions was crashing, this is repaired.
  • Several clone functions were crashing, this is now repaired.
  • Eliminated unimportant messages from printing on the screen.
  • One can now open PostgreSQL Catalogs, Tables, FeatureCoverages and RasterCoverages. E.g. cat = ilwis.Catalog("postgresql://user:pass@myserver.cc.nl:5432") and then cat2 = cat['databasename'] to navigate through the databases, schemas and tables, or use directly fc = ilwis.FeatureCoverage("postgresql://user:pass@myserver.cc.nl:5432/databasename/schema/featurecoveragetable").

NOTE: Due to the mentioned changes/renames to the functions exposed by the API, if you have existing Python scripts that are based on the ILWIS Objects Python extension, they may need to be revised.

ILWIS Objects 1.0 Beta 2.3

26 Jun 11:43

Choose a tag to compare

Pre-release

This beta release of the ILWIS Objects Python extension solves an issue with the addBand function of RasterCoverage, which is used when creating new RasterCoverages from scratch.

ILWIS Objects 1.0 Beta 2.2

12 May 14:45

Choose a tag to compare

Pre-release

This beta release of the ILWIS Objects Python extension comes with several enhancements and stability improvements, and includes the most recent ILWIS Objects framework.

+++Release notes+++

Improvements in the installation:

  • The PATH environment variable is no longer altered during installation, nor used by ILWIS Objects or the Python extension. Please first uninstall any previously installed ILWIS Objects with Python extension, so that the PATH is restored and any remnants of the old setup are gone.
  • The ILWIS Objects Python extension now resides in its own folder under Python's "site-packages", just like regular Python extensions.
  • Versions are made available for both Python 3.3 and 3.4 (choose the one that you need to download)

Improvements in the Python API:

  • Spelling errors in some of the Python commands were corrected (e.g. ContinousColorRange is now ContinuousColorRange, see corresponding section in the wiki for all the renames).
  • Consistency improvement: the schema of a FeatureCoverage cannot be altered through its attribute table (e.g. world.attributeTable().addColumn() is now world.addColumn()).
  • Modernized the name of some functions, also bringing them in consistency with other similar functions: myfeature.setGeometry(mygeometry) is now myfeature.geometry(mygeometry), domain.add(anitem) is now domain.addItem(anitem), domain.remove(anitem) is now domain.removeItem(anitem).
  • Functions that check whether a domain/range contains or doesn't contain an item are improved, and will no longer result into the wrong answer.
  • The estimated range of the output values of a mathematical computation over raster bands is improved; the domain of the output fits better.
  • Modernized filename and path handling: now both file:///c:/ and c:\ are supported, e.g. ilwis.Engine.setWorkingCatalog(r"d:\mydatafolder") is now the same as ilwis.Engine.setWorkingCatalog("d:\mydatafolder") and ilwis.Engine.setWorkingCatalog("file:///d:/mydatafolder").
  • When a working catalog is set, objects can be accessed and stored with just their filename; it is no longer required to supply a full path to the files. The framework will look for them or store them in the working catalog.
  • Function setInputConnection(...) is renamed to open(...).
  • The two separate functions setOutputConnection(...) and store() are now combined into one total function named store(...). This stores the object in one step.
  • Added PostgreSQL/Postgis, WFS, Excel (.xlsx) and OpenOffice spreadsheet (.ods); they still need to be documented in the wiki.
  • Several functions that were not working in the previous beta, are corrected (reprojectRaster, pointrastercrossing).
  • Several functions or sequences of statements that were causing a crash in the previous beta, are corrected (toWKT(), specific use of iterators).

Still to do (work for the next beta):

  • Improve the KNMI-flavoured netCDF format reading; currently they come without georeference and projection.
  • Improve storing files in the ILWIS3 format (the files that are stored by ILWIS Objects are not always understood by ILWIS 3.x).

NOTE: Due to the mentioned changes/renames to the functions exposed by the API, if you have existing Python scripts that are based on the ILWIS Objects Python extension, they may need to be revised.

ILWIS Objects 1.0 Beta 1.1

03 Sep 09:34

Choose a tag to compare

Pre-release

The first beta release of the ILWIS Objects framework contains a set of Connectors (ILWIS3, GDAL) and a small set of GIS operations (mostly basic raster manipulation) plus the Python extension for Python 3.3 (32bit). This release is meant for testing purposes only.