Changes Composing contours removes degenerate connections. (A note: we analyzed differences between contours produced by 8 and 9. Some of these differences were related to 9 producing degenerate connections that 8 was not producing. Although these degenerate connections contained data which would be helpful if one was to restore the original raster from the contours, we decided to remove these connections from the final output of the current contour functions, as above. All other differences were related to the handling of the height range: 8 separates pixels with values exactly equal to the contour height from pixels that are lower, while 9 separates them from pixels that are higher. Neither choice is better than the other, each choice will at times produce geometry that appears smoother than the opposite choice depending on the pixel values. The difference usually appears on integer rasters. Such a raster will usually contain patches where the specific choice worked 'better' than the opposite choice as well as vice versa. The difference between the choices is commonly reconciled by shifting the contour heights to be non-integer. We decided not to sync the behavior of 9 to 8 in this case. The main reason is that we have other ideas on how to handle flat areas for the future which gets better results in all cases.) Composing contours and tracing areas removes redundant coordinates on horizontal and vertical edges. The TileContourLinesXxx, TileContourAreasXxx, TileTraceAreasXxx query functions include an additional decompose parameter to specify whether the resulting geometry has to be decomposed into shapes. Contour Lines, Contour Areas, Trace Areas templates in the Transform pane set this parameter on by default. Decomposing geometry as part of building contours / traces uses a specialized algorithm which performs much faster than the regular algorithm used in the Decompose to Shapes transform. The difference is huge (15x+ and even higher after numerous optimizations). Decomposing geometry as part of building contours / traces helps avoid producing geometry which is too large to fit into 2 GB (~120 million coordinates), which is the limit for the size of a single geometry value. All reports of contours / traces failing with the 'Invalid data buffer size' error were related to geometry values hitting this limit. The Similarity parameter for the Trace Areas template in the Transform pane is set to 1 by default. (1 produces the same result as 0 on integer rasters, and using 0 on floating-point rasters is frequently a user error.) Composing contours and tracing areas reports detailed progress and allows canceling operation in all phases, including decompose. The image library dataport allows using escape sequences for X, Y, etc, in names of intermediate folders in addition to the filename. If the file pattern includes escape sequences in names of intermediate folders, the value of the 'Recurse into subfolders' option is ignored. (Fix) Exporting SHP with Z values no longer produces malformed data. (Fix) Reading DBF larger than 4 GB no longer sometimes stops before reaching end of data. (Many packages do not support DBF files larger than 4 GB and do not produce them. These files can, however, appear as a result of export from 9.) End of list.
|