diff --git a/design/dem-loading-class-diagram.puml b/design/dem-loading-class-diagram.puml index 3e0001c5620452d5505e4f8463c1557784332abb..abfecd1e81501c32b9e790a49cd041c3935846a6 100644 --- a/design/dem-loading-class-diagram.puml +++ b/design/dem-loading-class-diagram.puml @@ -29,7 +29,7 @@ package api #DDEBD8 interface UpdatableTile { - +setGeometry(φref, λref, δφ, δλ, rows, columns) + +setGeometry(φ₀, λ₀, δφ, δλ, rows, columns) +setElevation(i, j, h) } interface TileUpdater { @@ -38,7 +38,7 @@ UpdatableTile <-- TileUpdater : updates end package - package dem #DDEBD8 + package raster #DDEBD8 interface Tile class SpecializedTile interface "TileFactory<T extends Tile>" as TileFactory_T_ { diff --git a/design/direct-localization-sequence-diagram.puml b/design/direct-localization-sequence-diagram.puml index 1cfc5b36562214aa413044da0cab5e6e5a3d0a25..f0475efd97116f5a8960793b4c95af728f0dcf05 100644 --- a/design/direct-localization-sequence-diagram.puml +++ b/design/direct-localization-sequence-diagram.puml @@ -34,32 +34,45 @@ participant "Application" as A participant "Interface" as I participant "Rugged" as R + participant "Algorithm" as G participant "Orekit" as O activate A - A -> I : directLocalization(line) + A -> I : directLocalization(name, number) activate I - I -> R : directLocalization(line) + I -> R : directLocalization(name, number) activate R R -> R : apply time stamping model R -> R : apply combined transform provider at date R -> R : loop over line pixels pₖ activate R - R -> O : convert(line-of-sight) - activate O - O --> R : line-of-sight in Earth frame - deactivate O R -> O : intersection(ellipsoid, line-of-sight) - activate O - O --> R : geodetic point - deactivate O - R -> R : DEM intersection + R -> R : fix speed of light delay in transforms activate R - R -> I : DEM callback - I --> R : DEM raw data cell - R --> R : φₖ, λₖ, hₖ deactivate R - R --> R : list(φₖ, λₖ, hₖ) + R -> G : intersection(ellipsoid, line-of-sight) + activate G + G -> O : conversions + G -> R : elevation(φₖ, λₖ) + activate R + R -> I : DEM callback + I --> R : DEM raw data cell + R --> G : h(φₖ, λₖ) + deactivate R + G -> O : conversions + G -> R : elevation(φₖ, λₖ) + activate R + R --> G : h(φₖ, λₖ) + deactivate R + G -> O : conversions + G -> R : elevation(φₖ, λₖ) + activate R + R --> G : h(φₖ, λₖ) + deactivate R + G -> O : conversions + G --> R : φₖ, λₖ, hₖ + deactivate G + R --> R : list(φₖ, λₖ, hₖ) deactivate R R --> I : list(φₖ, λₖ, hₖ) deactivate R diff --git a/design/geometry-at-date-sequence-diagram.puml b/design/geometry-at-date-sequence-diagram.puml index b63cf471f49697dc855a9cd167d9a1586c2ee232..38477f694097bfc34cb31a7a816ae931a15511f9 100644 --- a/design/geometry-at-date-sequence-diagram.puml +++ b/design/geometry-at-date-sequence-diagram.puml @@ -46,11 +46,7 @@ activate O O --> R : Earth to inertial transform deactivate O - R -> O : compose transforms - activate O - O --> R : spacecraft to Earth transform - deactivate O - R --> C : spacecraft to Earth transform + R --> C : spacecraft to inertial, inertial to Earth deactivate R deactivate C diff --git a/design/initialization-sequence-diagram.puml b/design/initialization-sequence-diagram.puml index 60b238bad97fb3720e7dd1695f266881f76d07d4..09e785b235df37a0b5a8f02b3129cb67bad77573 100644 --- a/design/initialization-sequence-diagram.puml +++ b/design/initialization-sequence-diagram.puml @@ -40,28 +40,29 @@ A -> I : init activate I I -> I : loadModels - I -> R : initiliaze(sensors, ephemeris) + I -> I : unfoldOpticalPath + activate I + deactivate I + I -> R : setGeneralContext(algorithm, frames, ellipsoid, ephemeris) activate R - R -> R : unfoldOpticalPath(sensors) + R -> O : createInterpolator(ephemeris) + activate O + O --> R : interpolating propagator + deactivate O + R -> R : createTransformProvider(interpolator) activate R - R -> O : composeTransforms - activate O - O --> R : sensors transforms - deactivate O - deactivate R - R -> O : createPropagator(ephemeris) - activate O - O --> R : interpolating propagator - deactivate O - R -> O : createTransformProvider(sensors transforms, propagator) - activate O - O --> R : combined TransformProvider with caching feature - deactivate O + deactivate R deactivate R - I -> R : registerLineTimeStampingModel + I -> R : setLineSensor(sensorName, pixels, datationModel) activate R deactivate R - I -> R : registerDEMCallback + I -> R : setLineSensor(sensorName, pixels, datationModel) + activate R + deactivate R + I -> R : setLineSensor(sensorName, pixels, datationModel) + activate R + deactivate R + I -> R : setUpTilesManagement(tileUpdater, maxCachedTiles) activate R deactivate R deactivate I diff --git a/design/mayon-volcano.png b/design/mayon-volcano.png new file mode 100644 index 0000000000000000000000000000000000000000..71d059fc8a26c9c46b8a99de5514723fc36e3ff3 Binary files /dev/null and b/design/mayon-volcano.png differ diff --git a/design/rugged-design.odt b/design/rugged-design.odt index 5eb86e94c5bcc23ce0151eab286a49f4b946a8ef..b393e70471f8a3a69c8d89a9051447d5c048b2df 100644 Binary files a/design/rugged-design.odt and b/design/rugged-design.odt differ