diff --git a/src/app/config.demo.const.ts b/src/app/config.demo.const.ts index 5247ccc0..e88f2efb 100644 --- a/src/app/config.demo.const.ts +++ b/src/app/config.demo.const.ts @@ -93,6 +93,15 @@ export const DemoWidgetConfig: IWidgetConfig = { "convertUnitTo": "deg", "sampleTime": 500 }, + "courseOverGround": { + "description": "Course Over Ground", + "path": "self.navigation.courseOverGroundTrue", + "source": "default", + "pathType": "number", + "isPathConfigurable": true, + "convertUnitTo": "deg", + "sampleTime": 500 + }, "trueWindAngle": { "description": "True Wind Angle", "path": "self.environment.wind.angleTrueWater", @@ -128,13 +137,26 @@ export const DemoWidgetConfig: IWidgetConfig = { "isPathConfigurable": true, "convertUnitTo": "knots", "sampleTime": 500 + }, + "nextWaypointBearing": { + "description": "Next Waypoint Bearing", + "path": 'self.navigation.courseGreatCircle.nextPoint.bearingTrue', + "source": 'default', + "pathType": "number", + "isPathConfigurable": true, + "convertUnitTo": "deg", + "sampleTime": 500 } }, - "filterSelfPaths": true, "windSectorEnable": true, - "windSectorWindowSeconds": 10, + "windSectorWindowSeconds": 5, "laylineEnable": true, - "laylineAngle": 35 + "laylineAngle": 40, + "waypointEnable": true, + "courseOverGroundEnable": true, + "sailSetupEnable": false, + "enableTimeout": false, + "dataTimeout": 5 } }, { diff --git a/src/app/modal-widget-config/modal-widget-config.component.html b/src/app/modal-widget-config/modal-widget-config.component.html index 538da280..857627b5 100644 --- a/src/app/modal-widget-config/modal-widget-config.component.html +++ b/src/app/modal-widget-config/modal-widget-config.component.html @@ -89,6 +89,13 @@ +
+
+ + Show Course Over Ground + +
+
diff --git a/src/app/widgets-interface.ts b/src/app/widgets-interface.ts index b630c17d..59e105d8 100644 --- a/src/app/widgets-interface.ts +++ b/src/app/widgets-interface.ts @@ -119,6 +119,8 @@ export interface IWidgetSvcConfig { laylineAngle?: number; /** Used by wind Widget: enable/disable Waypoint UI feature */ waypointEnable?: boolean; + /** Used by wind Widget: enable/disable COG UI feature */ + courseOverGroundEnable?: boolean; /** Used by wind Widget: enable/disable sailSetup UI feature */ sailSetupEnable?: boolean; diff --git a/src/app/widgets/svg-wind/svg-wind.component.html b/src/app/widgets/svg-wind/svg-wind.component.html index 73dab8b3..41a0f2b9 100644 --- a/src/app/widgets/svg-wind/svg-wind.component.html +++ b/src/app/widgets/svg-wind/svg-wind.component.html @@ -462,15 +462,30 @@ + + + + + - - - - - 330 - + - { + if (newValue.value == null) { // act upon data timeout of null + newValue.value = 0 + } + this.courseOverGroundAngle = newValue.value; + }); + this.observeDataStream('nextWaypointBearing', newValue => { if (newValue.value < 0) {// stb this.waypointAngle = 360 + newValue.value; // adding a negative number subtracts it...