Skip to content

Commit

Permalink
force redraw in some cases
Browse files Browse the repository at this point in the history
  • Loading branch information
flogross89 committed Feb 15, 2025
1 parent 6b0efa8 commit f068f4b
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 1 deletion.
8 changes: 7 additions & 1 deletion apps/server/src/terrain/processing/terrainworker.ts
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,8 @@ class TerrainWorker {

private renderingMode: TerrainRenderingMode = TerrainRenderingMode.ArcMode;

private forceRedraw: boolean = false;

private manualAzimEnabled: boolean = true;
private manualAzimDegrees: number = 0;
private manualAzimEndPoint: [number, number] | null = null;
Expand Down Expand Up @@ -121,6 +123,8 @@ class TerrainWorker {
const configuration = side === DisplaySide.Left ? status.efisDataCapt : status.efisDataFO;
const lastConfig = this.displayRendering[side].navigationDisplay.displayConfiguration();

this.forceRedraw ||= this.manualAzimEnabled !== status.manualAzimEnabled;

const configChanged =
lastConfig !== null &&
(lastConfig.efisMode !== configuration.efisMode ||
Expand All @@ -131,7 +135,7 @@ class TerrainWorker {
const stopRendering =
lastConfig !== null &&
((lastConfig.terrOnNd && !configuration.terrOnNd) || (lastConfig.terrOnVd && !configuration.terrOnVd));
const startRendering = configChanged || (lastConfig === null && configuration !== null);
const startRendering = configChanged || this.forceRedraw || (lastConfig === null && configuration !== null);

if (stopRendering || startRendering) {
if (this.displayRendering[side].durationInterval !== null) {
Expand Down Expand Up @@ -174,9 +178,11 @@ class TerrainWorker {
if (startRendering) {
this.startNavigationDisplayRenderingCycle(side);
}
this.forceRedraw = false;
}

private updatePathData(side: DisplaySide, path: VerticalPathData) {
this.forceRedraw ||= this.displayRendering[side].verticalDisplay.numPathElements() !== path.waypoints.length;
if (this.manualAzimEnabled || path.waypoints.length === 0) {
const waypoints =
this.manualAzimEndPoint === null
Expand Down
4 changes: 4 additions & 0 deletions apps/server/src/terrain/processing/verticaldisplayrenderer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,10 @@ export class VerticalDisplayRenderer {
return this.elevationConfig.waypointsLatitudes.length > 0;
}

public numPathElements(): number {
return this.elevationConfig.waypointsLatitudes.length;
}

public reset(): void {
this.renderingData = {
startTransitionBorder: 0,
Expand Down

0 comments on commit f068f4b

Please sign in to comment.