From d3db4cf6abe51e7da0f9b966ccfde72ef854fff5 Mon Sep 17 00:00:00 2001
From: BravoMike99 <119708186+BravoMike99@users.noreply.github.com>
Date: Tue, 7 Jan 2025 20:01:04 +0000
Subject: [PATCH] fix(a380x/nd): Remove leading 0s from terrain elevation
(#9686)
* fix(nd): change terrain elev padding for A380x
* fix(nd): dont display lower terrain elevation if 0
* docs: add changelog
* docs: cleanup changelog of duplicates
---
.github/CHANGELOG.md | 5 +----
.../src/systems/instruments/src/ND/instrument.tsx | 9 +++++++--
.../src/systems/instruments/src/ND/instrument.tsx | 8 +++++++-
fbw-common/src/systems/instruments/src/ND/ND.tsx | 4 +++-
.../instruments/src/ND/TerrainMapThresholds.tsx | 14 ++++++++------
.../systems/instruments/src/NavigationDisplay.ts | 4 ++++
6 files changed, 30 insertions(+), 14 deletions(-)
diff --git a/.github/CHANGELOG.md b/.github/CHANGELOG.md
index 02573472120..995698900ed 100644
--- a/.github/CHANGELOG.md
+++ b/.github/CHANGELOG.md
@@ -36,8 +36,6 @@
1. [A380X/MFD] MFD/SURV: Fixed TCAS not switching status when using DEFAULT SETTINGS button - @flogross89 (floridude)
1. [A380X/FUEL] Recalibrated inital fuel settings - @sschiphorst (Yahtzee94)
1. [A380X/ENG] Another adjustment to taxi thrust - @donstim (donbikes)
-1. [A380X/ANIM] Animation of flaps now from FPPU position. Interim fix for spoiler low end animation - @Crocket63 (crocket)
-1. [A380X/ENGINES] Another adjustment to taxi thrust - @donstim (donbikes)
1. [A380/ANIM] Animation of flaps now from FPPU position. Interim fix for spoiler low end animation - @Crocket63 (crocket)
1. [A380X/ENG] Improve oil pressure lookup table - @tracernz (Mike)
1. [A380X/FADEC] Add N1 fan protection measures (METOTS, KOZ) - @flogross89 (floridude)
@@ -104,8 +102,6 @@
1. [A380X/EFIS] Illuminate ND range and mode selectors during light test - @BravoMike99 (bruno_pt99)
1. [A380/PFD] Add DISCONNECT AP FOR LDG FMA message - @BravoMike99 (bruno_pt99)
1. [A380X/ENG] Adjust climb thrust to be more accurate - @BlueberryKing (BlueberryKing)
-1. [A380X/ANIM] Animation of flaps now from FPPU position. Interim fix for spoiler low end animation - @Crocket63 (crocket)
-1. [A380X/ENGINES] Adjust climb thrust to be more accurate - @BlueberryKing (BlueberryKing)
1. [A380X/EWD] Show THR limit in EWD instead of N1 - @flogross89 (floridude)
1. [A380X/FLIGHT MODEL] Fix pitchup and unrecoverable stall - - @donstim (donbikes#4084)
1. [ATC/TCAS] Fixed TCAS failure on baro corrected altitude going invalid - @tracernz (Mike)
@@ -115,6 +111,7 @@
1. [A32NX/AMU] Enable VHF3 audio, and allow switching off VHF1 - @tracernz (Mike)
1. [A380X/PFD] Fix font colours on metric altitude display - @MrJigs7 (MrJigs.)
1. [A380X/MFD] Fixed the altitude prediction not rounding to the nearest 10 on the FPLN page - @bulenteroglu (senolitam)
+1. [A380X/ND] Remove leading zeros from terrain elevation display - @BravoMike99 (bruno_pt99)
## 0.12.0
diff --git a/fbw-a32nx/src/systems/instruments/src/ND/instrument.tsx b/fbw-a32nx/src/systems/instruments/src/ND/instrument.tsx
index e5e183a63e2..9066f2aa403 100644
--- a/fbw-a32nx/src/systems/instruments/src/ND/instrument.tsx
+++ b/fbw-a32nx/src/systems/instruments/src/ND/instrument.tsx
@@ -11,7 +11,7 @@ import {
InstrumentBackplane,
Subject,
} from '@microsoft/msfs-sdk';
-import { a320EfisRangeSettings, ArincEventBus, EfisSide } from '@flybywiresim/fbw-sdk';
+import { a320EfisRangeSettings, a320TerrainThresholdPadValue, ArincEventBus, EfisSide } from '@flybywiresim/fbw-sdk';
import { NDComponent } from '@flybywiresim/navigation-display';
import { NDSimvarPublisher, NDSimvars } from './NDSimvarPublisher';
@@ -141,7 +141,12 @@ class NDInstrument implements FsInstrument {
failed={this.displayFailed}
normDmc={getDisplayIndex()}
>
-
+
,
document.getElementById('ND_CONTENT'),
);
diff --git a/fbw-a380x/src/systems/instruments/src/ND/instrument.tsx b/fbw-a380x/src/systems/instruments/src/ND/instrument.tsx
index e3534d83a36..befad8ba86f 100644
--- a/fbw-a380x/src/systems/instruments/src/ND/instrument.tsx
+++ b/fbw-a380x/src/systems/instruments/src/ND/instrument.tsx
@@ -17,6 +17,7 @@ import {
import {
A380EfisNdRangeValue,
a380EfisRangeSettings,
+ a380TerrainThresholdPadValue,
ArincEventBus,
BtvSimvarPublisher,
EfisNdMode,
@@ -280,7 +281,12 @@ class NDInstrument implements FsInstrument {
/>
-
+
{
side: EfisSide;
rangeValues: T[];
+
+ terrainThresholdPaddingText: string;
}
export class NDComponent extends DisplayComponent> {
@@ -463,7 +465,7 @@ export class NDComponent extends DisplayComponent>
MODE CHANGE
-
+
diff --git a/fbw-common/src/systems/instruments/src/ND/TerrainMapThresholds.tsx b/fbw-common/src/systems/instruments/src/ND/TerrainMapThresholds.tsx
index 4f113008767..67d4c8f6712 100644
--- a/fbw-common/src/systems/instruments/src/ND/TerrainMapThresholds.tsx
+++ b/fbw-common/src/systems/instruments/src/ND/TerrainMapThresholds.tsx
@@ -4,6 +4,7 @@ import { GenericTawsEvents, TerrainLevelMode } from './types/GenericTawsEvents';
export interface TerrainMapThresholdsProps {
bus: EventBus;
+ paddingText: string;
}
export class TerrainMapThresholds extends DisplayComponent {
@@ -24,13 +25,14 @@ export class TerrainMapThresholds extends DisplayComponent {
+ let roundedElevation: string;
if (elevation !== 0) {
- return Math.round(elevation / 100 + 0.5)
- .toString()
- .padStart(3, '0');
+ roundedElevation = Math.round(elevation / 100 + 0.5).toString();
+ } else {
+ roundedElevation = '0';
}
- return '000';
+ return roundedElevation.padStart(3, this.props.paddingText);
});
private readonly upperBorderColor = this.maxElevationModeSub.map((mode) => {
@@ -45,10 +47,10 @@ export class TerrainMapThresholds extends DisplayComponent {
- if (elevation >= 0) {
+ if (elevation > 0) {
return Math.floor(elevation / 100)
.toString()
- .padStart(3, '0');
+ .padStart(3, this.props.paddingText);
}
return '';
diff --git a/fbw-common/src/systems/instruments/src/NavigationDisplay.ts b/fbw-common/src/systems/instruments/src/NavigationDisplay.ts
index b3456c554f9..d31ff64fc96 100644
--- a/fbw-common/src/systems/instruments/src/NavigationDisplay.ts
+++ b/fbw-common/src/systems/instruments/src/NavigationDisplay.ts
@@ -17,6 +17,10 @@ export const a320EfisOansRangeSettings: A320EfisOansNdRangeValue[] = [-1, 10, 20
export const a380EfisRangeSettings: A380EfisNdRangeValue[] = [-1, 10, 20, 40, 80, 160, 320, 640];
+export const a320TerrainThresholdPadValue = '0';
+
+export const a380TerrainThresholdPadValue = '\\xa0';
+
export enum EfisNdMode {
ROSE_ILS,
ROSE_VOR,