Changes, short version: support for LAS to LAS with filtering / changes in between, performance improvements in triangulation expanded to constrained triangulation, reworked dialogs for creating new components, all features of the .NET object model supported in COM clients.
(Fix) Map window no longer sometimes continuously blinks in the presence of layers referring to non-existing tables or fields.
Parsing a coordinate system from WKT recognizes additional WKT sequences (FITTED_CS, etc).
LAS dataport exposes extra fields added via variable-length records.
LAS dataport can export table data as a LAS or LAZ file. Record type is deduced automatically from the supplied fields.
(Fix) Attempting to perform a compacting save on a SHP file in the same location no longer fails.
(Fix) Attempting to update a batch of records in a MAP file table disallows altering values of the key fields for the index used to update.
GeomTriangulateXxx functions can use multiple threads when triangulating lines or areas (constrained triangulation), and perform significantly faster even with a single thread. Triangulating an area only keeps the triangles inside the area (to get the previous behavior, which was to keep all triangles in the convex hull, convert the area to a line prior to performing the triangulation).
New Transform dialog template: Decompose to Triangles - decomposes areas to triangles.
The new Edit - Export Results command allows exporting the results of a query. (This can be used to export a subset of a LAS file as a new LAS file, for example.)
The New Xxx dialogs used to create new components no longer show target folder path and no longer include means to specify description. If a new component is created in the context of the root MAP file, the data source path is hidden as well, otherwise the dialog shows the info regarding the target data source in a special area at the top. The OK buttons are renamed to Create <component type>, made larger and moved to the left, similarly to Transform, Select and other dialogs.
The New Xxx dialogs used to create new components include the Edit Query button. The button generates the query for the dialog actions without performing these actions.
The New Xxx dialogs used to create new components check names of components and fields prior to performing any operations, to fail early instead of mid-way through a create sequence.
The New Table dialog edits table schema using the standard Edit Schema dialog. If the target data source is not a MAP file, the dialog sets initial table schema to use an INT32 ID field (instead of an INT64 MFD_ID field) and a BTREE index on that field.
The New Drawing dialog is reworked to ask for the name and type of the geometry field, the coordinate system, and whether or not to create a spatial index. If the target data source is not a MAP file, the identity field is an INT32 field named ID, similarly to New Table.
The New Drawing dialog allows creating a drawing based on an existing table and geometry field. If the specified geometry field does not have an associated spatial index, the dialog suggests creating one. The coordinate system associated with the field can be edited.
The New Image dialog is reworked to ask for the names and types of the X and Y fields, the name, pixel type and size of the tile field, the coordinate system, the initial rectangle of the image and whether or not to create a spatial index. If the target data source is not a MAP file, the identity field is an INT32 field named ID, similarly to New Table.
The New Image dialog allows creating an image based on an existing table and tile / X / Y fields. If the specified combination of fields does not have an associated spatial index, the dialog suggests creating one (an RTREE index on X-Y-tile fields is used for MAP files, a BTREE index on X-Y fields for all other data sources). The coordinate system associated with the tile field can be edited. Using the same field for X and Y is disallowed.
The New Image dialog allows creating an image based on an existing image, adjusting its bounds. The new image uses the exact same fields and indexes as the original image. If the original image uses a level field, the dialog shows its name and type.
The New Image dialog verifies the bounds of the new image to be valid.
The New Labels dialog is reworked to ask for the name and type of the display field, and the coordinate system. The created drawing uses a GEOM field and includes a spatial index. If the target data source is not a MAP file, the identity field is an INT32 field named ID, similarly to New Table.
The New Labels dialog allows creating a labels component based on an existing drawing.
Invoking the New Drawing dialog from the Project pane via right-clicking a table automatically selects the clicked component in the dialog. Right-clicking a drawing or labels automatically selects the producing table as long as it is in the same data source.
Invoking the New Image dialog from the Project pane via right-clicking a table or an image automatically selects the clicked component in the dialog.
Invoking the New Labels dialog from the Project pane via right-clicking a drawing automatically selects the clicked component in the dialog. Right-clicking a labels component automatically selects the producing drawing as long as it is in the same data source.
The names for new components suggested by the New Xxx dialogs are cleaned up from component type postfixes and short numeric postfixes like '2' in 'Labels 2'.
New script functions: Application.CreatePoint, Application.CreatePoint3, Application.CreatePoint4 create point objects. Application.CreatePointObj, Application.CreatePoint3Obj, Application.CreatePoint4Obj create point objects that can be used from COM clients ("regular" point objects use generic types that can not be used by COM clients directly, the new functions return wrapper objects that can be used to work with underlying generic point objects).
New script functions: TypeConverter.ConvertObj, Value.DataObj, ValueSet.AddValueObj take and return point objects from COM clients.
Changed script functions: constructors for curve objects have been replaced with GeomBuilder.AddCurveCircle, GeomBuilder.AddCurveCircle3, GeomBuilder.AddCurveEllipse, GeomBuilder.AddCurveEllipse3, GeomBuilder.AddCurveSpline, GeomBuilder.AddCurveSpline3 functions that can be used from COM clients.
New script functions: CurveCircle.CoordObj, CurveCircle3.Coord3Obj, CurveEllipse.CenterObj, CurveEllipse.CoordObj, CurveEllipse3.Center3Obj, CurveEllipse3.Coord3Obj, CurveSpline.CoordObjs, CurveSpline3.Coord3Objs take and return point objects from COM clients.
New script functions: Geom.Branch.CoordObjs, Geom.Branch.Coord3Objs, Geom.CoordObjs, Geom.Coord3Objs return point objects to COM clients.
New script functions: Tile.PixelObjs, TileBuilder.PixelObjs take and return point objects from COM clients.
New script function: PropertySet.EnumObj exposes a enumerator for COM clients.
New script function: Database.GetComponentType returns type for component with a specified name.
New script function: Application.GetTechnologyForFile attempts to detect technology for a file with the specified name.
New script function: Database.ExportFile exports a component to a file with the specified name, detecting export technology from the name.
New script function: Sequence.Recompose takes a sequence and returns a new sequence with rearranged or filtered output values. The function is used with batch updates.
End of list.
The API doc is updated to reflect all changes to the object model.
(As of this build, the object model for .NET exposes all of its features to COM clients. See the API doc for details.)