1
0
Fork 0
mirror of https://github.com/iNavFlight/inav-configurator.git synced 2025-07-15 20:35:19 +03:00

planer to planner

This commit is contained in:
breadoven 2021-11-26 23:16:02 +00:00
parent bf3fc89e6d
commit d0e1788318
5 changed files with 53 additions and 53 deletions

View file

@ -30,7 +30,7 @@ var CONFIG,
MOTOR_DATA, MOTOR_DATA,
SERVO_DATA, SERVO_DATA,
GPS_DATA, GPS_DATA,
MISSION_PLANER, MISSION_PLANNER,
ANALOG, ANALOG,
ARMING_CONFIG, ARMING_CONFIG,
FC_CONFIG, FC_CONFIG,
@ -246,7 +246,7 @@ var FC = {
packetCount: 0 packetCount: 0
}; };
/* MISSION_PLANER = { /* MISSION_PLANNER = {
maxWaypoints: 0, maxWaypoints: 0,
isValidMission: 0, isValidMission: 0,
countBusyPoints: 0, countBusyPoints: 0,
@ -262,8 +262,8 @@ var FC = {
p3: 0 p3: 0
} }
}; */ }; */
MISSION_PLANER = new WaypointCollection(); MISSION_PLANNER = new WaypointCollection();
ANALOG = { ANALOG = {
voltage: 0, voltage: 0,
@ -558,7 +558,7 @@ var FC = {
OUTPUT_MAPPING = new OutputMappingCollection(); OUTPUT_MAPPING = new OutputMappingCollection();
SETTINGS = {}; SETTINGS = {};
SAFEHOMES = new SafehomeCollection(); SAFEHOMES = new SafehomeCollection();
}, },
getOutputUsages: function() { getOutputUsages: function() {
@ -819,7 +819,7 @@ var FC = {
} }
} }
}; };
} }
}, },
getServoRates: function () { getServoRates: function () {
return { return {

View file

@ -447,7 +447,7 @@ var mspHelper = (function (gui) {
} }
break; break;
case MSPCodes.MSP_WP: case MSPCodes.MSP_WP:
MISSION_PLANER.put(new Waypoint( MISSION_PLANNER.put(new Waypoint(
data.getUint8(0), data.getUint8(0),
data.getUint8(1), data.getUint8(1),
data.getInt32(2, true), data.getInt32(2, true),
@ -1422,9 +1422,9 @@ var mspHelper = (function (gui) {
break; break;
case MSPCodes.MSP_WP_GETINFO: case MSPCodes.MSP_WP_GETINFO:
// Reserved for waypoint capabilities data.getUint8(0); // Reserved for waypoint capabilities data.getUint8(0);
MISSION_PLANER.setMaxWaypoints(data.getUint8(1)); MISSION_PLANNER.setMaxWaypoints(data.getUint8(1));
MISSION_PLANER.setValidMission(data.getUint8(2)); MISSION_PLANNER.setValidMission(data.getUint8(2));
MISSION_PLANER.setCountBusyPoints(data.getUint8(3)); MISSION_PLANNER.setCountBusyPoints(data.getUint8(3));
break; break;
case MSPCodes.MSP_SET_WP: case MSPCodes.MSP_SET_WP:
console.log('Point saved'); console.log('Point saved');
@ -2988,14 +2988,14 @@ var mspHelper = (function (gui) {
}; };
self.loadWaypoints = function (callback) { self.loadWaypoints = function (callback) {
MISSION_PLANER.reinit(); MISSION_PLANNER.reinit();
let waypointId = 0; let waypointId = 0;
let startTime = new Date().getTime(); let startTime = new Date().getTime();
MSP.send_message(MSPCodes.MSP_WP_GETINFO, false, false, loadWaypoint); MSP.send_message(MSPCodes.MSP_WP_GETINFO, false, false, loadWaypoint);
function loadWaypoint() { function loadWaypoint() {
waypointId++; waypointId++;
if (waypointId < MISSION_PLANER.getCountBusyPoints()) { if (waypointId < MISSION_PLANNER.getCountBusyPoints()) {
MSP.send_message(MSPCodes.MSP_WP, [waypointId], false, loadWaypoint); MSP.send_message(MSPCodes.MSP_WP, [waypointId], false, loadWaypoint);
} else { } else {
GUI.log('Receive time: ' + (new Date().getTime() - startTime) + 'ms'); GUI.log('Receive time: ' + (new Date().getTime() - startTime) + 'ms');
@ -3011,11 +3011,11 @@ var mspHelper = (function (gui) {
function sendWaypoint() { function sendWaypoint() {
waypointId++; waypointId++;
if (waypointId < MISSION_PLANER.get().length) { if (waypointId < MISSION_PLANNER.get().length) {
MSP.send_message(MSPCodes.MSP_SET_WP, MISSION_PLANER.extractBuffer(waypointId), false, sendWaypoint); MSP.send_message(MSPCodes.MSP_SET_WP, MISSION_PLANNER.extractBuffer(waypointId), false, sendWaypoint);
} }
else { else {
MSP.send_message(MSPCodes.MSP_SET_WP, MISSION_PLANER.extractBuffer(waypointId), false, endMission); MSP.send_message(MSPCodes.MSP_SET_WP, MISSION_PLANNER.extractBuffer(waypointId), false, endMission);
} }
}; };

View file

@ -203,7 +203,7 @@
height: 100%; height: 100%;
} }
/* #missionPlanerElevation { /* #missionPlannerElevation {
height: 40%; height: 40%;
} */ } */

View file

@ -1,11 +1,11 @@
<div class="tab-mission-control"> <div class="tab-mission-control">
<div style="padding-top: 20px;padding-left: 20px; padding-right: 20px;position: relative;"> <div style="padding-top: 20px;padding-left: 20px; padding-right: 20px;position: relative;">
<div class="tab_title" data-i18n="tabMissionControl">Mission planer</div> <div class="tab_title" data-i18n="tabMissionControl">Mission planner</div>
</div> </div>
<div class="content_wrapper"> <div class="content_wrapper">
<div class="cf_column fourth" id="missionControls"> <div class="cf_column fourth" id="missionControls">
<div class="spacer_right"> <div class="spacer_right">
<div id="missionPlanerAction" class="gui_box grey"> <div id="missionPlannerAction" class="gui_box grey">
<div class="gui_box_titlebar"> <div class="gui_box_titlebar">
<div class="spacer_box_title i18n-replaced" data-i18n="missionActionMenuHead">Action Menu</div> <div class="spacer_box_title i18n-replaced" data-i18n="missionActionMenuHead">Action Menu</div>
<div class="btnMenu btnMenuIcon show_btn" id="showHideActionButton"> <div class="btnMenu btnMenuIcon show_btn" id="showHideActionButton">
@ -38,7 +38,7 @@
</div> </div>
</div> </div>
<div id="missionPlanerTotalInfo" class="gui_box grey"> <div id="missionPlannerTotalInfo" class="gui_box grey">
<div class="gui_box_titlebar"> <div class="gui_box_titlebar">
<div class="spacer_box_title i18n-replaced" data-i18n="missionTotalInformationHead">Total information</div> <div class="spacer_box_title i18n-replaced" data-i18n="missionTotalInformationHead">Total information</div>
<div class="btnMenu btnMenuIcon show_btn" id="showHideInfoButton"> <div class="btnMenu btnMenuIcon show_btn" id="showHideInfoButton">
@ -65,7 +65,7 @@
</div> </div>
</div> </div>
<div id="missionPlanerSettings" class="gui_box grey" style="display: none"> <div id="missionPlannerSettings" class="gui_box grey" style="display: none">
<div class="gui_box_titlebar"> <div class="gui_box_titlebar">
<div class="spacer_box_title i18n-replaced" data-i18n="missionDefaultSettingsHead">Default settings</div> <div class="spacer_box_title i18n-replaced" data-i18n="missionDefaultSettingsHead">Default settings</div>
<div class="btnMenu btnMenuIcon save_btn"> <div class="btnMenu btnMenuIcon save_btn">
@ -129,7 +129,7 @@
</div> </div>
</div> </div>
<div id="missionPlanerHome" class="gui_box grey" style="display: none"> <div id="missionPlannerHome" class="gui_box grey" style="display: none">
<div class="gui_box_titlebar"> <div class="gui_box_titlebar">
<div class="spacer_box_title i18n-replaced" data-i18n="missionHomeHead">Take Off home</div> <div class="spacer_box_title i18n-replaced" data-i18n="missionHomeHead">Take Off home</div>
<div class="btnMenu btnMenuIcon save_btn"> <div class="btnMenu btnMenuIcon save_btn">
@ -170,7 +170,7 @@
</div> </div>
</div> </div>
<div id="missionPlanerSafehome" class="gui_box grey" style="display: none"> <div id="missionPlannerSafehome" class="gui_box grey" style="display: none">
<div class="gui_box_titlebar"> <div class="gui_box_titlebar">
<div class="spacer_box_title i18n-replaced" data-i18n="missionSafehomeHead">Safe Home manager</div> <div class="spacer_box_title i18n-replaced" data-i18n="missionSafehomeHead">Safe Home manager</div>
<div class="btnMenu btnMenuIcon save_btn"> <div class="btnMenu btnMenuIcon save_btn">
@ -331,7 +331,7 @@
</div> </div>
<div class="cf_column threefourth_left" style="height: 100%;"> <div class="cf_column threefourth_left" style="height: 100%;">
<div id="missionMap"></div> <div id="missionMap"></div>
<div id="missionPlanerElevation" class="gui_box grey" style="display: none"> <div id="missionPlannerElevation" class="gui_box grey" style="display: none">
<div class="gui_box_titlebar"> <div class="gui_box_titlebar">
<div class="spacer_box_title i18n-replaced" data-i18n="missionDefaultElevationHead">Elevation Profile</div> <div class="spacer_box_title i18n-replaced" data-i18n="missionDefaultElevationHead">Elevation Profile</div>
<div class="btnMenu btnMenuIcon save_btn"> <div class="btnMenu btnMenuIcon save_btn">

View file

@ -301,9 +301,9 @@ TABS.mission_control.initialize = function (callback) {
//update RTH every 5th GPS update since it really shouldn't change //update RTH every 5th GPS update since it really shouldn't change
if(rthUpdateInterval >= 5) if(rthUpdateInterval >= 5)
{ {
MISSION_PLANER.bufferPoint.number = -1; //needed to get point 0 which id RTH MISSION_PLANNER.bufferPoint.number = -1; //needed to get point 0 which id RTH
MSP.send_message(MSPCodes.MSP_WP, mspHelper.crunch(MSPCodes.MSP_WP), false, function rth_update() { MSP.send_message(MSPCodes.MSP_WP, mspHelper.crunch(MSPCodes.MSP_WP), false, function rth_update() {
var coord = ol.proj.fromLonLat([MISSION_PLANER.bufferPoint.lon, MISSION_PLANER.bufferPoint.lat]); var coord = ol.proj.fromLonLat([MISSION_PLANNER.bufferPoint.lon, MISSION_PLANNER.bufferPoint.lat]);
rthGeo.setCoordinates(coord); rthGeo.setCoordinates(coord);
}); });
rthUpdateInterval = 0; rthUpdateInterval = 0;
@ -433,16 +433,16 @@ TABS.mission_control.initialize = function (callback) {
// //
///////////////////////////////////////////// /////////////////////////////////////////////
function loadSettings() { function loadSettings() {
chrome.storage.local.get('missionPlanerSettings', function (result) { chrome.storage.local.get('missionPlannerSettings', function (result) {
if (result.missionPlanerSettings) { if (result.missionPlannerSettings) {
settings = result.missionPlanerSettings; settings = result.missionPlannerSettings;
} }
refreshSettings(); refreshSettings();
}); });
} }
function saveSettings() { function saveSettings() {
chrome.storage.local.set({'missionPlanerSettings': settings}); chrome.storage.local.set({'missionPlannerSettings': settings});
} }
function refreshSettings() { function refreshSettings() {
@ -452,7 +452,7 @@ TABS.mission_control.initialize = function (callback) {
} }
function closeSettingsPanel() { function closeSettingsPanel() {
$('#missionPlanerSettings').hide(); $('#missionPlannerSettings').hide();
} }
///////////////////////////////////////////// /////////////////////////////////////////////
@ -461,7 +461,7 @@ TABS.mission_control.initialize = function (callback) {
// //
///////////////////////////////////////////// /////////////////////////////////////////////
function closeSafehomePanel() { function closeSafehomePanel() {
$('#missionPlanerSafehome').hide(); $('#missionPlannerSafehome').hide();
cleanSafehomeLayers(); cleanSafehomeLayers();
} }
@ -636,8 +636,8 @@ TABS.mission_control.initialize = function (callback) {
// //
///////////////////////////////////////////// /////////////////////////////////////////////
function closeHomePanel() { function closeHomePanel() {
$('#missionPlanerHome').hide(); $('#missionPlannerHome').hide();
$('#missionPlanerElevation').hide(); $('#missionPlannerElevation').hide();
cleanHomeLayers(); cleanHomeLayers();
} }
@ -1436,7 +1436,7 @@ TABS.mission_control.initialize = function (callback) {
button.style = 'background: url(\'../images/CF_settings_white.svg\') no-repeat 1px -1px;background-color: rgba(0,60,136,.5);'; button.style = 'background: url(\'../images/CF_settings_white.svg\') no-repeat 1px -1px;background-color: rgba(0,60,136,.5);';
var handleShowSettings = function () { var handleShowSettings = function () {
$('#missionPlanerSettings').fadeIn(300); $('#missionPlannerSettings').fadeIn(300);
}; };
button.addEventListener('click', handleShowSettings, false); button.addEventListener('click', handleShowSettings, false);
@ -1469,7 +1469,7 @@ TABS.mission_control.initialize = function (callback) {
button.style = 'background: url(\'../images/icons/cf_icon_safehome_white.svg\') no-repeat 1px -1px;background-color: rgba(0,60,136,.5);'; button.style = 'background: url(\'../images/icons/cf_icon_safehome_white.svg\') no-repeat 1px -1px;background-color: rgba(0,60,136,.5);';
var handleShowSafehome = function () { var handleShowSafehome = function () {
$('#missionPlanerSafehome').fadeIn(300); $('#missionPlannerSafehome').fadeIn(300);
//SAFEHOMES.flush(); //SAFEHOMES.flush();
//mspHelper.loadSafehomes(); //mspHelper.loadSafehomes();
cleanSafehomeLayers(); cleanSafehomeLayers();
@ -1507,11 +1507,11 @@ TABS.mission_control.initialize = function (callback) {
button.style = 'background: url(\'../images/icons/cf_icon_elevation_white.svg\') no-repeat 1px -1px;background-color: rgba(0,60,136,.5);'; button.style = 'background: url(\'../images/icons/cf_icon_elevation_white.svg\') no-repeat 1px -1px;background-color: rgba(0,60,136,.5);';
var handleShowSettings = function () { var handleShowSettings = function () {
$('#missionPlanerHome').fadeIn(300); $('#missionPlannerHome').fadeIn(300);
cleanHomeLayers(); cleanHomeLayers();
renderHomeTable(); renderHomeTable();
renderHomeOnMap(); renderHomeOnMap();
$('#missionPlanerElevation').fadeIn(300); $('#missionPlannerElevation').fadeIn(300);
plotElevation(); plotElevation();
}; };
@ -1768,7 +1768,7 @@ TABS.mission_control.initialize = function (callback) {
// save map view settings when user moves it // save map view settings when user moves it
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
map.on('moveend', function (evt) { map.on('moveend', function (evt) {
chrome.storage.local.set({'missionPlanerLastValues': { chrome.storage.local.set({'missionPlannerLastValues': {
center: ol.proj.toLonLat(map.getView().getCenter()), center: ol.proj.toLonLat(map.getView().getCenter()),
zoom: map.getView().getZoom() zoom: map.getView().getZoom()
}}); }});
@ -1776,10 +1776,10 @@ TABS.mission_control.initialize = function (callback) {
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
// load map view settings on startup // load map view settings on startup
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
chrome.storage.local.get('missionPlanerLastValues', function (result) { chrome.storage.local.get('missionPlannerLastValues', function (result) {
if (result.missionPlanerLastValues && result.missionPlanerLastValues.center) { if (result.missionPlannerLastValues && result.missionPlannerLastValues.center) {
map.getView().setCenter(ol.proj.fromLonLat(result.missionPlanerLastValues.center)); map.getView().setCenter(ol.proj.fromLonLat(result.missionPlannerLastValues.center));
map.getView().setZoom(result.missionPlanerLastValues.zoom); map.getView().setZoom(result.missionPlannerLastValues.zoom);
} }
}); });
@ -2616,7 +2616,7 @@ TABS.mission_control.initialize = function (callback) {
///////////////////////////////////////////// /////////////////////////////////////////////
// //
// Load/Save FC mission Toolbox // Load/Save FC mission Toolbox
// mission = configurator store, WP number indexed from 0, MISSION_PLANER = FC NVM store, WP number indexed from 1 // mission = configurator store, WP number indexed from 0, MISSION_PLANNER = FC NVM store, WP number indexed from 1
///////////////////////////////////////////// /////////////////////////////////////////////
function getWaypointsFromFC(loadEeprom) { function getWaypointsFromFC(loadEeprom) {
if (loadEeprom) { if (loadEeprom) {
@ -2634,12 +2634,12 @@ TABS.mission_control.initialize = function (callback) {
} else { } else {
$('#loadMissionButton').removeClass('disabled'); $('#loadMissionButton').removeClass('disabled');
} }
if (!MISSION_PLANER.getCountBusyPoints()) { if (!MISSION_PLANNER.getCountBusyPoints()) {
alert(chrome.i18n.getMessage('no_waypoints_to_load')); alert(chrome.i18n.getMessage('no_waypoints_to_load'));
return; return;
} }
mission.reinit(); mission.reinit();
mission.copy(MISSION_PLANER); mission.copy(MISSION_PLANNER);
mission.update(false, true); mission.update(false, true);
/* check multimissions */ /* check multimissions */
@ -2665,9 +2665,9 @@ TABS.mission_control.initialize = function (callback) {
} }
function sendWaypointsToFC(saveEeprom) { function sendWaypointsToFC(saveEeprom) {
MISSION_PLANER.reinit(); MISSION_PLANNER.reinit();
MISSION_PLANER.copy(mission); MISSION_PLANNER.copy(mission);
MISSION_PLANER.update(false, true, true); MISSION_PLANNER.update(false, true, true);
mspHelper.saveWaypoints(function() { mspHelper.saveWaypoints(function() {
GUI.log('End send point'); GUI.log('End send point');
if (saveEeprom) { if (saveEeprom) {
@ -2677,12 +2677,12 @@ TABS.mission_control.initialize = function (callback) {
} else { } else {
$('#saveMissionButton').removeClass('disabled'); $('#saveMissionButton').removeClass('disabled');
} }
mission.setMaxWaypoints(MISSION_PLANER.getMaxWaypoints()); mission.setMaxWaypoints(MISSION_PLANNER.getMaxWaypoints());
mission.setValidMission(MISSION_PLANER.getValidMission()); mission.setValidMission(MISSION_PLANNER.getValidMission());
mission.setCountBusyPoints(MISSION_PLANER.getCountBusyPoints()); mission.setCountBusyPoints(MISSION_PLANNER.getCountBusyPoints());
updateTotalInfo(); updateTotalInfo();
mission.reinit(); mission.reinit();
mission.copy(MISSION_PLANER); mission.copy(MISSION_PLANNER);
mission.update(false, true); mission.update(false, true);
refreshLayers(); refreshLayers();
$('#MPeditPoint').fadeOut(300); $('#MPeditPoint').fadeOut(300);
@ -2753,7 +2753,7 @@ TABS.mission_control.initialize = function (callback) {
} }
function plotElevation() { function plotElevation() {
if ($('#missionPlanerElevation').is(":visible") && !disableMarkerEdit) { if ($('#missionPlannerElevation').is(":visible") && !disableMarkerEdit) {
if (mission.isEmpty()) { if (mission.isEmpty()) {
var data = [[0], [0]]; var data = [[0], [0]];
var layout = {showlegend: true, var layout = {showlegend: true,