Изменения c 2.1.0

  1. Метод axioma.gui.MapView.changeProjection() переименован в axioma.gui.MapView.setCoordSystem() и принимает один параметр: новую координатную систему. Вызвать диалог выбора координатной системы можно напрямую, используя axioma.gui.ChooseCoordSystemDialog

Изменения c 2.3.1

  1. В axioma.core.SettingsManager были удалены флаги LastPathPython, LastPathTable и LastPathReport. Вместо них был добавлен один флаг LastOpenPath. Для последнего каталога открытия/сохранения рабочих наборов по прежнему используется LastPathWorkspace

  2. В функцию решения прямой геодезической задачи axioma.core.geometry.directGeodesicProblem() теперь передаются параметры эллипсоида.

Изменения c 2.3.2

  1. Для создания главного окна axioma.app.MainWindow теперь используется фабричный метод axioma.app.MainWindow.create() вместо конструктора

  2. Убран устаревший в версии 2.0.1 метод axioma.app.MainWindow.browserManager(). Используйте более обобщенный axioma.gui.WidgetManagerService. Сам класс (также устаревший) остается в api - axioma.gui.BrowserManager, но его больше нельзя получить как зависимость, используя axioma.core.plugin.HasDependencies.createDependencyGetter()

  3. Убран устаревший класс axioma.render.BrowserReportItem. Рекомендуется использование axioma.render.TableReportItem

  4. Убран устаревший в версии 2.0.1 метод axioma.app.MainWindow.reportViewManager(). Используйте более обобщенный axioma.gui.WidgetManagerService. Сам класс (также устаревший) остается в api - axioma.gui.ReportViewManager, но его больше нельзя получить как зависимость, используя axioma.core.plugin.HasDependencies.createDependencyGetter()

  5. Конструктор класса axioma.core.dp.Selection теперь принимает список идентификаторов записей, а не сами записи.

Изменения c 2.5.0

  1. Из метода axioma.render.ReportItem.rect() убран по факту неиспользуемый параметр full

  2. axioma.gui.GeometryInformationDialog теперь создается статичной фабричной функцией axioma.gui.GeometryInformationDialog.build()

  3. Убран ключ установок axioma.core.DefaultSettingsList FloatPrecision, ранее отвечавший за точность представления вещественных значений. Добавлены ключи установок axioma.core.DefaultSettingsList DistancePrecision (отвечает за точность представления расстояний и площадей на карте по умолчанию), EnableSmartTabs (признак умного переключения вкладок), SelectByInformationTool (признак автоматического выбора объекта инструментом «»Информация»»), SaveAsToOriginalFileFolder (признак выбора каталога с исходным файлом при сохранении копии). Для проверки актуальности ключей добавлен метод axioma.core.DefaultSettingsList.isDeprecated()

  4. Добавлен класс axioma.core.geometry.RoundTransform, позволяющий выполнять операции округления координат геометрических объектов. Для удобства использования данного класса методы axioma.render.Layer.deviceUnitSize() и функция roundByUnitSize(). Для применения этого (и других) преобразований в координатной системе слоя добавлен метод axioma.core.dp.Feature.setGeoAttribute().

  5. Добавлены функции преобразования вещественных значений в строку: toString() и toLocalizedString(). Несколько отличаются от стандартных функций преобразования, в точности соответствуют используемым в системе правилам.

  6. Добавлены методы axioma.core.dp.TransactionalTable.setAutoCommit(), axioma.core.dp.TransactionalTable.setAutoRollback() и axioma.core.dp.TransactionalTable.useAutoRollback(), позволяющие управлять процессом обработки транзакционных изменений при отсутствии явного подтверждения или отказа.

Изменения c 2.6.1

  1. Добавлен ключ установок axioma.core.DefaultSettingsList UseAntialiasing, отвечающий за сглаживание при отрисовке в окне карты и ранее реализованный методами useAntialiasing и setUseAntialiasing класса axioma.render.RenderSettingsManager.

  2. Убран интерфейс axioma.mapinfo.CircularInterface. Класс axioma.mapinfo.Circular теперь является базовым.

  3. Убран интерфейс axioma.mapinfo.RoundRectangleInterface. Используйте axioma.mapinfo.RoundRectangle напрямую.

  4. Убран интерфейс axioma.mapinfo.RectangleInterface. Используйте axioma.mapinfo.Rectangle напрямую.

  5. Убран интерфейс axioma.mapinfo.EllipseInterface. Используйте axioma.mapinfo.Ellipse напрямую.

  6. Убран интерфейс axioma.mapinfo.ArcInterface. Используйте axioma.mapinfo.Arc напрямую.

  7. Убран интерфейс axioma.core.geometry.PolygonInterface. Используйте axioma.core.geometry.Polygon напрямую.

  8. Убран интерфейс axioma.core.geometry.MultiPolygonInterface. Используйте axioma.core.geometry.MultiPolygon напрямую.

  9. Убран интерфейс axioma.core.geometry.PointInterface. Используйте axioma.core.geometry.Point напрямую.

  10. Убран интерфейс axioma.core.geometry.LinearRingInterface. Используйте axioma.core.geometry.LinearRing напрямую.

  11. Убран интерфейс axioma.core.geometry.LineInterface. Используйте axioma.core.geometry.Line напрямую.

  12. Убран интерфейс axioma.core.geometry.MultiPointInterface. Используйте axioma.core.geometry.MultiPoint напрямую.

  13. Убран интерфейс axioma.core.geometry.MultiLineStringInterface. Используйте axioma.core.geometry.MultiLineString напрямую.

  14. Убран интерфейс axioma.core.geometry.MultiGeometryInterface. Используйте axioma.core.geometry.MultiGeometry напрямую.

  15. Убран интерфейс axioma.mapinfo.TextInterface. Используйте axioma.mapinfo.Text напрямую.

  16. Добавлен ключ установок axioma.core.DefaultSettingsList TitanInterfaceStyle, отвечающий за стиль интерфейса.

  17. В пространственных операциях добавлен параметр, позволяющий выполнять пользовательские функции в ходе долгого исполнения любой пространственной операции.

  18. Добавлен ключ установок axioma.core.DefaultSettingsList NodesUpdateMode, отвечающий за возможность перезаписи истории в режиме редактирования узлов.

  19. Переименованы методы: axioma.cs.CoordSysFactory.createFromProj4() -> axioma.cs.CoordSysFactory.createFromProj(), axioma.cs.CoordsSystem.proj4Str() -> axioma.cs.CoordSystem.projStr(), axioma.cs.CoordSysFactory.createFromPRJ() -> axioma.cs.CoordSysFactory.createFromPrj(), axioma.cs.CoordSysFactory.createFromEPSG() -> axioma.cs.CoordSysFactory.createFromEpsg(), axioma.cs.CoordSysFactory.createFromWKT() -> axioma.cs.CoordSysFactory.createFromWkt()

  20. Добавлена функция преобразования списка вещественных координат в строку: toString().

  21. Добавлены функции нахождения точки на линии и полилинии, ближайшей к указанной: nearestPointOn().

  22. Добавлены функции поиска пологих участков на полилинии: flatPoint() и flatPlots().

  23. Добавлена функция смены направления полилинии или полигона: reversePolygon().

  24. Добавлен атрибут axioma.render.LabelProperties.smoothPolyLine, управляющей сглаживанием полилиний при выводе подписей.

  25. Добавлены методы axioma.render.LabelLayout.orientation() и axioma.render.LabelLayout.setOrientation(), управляющие ориентацией подписи.

  26. Добавлена возможность запускать пользовательские задачи в фоновом потоке с одновременным отображением прогресса с помощью метода showLongWait()

  27. Добавлен класс axioma.core.PythonTask который является обёрткой над пользовательской задачей. Запускать их можно с помощью метода start() из класса TaskThreadPool

  28. Добавлен конструктор для класса LegendReportItem

  29. Изменен тип параметра конструктора для класса ScaleBarReportItem

  30. При экспорте добавлена возможность исправления геометрии axioma.core.dp.DatabaseProviderExportSupport.smoothPolyLine.fixGeometryTag

  31. Метод axioma.app.MainWindow.registerDataObject() возвращает зарегистрированный объект

Изменения c 2.6.2

  1. Добавлен сигнал axioma.render.Map.editableLayerChanging() вызываемый перед сменой редактируемого слоя.

  2. Для методов axioma.app.MainWindow.newMap(), axioma.app.MainWindow.newBrowser(), axioma.app.MainWindow.newReport(), axioma.app.MainWindow.newLegend() добавлена возможнность получения созданного значения как результат.

  3. Переименованы и частично изменены структуры для конфигурирования отображения прогресса: WaitMessageSpec -> ProgressSpec Набор флагов WaitMessageType был удалён и заменён на флаги из ProgressSpec. Так же незначительные изменения были сделаны в PythonProgressHandler. Удалён метод showWaitMessage.

  4. Исправлена иерархия наследования класса PolygonFillStyleSimple

  5. Устарели методы axioma.render.LabelLayout.alignment() и axioma.render.LabelLayout.offset(). Вместо них следует использовать новый набор методов: axioma.render.LabelLayout.alignmentPoint(), axioma.render.LabelLayout.alignmentCurve(), axioma.render.LabelLayout.alignmentArea(), axioma.render.LabelLayout.offsetPoint(), axioma.render.LabelLayout.offsetCurve() и axioma.render.LabelLayout.offsetArea(). Добавлены методы установки выравнивания и смещения axioma.render.LabelLayout.setAlignmentPoint(), axioma.render.LabelLayout.setAlignmentCurve(), axioma.render.LabelLayout.setAlignmentArea(), axioma.render.LabelLayout.setOffsetPoint(), axioma.render.LabelLayout.setOffsetCurve(), axioma.render.LabelLayout.setOffsetArea(), axioma.render.LabelLayout.setOffsets(). В связи с дифференцированием выравнивания и смещения по типам изменён смысл методов axioma.render.LabelLayout.setAlignment() и axioma.render.LabelLayout.setOffset(): теперь они относятся сразу ко всем типам геометрий.

  6. Добавлены атрибуты видимости отдельных типов геометрий axioma.render.LabelPlacementPolicy.visibleArea, axioma.render.LabelPlacementPolicy.visibleCurve, axioma.render.LabelPlacementPolicy.visiblePoint. Атрибут axioma.render.LabelPlacementPolicy.visible теперь относится ко всем типам геометрий.

  7. Добавлены новые атрибуты, влияющие на выбор надписей для отрисовки axioma.render.LabelPlacementPolicy.collectionRules, axioma.render.LabelPlacementPolicy.labelEverySection, axioma.render.LabelPlacementPolicy.overhang, axioma.render.LabelPlacementPolicy.clipPolicyArea, axioma.render.LabelPlacementPolicy.clipPolicyCurve и axioma.render.LabelPlacementPolicy.clipPolicyCollection.

  8. Добавлены новые атрибуты свойств подписей: axioma.render.LabelProperties.reduceFontSize (ReduceFontSize), axioma.render.LabelProperties.textProperties (TextProperties), axioma.render.LabelProperties.angleMax (AngleMax), axioma.render.LabelProperties.flatPlotFallback и axioma.render.LabelProperties.flatAngle.

  9. Добавлены новые методы для отрисовки текстовых объектов: axioma.render.TextRenderer.shadowColor(), axioma.render.TextRenderer.setShadowColor(), axioma.render.TextRenderer.hasShadow(), axioma.render.TextRenderer.enableShadow(), axioma.render.TextRenderer.shadowOffset(), axioma.render.TextRenderer.pixelHaloWidthDevice(), axioma.render.TextRenderer.pixelHaloWidth(), axioma.render.TextRenderer.pointHaloWidthDevice(), axioma.render.TextRenderer.pointHaloWidth(), axioma.render.TextRenderer.setPointHaloWidth(), axioma.render.TextRenderer.setHaloWidthPercent().

  10. Удалён метод проверки попадания объектов в интервал axioma.render.ThematicRangeStyleParam.checkValue().

  11. Добавлены функции преобразования вещественных значений в строку: toStringFixup(), toLocalizedStringFixup(), toStringRound(), toLocalizedStringRound(), toStringByMode(), toLocalizedStringByMode(). Несколько отличаются от стандартных функций преобразования, в точности соответствуют используемым в системе правилам.

Изменения c 2.9.0

  1. Добавлен класс NickedTable, изменён состав класса QueryResult.

  2. Методы commit() и restore() перенесены из класса axioma.core.dp.HasFeatureHistory в наследующий класс axioma.core.dp.TransactionalTable.

  3. Добавлен ключ установок axioma.core.DefaultSettingsList PhysicalScreenSize, позволяющий задать размер экрана монитора, и SqlTreePopupWidth, отвечающий за ширину выпадающего списка функций в диалогах sql-запросов.

  4. Добавлен модуль axioma.engine.Engine, позволяющий обращаться к виртуальным таблицам (соответствующим таблицам системы) с использованием sql-синтаксиса.

  5. В методе itemFromFeature() изменен тип первого параметра с TableLayer на Layer

  6. Убраны неиспользуемые классы BrowserManager и ReportViewManager

  7. Добавлены классы по работе с sql-диалектами axioma.core.sql.Dialect, axioma.core.sql.DialectExpression, axioma.core.sql.DialectQuery, axioma.core.sql.FunctionFilter, axioma.core.sql.FunctionInfo, axioma.core.sql.NameDescribed, axioma.core.sql.FunctionSet, axioma.core.sql.OperatorFilter, axioma.core.sql.OperatorSet, axioma.core.sql.Type и axioma.engine.Engine. Добавлен конструктор FeatureExpressionEvaluator() (dialect, schema) и метод query() класса QueryTable.