Skip to content

SIMDIS SDK 1.12

Compare
Choose a tag to compare
@emminizer emminizer released this 16 Mar 12:43

SIMDIS SDK changes since version 1.11

New Features

  • DB Driver osgEarth Plug-in is no longer built. Instead, DB support is built directly into simVis, matching new osgEarth 3.0 style.
  • Data Tables can now flush individual columns.
  • Earth File Map layers now automatically refresh if they contain a 'refresh' key set to a numeric value representing the minutes between refresh. This is particularly useful for live weather image layers.
  • Platforms now support more highlight styles with various line modes, using the new simVis::CompositeHighlightNode and simVis::LineDrawableHighlightNode.
  • SDK is now compatible with osgEarth 3.0 API. Old osgEarth 2.x API is no longer compatible.
  • simCore::CsvReader is generic CSV reader class that is intended to loosely mirror Python's csv module.
  • simCore::coordinateSystemToString() and simCore::coordinateSystemFromString() provide to- and from-string functionality for simCore::CoordinateSystem.
  • simData.proto to include a preference for a Custom Renderer center axis.
  • simData::DataStore::FlushType updated with NON_RECURSIVE_DATA to flush points and commands. Does not flush category data, generic data, or data tables. simData::flushEntityData()'s signature was updated to handle the new flush type.
  • simData::PlatformPrefs field velVecColor added to control the color of a velocity vector.
  • simData::TableColumn can now report its owning Table's ID.
  • simData::TimeTickPrefs added to control simVis::TimeTicks for drawing a time ticks trail on a platform.
  • simQt::BindCenterEntityToEntityTreeComposite supports centering on an inactive entity by changing the scenario time to the closest time when the entity is active.
  • simQt::DndTreeView added to circumvent a Drag and Drop bug with QTreeView.
  • simQt::EntityTreeComposite's rightClickMenuRequested() signal now includes the QMenu pointer to populate. addExternalAction() and removeExternalAction() are now deprecated.
  • simQt::EntityTreeModel now has a non-const version of index() method, which processes the delayed entity if the initial search did not find the entity.
  • simUtil::DynamicSelectionPicker now gives preferential advantage to platforms over other entity types. This can be configured with setPlatformAdvantagePct().
  • simUtil::HudPositionEditor now exposes more methods that wrap the HudPositionManager and HudEditorGui correctly, allowing for easier use.
  • simUtil::HudPositionManager::getAllWindows() now includes a parameter that lets you specify whether you only want active (non-removed) windows.
  • simUtil::MapScale now has a method to toggle the units.
  • simUtil::MapScale now includes an optional background box and padding values.
  • simVis::GOG::Cone is a new GOG shape representing a cone.
  • simVis::GOG::Parser methods expanded to allow easier caching of parsed GOG information.
  • simVis::GogNodeInterface now stores the starting line number of the shape from the GOG source file.
  • simVis::LineDrawable and associated files have been removed. Use osgEarth/LineDrawable directly instead.
  • simVis::Projector now supports override color preferences.
  • simVis::Registry::setPseudoLoaderExtensions() and getPseudoLoaderExtensions() is used for specifying the extensions of known OSG pseudo-loaders. Filenames with these extensions do not go through the file search routines.

Bug Fixes

  • SIMDIS-3363: GOG Annotations using xy and xyz now project using X-East instead of ENU (curved/warped flat earth), matching line projections.
  • Custom Render entities without a host can now display a Local Grid.
  • Speed Lines and Speed Rings now dynamically resize correctly.
  • WorldMagneticModel::GeoMag::calculateVariance() now clamps input date to (latest WMM year 5) before calculating variance, rather than returning a variance of 0.0 when date was past that limit.
  • simCore::Mgrs::convertMgrstoUtm() is renamed convertMgrsToUtm() to match SDK style.
  • simCore::calculateRelAng() updated to more correctly calculate composite angle.
  • simCore::getAngleString() now shows 0 degrees for 360 degrees.
  • simData::MemoryDataStore::removeEntity() now correctly deletes projectors owned by a deleted beam.
  • simData::MemoryDataStore::timeBounds() for scenario times now account for deletes and flushes, but are now limited to platform TSPI points.
  • simData::MemoryTable::DoubleBufferTimeContainer::getTimeRange() now returns correct values in all cases.
  • simQt::MapDataModel lost signals imageLayerColorFilterChanged(), imageLayerVisibleRangeChanged(), and imageLayerAltitudeChanged(), based on updates to osgEarth 3.0 API.
  • simQt::SettingsProxyModel correctly invalidates and resets its filters when the source model adds/removes settings.
  • simQt::TimeWidget now always generates a valueEdited() signal when the user finishes editing the time.
  • simUtil::HudManager now accepts UTF-8 encoded text properly.