2 Commits

Autor SHA1 Nachricht Datum
  sasgis 6a6886a308 update zmp vor 3 Jahren
  sasgis e77f7cbe51 update zmp vor 3 Jahren
11 geänderte Dateien mit 104 neuen und 86 gelöschten Zeilen
  1. +2
    -0
      GetMaps.cmd
  2. +23
    -19
      Navionics/navionics.SonarChart.layer.zmp/GetUrlScript.txt
  3. +1
    -2
      Navionics/navionics.SonarChart.layer.zmp/params.txt
  4. +23
    -19
      Navionics/navionics.SonarChart.zmp/GetUrlScript.txt
  5. +1
    -2
      Navionics/navionics.SonarChart.zmp/params.txt
  6. +23
    -19
      Navionics/navionics.layer.zmp/GetUrlScript.txt
  7. +1
    -2
      Navionics/navionics.layer.zmp/params.txt
  8. +23
    -19
      Navionics/navionics.zmp/GetUrlScript.txt
  9. +1
    -2
      Navionics/navionics.zmp/params.txt
  10. +2
    -1
      Update.cmd
  11. +4
    -1
      readme.md

+ 2
- 0
GetMaps.cmd Datei anzeigen

@@ -0,0 +1,2 @@
curl -H "Authorization: token 8e3ad20e4972e58cb91cc7556fc938b45b078544" "https://codeberg.org/api/v1/repos/sasgis/maps/archive/master.zip" -o maps.zip

+ 23
- 19
Navionics/navionics.SonarChart.layer.zmp/GetUrlScript.txt Datei anzeigen

@@ -1,22 +1,19 @@
//******************************************************************************
// LAYERS parameter: config_a_b_c
// a = 1 for depth in meters, 2 for depth in feet, 3 for fathoms
// b = 1 for 1 m safety depth (beginning of blue coloring) (unit equal to that set by a)
// c = 0 for pristine Navionics charts, 1 for Sonar Charts
//
// TRANSPARENT parameter:
// FALSE for non-layer
// TRUE for layer
//
// transparent true/false
// ugc - garmin active captain
// layer - 0 Seachart, 1 Sonarchart
// du - unit 1 for depth in meters, 2 for depth in feet, 3 for fathoms
// sd - safe depth
// sa ?
//******************************************************************************
const
cReqParams = 'LAYERS=config_1_1_1&TRANSPARENT=TRUE&theme=0';
cReqParams = 'transparent=true&ugc=true&layer=1&du=1&sd=2&sa=false';
//******************************************************************************
const
cTTL = 24*60*60; // 24 hour
cTTL = 10*60; // 10 Minutes
function CheckTTL(const ATimeStamp: Integer): Boolean;
begin
@@ -25,7 +22,7 @@ end;
function GetNavToken: AnsiString;
var
VNavToken: AnsiString;
VNavTokensJson: AnsiString;
VTimeStamp: Integer;
VResponseCode: Cardinal;
VResponseHeader, VResponseData: AnsiString;
@@ -36,15 +33,15 @@ begin
Global.Lock;
try
if Global.Exists(0) and Global.Exists(1) then begin
VNavToken := Global.GetVar(0);
VNavTokensJson := Global.GetVar(0);
VTimeStamp := Global.GetVar(1);
if (VNavToken <> '') and (VTimeStamp <> 0) and CheckTTL(VTimeStamp) then begin
Result := VNavToken;
if (VNavTokensJson <> '') and (VTimeStamp <> 0) and CheckTTL(VTimeStamp) then begin
Result := VNavTokensJson;
end;
end;
if (Result = '') and Assigned(Downloader) then begin
VRequestUrl := 'https://tile1.navionics.com/tile/get_key/Navionics_webapi_04041/maps.garmin.com';
if (Result = '') and Assigned(Downloader) then begin
VRequestUrl := 'https://maps.garmin.com/marine/api/getNavionicsTokens';
VRequestHeader := 'Origin: https://maps.garmin.com' + #13#10 + 'Referer: https://maps.garmin.com/';
VResponseHeader := '';
VResponseData := '';
@@ -64,11 +61,18 @@ end;
//******************************************************************************
var
VBuf : AnsiString;
VNavToken: AnsiString;
VNavBearer: AnsiString;
begin
VNavToken := GetNavToken;
VBuf := GetNavToken;
VNavToken := RegExprGetMatchSubStr(VBuf, '"configuration_token":"(.*)"', 1);
VNavBearer := RegExprGetMatchSubStr(VBuf, '"access_token":"(.*)",', 1);
if VNavToken <> '' then begin
ResultURL := TemplateToUrl(GetURLBase) + '?' + cReqParams + '&' + 'navtoken=' + VNavToken;
ResultURL := TemplateToUrl(GetURLBase) + '?' + 'config=' + VNavToken + '&' + cReqParams;
RequestHead:= 'Referer: https://maps.garmin.com/' + #13#10 +
'Origin: https://maps.garmin.com' + #13#10 +
'Authorization: Bearer '+ VNavBearer;
end else begin
ResultURL := '';
end;


+ 1
- 2
Navionics/navionics.SonarChart.layer.zmp/params.txt Datei anzeigen

@@ -5,7 +5,7 @@ ParentSubMenu_ru=Водные карты
ParentSubMenu_uk=Водні карти
ParentSubMenu=Water maps
asLayer=1
DefURLBase=https://tile{s}.navionics.com/tile/{z}/{x}/{y}
DefURLBase=https://tile{s}.navionics.com/viewer/api/v1/tile/{z}/{x}/{y}
ServerNames=1,2,3,4,5
NameInCache=navionics_sonarchart_layer
Ext=.png
@@ -14,4 +14,3 @@ projection=1
sradiusa=6378137
sradiusb=6378137
IsUseDownloaderInScript=1
RequestHead=Referer: https://maps.garmin.com/

+ 23
- 19
Navionics/navionics.SonarChart.zmp/GetUrlScript.txt Datei anzeigen

@@ -1,22 +1,19 @@
//******************************************************************************
// LAYERS parameter: config_a_b_c
// a = 1 for depth in meters, 2 for depth in feet, 3 for fathoms
// b = 1 for 1 m safety depth (beginning of blue coloring) (unit equal to that set by a)
// c = 0 for pristine Navionics charts, 1 for Sonar Charts
//
// TRANSPARENT parameter:
// FALSE for non-layer
// TRUE for layer
//
// transparent true/false
// ugc - garmin active captain
// layer - 0 Seachart, 1 Sonarchart
// du - unit 1 for depth in meters, 2 for depth in feet, 3 for fathoms
// sd - safe depth
// sa ?
//******************************************************************************
const
cReqParams = 'LAYERS=config_1_1_1&TRANSPARENT=FALSE&theme=0';
cReqParams = 'transparent=false&ugc=true&layer=1&du=1&sd=2&sa=false';
//******************************************************************************
const
cTTL = 24*60*60; // 24 hour
cTTL = 10*60; // 10 Minutes
function CheckTTL(const ATimeStamp: Integer): Boolean;
begin
@@ -25,7 +22,7 @@ end;
function GetNavToken: AnsiString;
var
VNavToken: AnsiString;
VNavTokensJson: AnsiString;
VTimeStamp: Integer;
VResponseCode: Cardinal;
VResponseHeader, VResponseData: AnsiString;
@@ -36,15 +33,15 @@ begin
Global.Lock;
try
if Global.Exists(0) and Global.Exists(1) then begin
VNavToken := Global.GetVar(0);
VNavTokensJson := Global.GetVar(0);
VTimeStamp := Global.GetVar(1);
if (VNavToken <> '') and (VTimeStamp <> 0) and CheckTTL(VTimeStamp) then begin
Result := VNavToken;
if (VNavTokensJson <> '') and (VTimeStamp <> 0) and CheckTTL(VTimeStamp) then begin
Result := VNavTokensJson;
end;
end;
if (Result = '') and Assigned(Downloader) then begin
VRequestUrl := 'https://tile1.navionics.com/tile/get_key/Navionics_webapi_04041/maps.garmin.com';
if (Result = '') and Assigned(Downloader) then begin
VRequestUrl := 'https://maps.garmin.com/marine/api/getNavionicsTokens';
VRequestHeader := 'Origin: https://maps.garmin.com' + #13#10 + 'Referer: https://maps.garmin.com/';
VResponseHeader := '';
VResponseData := '';
@@ -64,11 +61,18 @@ end;
//******************************************************************************
var
VBuf : AnsiString;
VNavToken: AnsiString;
VNavBearer: AnsiString;
begin
VNavToken := GetNavToken;
VBuf := GetNavToken;
VNavToken := RegExprGetMatchSubStr(VBuf, '"configuration_token":"(.*)"', 1);
VNavBearer := RegExprGetMatchSubStr(VBuf, '"access_token":"(.*)",', 1);
if VNavToken <> '' then begin
ResultURL := TemplateToUrl(GetURLBase) + '?' + cReqParams + '&' + 'navtoken=' + VNavToken;
ResultURL := TemplateToUrl(GetURLBase) + '?' + 'config=' + VNavToken + '&' + cReqParams;
RequestHead:= 'Referer: https://maps.garmin.com/' + #13#10 +
'Origin: https://maps.garmin.com' + #13#10 +
'Authorization: Bearer '+ VNavBearer;
end else begin
ResultURL := '';
end;


+ 1
- 2
Navionics/navionics.SonarChart.zmp/params.txt Datei anzeigen

@@ -4,7 +4,7 @@ name=Navionics SonarChart(TM)
ParentSubMenu_ru=Водные карты
ParentSubMenu_uk=Водні карти
ParentSubMenu=Water maps
DefURLBase=https://tile{s}.navionics.com/tile/{z}/{x}/{y}
DefURLBase=https://tile{s}.navionics.com/viewer/api/v1/tile/{z}/{x}/{y}
ServerNames=1,2,3,4,5
NameInCache=navionics_sonarchart
Ext=.png
@@ -13,4 +13,3 @@ projection=1
sradiusa=6378137
sradiusb=6378137
IsUseDownloaderInScript=1
RequestHead=Referer: https://maps.garmin.com/

+ 23
- 19
Navionics/navionics.layer.zmp/GetUrlScript.txt Datei anzeigen

@@ -1,22 +1,19 @@
//******************************************************************************
// LAYERS parameter: config_a_b_c
// a = 1 for depth in meters, 2 for depth in feet, 3 for fathoms
// b = 1 for 1 m safety depth (beginning of blue coloring) (unit equal to that set by a)
// c = 0 for pristine Navionics charts, 1 for Sonar Charts
//
// TRANSPARENT parameter:
// FALSE for non-layer
// TRUE for layer
//
// transparent true/false
// ugc - garmin active captain
// layer - 0 Seachart, 1 Sonarchart
// du - unit 1 for depth in meters, 2 for depth in feet, 3 for fathoms
// sd - safe depth
// sa ?
//******************************************************************************
const
cReqParams = 'LAYERS=config_1_1_0&TRANSPARENT=TRUE&theme=0';
cReqParams = 'transparent=true&ugc=true&layer=0&du=1&sd=2&sa=false';
//******************************************************************************
const
cTTL = 24*60*60; // 24 hour
cTTL = 10*60; // 10 Minutes
function CheckTTL(const ATimeStamp: Integer): Boolean;
begin
@@ -25,7 +22,7 @@ end;
function GetNavToken: AnsiString;
var
VNavToken: AnsiString;
VNavTokensJson: AnsiString;
VTimeStamp: Integer;
VResponseCode: Cardinal;
VResponseHeader, VResponseData: AnsiString;
@@ -36,15 +33,15 @@ begin
Global.Lock;
try
if Global.Exists(0) and Global.Exists(1) then begin
VNavToken := Global.GetVar(0);
VNavTokensJson := Global.GetVar(0);
VTimeStamp := Global.GetVar(1);
if (VNavToken <> '') and (VTimeStamp <> 0) and CheckTTL(VTimeStamp) then begin
Result := VNavToken;
if (VNavTokensJson <> '') and (VTimeStamp <> 0) and CheckTTL(VTimeStamp) then begin
Result := VNavTokensJson;
end;
end;
if (Result = '') and Assigned(Downloader) then begin
VRequestUrl := 'https://tile1.navionics.com/tile/get_key/Navionics_webapi_04041/maps.garmin.com';
if (Result = '') and Assigned(Downloader) then begin
VRequestUrl := 'https://maps.garmin.com/marine/api/getNavionicsTokens';
VRequestHeader := 'Origin: https://maps.garmin.com' + #13#10 + 'Referer: https://maps.garmin.com/';
VResponseHeader := '';
VResponseData := '';
@@ -64,11 +61,18 @@ end;
//******************************************************************************
var
VBuf : AnsiString;
VNavToken: AnsiString;
VNavBearer: AnsiString;
begin
VNavToken := GetNavToken;
VBuf := GetNavToken;
VNavToken := RegExprGetMatchSubStr(VBuf, '"configuration_token":"(.*)"', 1);
VNavBearer := RegExprGetMatchSubStr(VBuf, '"access_token":"(.*)",', 1);
if VNavToken <> '' then begin
ResultURL := TemplateToUrl(GetURLBase) + '?' + cReqParams + '&' + 'navtoken=' + VNavToken;
ResultURL := TemplateToUrl(GetURLBase) + '?' + 'config=' + VNavToken + '&' + cReqParams;
RequestHead:= 'Referer: https://maps.garmin.com/' + #13#10 +
'Origin: https://maps.garmin.com' + #13#10 +
'Authorization: Bearer '+ VNavBearer;
end else begin
ResultURL := '';
end;


+ 1
- 2
Navionics/navionics.layer.zmp/params.txt Datei anzeigen

@@ -5,7 +5,7 @@ ParentSubMenu_uk=Водні карти
ParentSubMenu=Water maps
name=Navionics Marine Charts
asLayer=1
DefURLBase=https://tile{s}.navionics.com/tile/{z}/{x}/{y}
DefURLBase=https://tile{s}.navionics.com/viewer/api/v1/tile/{z}/{x}/{y}
ServerNames=1,2,3,4,5
NameInCache=navionics_layer
Ext=.png
@@ -14,4 +14,3 @@ projection=1
sradiusa=6378137
sradiusb=6378137
IsUseDownloaderInScript=1
RequestHead=Referer: https://maps.garmin.com/

+ 23
- 19
Navionics/navionics.zmp/GetUrlScript.txt Datei anzeigen

@@ -1,22 +1,19 @@
//******************************************************************************
// LAYERS parameter: config_a_b_c
// a = 1 for depth in meters, 2 for depth in feet, 3 for fathoms
// b = 1 for 1 m safety depth (beginning of blue coloring) (unit equal to that set by a)
// c = 0 for pristine Navionics charts, 1 for Sonar Charts
//
// TRANSPARENT parameter:
// FALSE for non-layer
// TRUE for layer
//
// transparent true/false
// ugc - garmin active captain
// layer - 0 Seachart, 1 Sonarchart
// du - unit 1 for depth in meters, 2 for depth in feet, 3 for fathoms
// sd - safe depth
// sa ?
//******************************************************************************
const
cReqParams = 'LAYERS=config_1_1_0&TRANSPARENT=FALSE&theme=0';
cReqParams = 'transparent=false&ugc=true&layer=0&du=1&sd=2&sa=false';
//******************************************************************************
const
cTTL = 24*60*60; // 24 hour
cTTL = 10*60; // 10 Minutes
function CheckTTL(const ATimeStamp: Integer): Boolean;
begin
@@ -25,7 +22,7 @@ end;
function GetNavToken: AnsiString;
var
VNavToken: AnsiString;
VNavTokensJson: AnsiString;
VTimeStamp: Integer;
VResponseCode: Cardinal;
VResponseHeader, VResponseData: AnsiString;
@@ -36,15 +33,15 @@ begin
Global.Lock;
try
if Global.Exists(0) and Global.Exists(1) then begin
VNavToken := Global.GetVar(0);
VNavTokensJson := Global.GetVar(0);
VTimeStamp := Global.GetVar(1);
if (VNavToken <> '') and (VTimeStamp <> 0) and CheckTTL(VTimeStamp) then begin
Result := VNavToken;
if (VNavTokensJson <> '') and (VTimeStamp <> 0) and CheckTTL(VTimeStamp) then begin
Result := VNavTokensJson;
end;
end;
if (Result = '') and Assigned(Downloader) then begin
VRequestUrl := 'https://tile1.navionics.com/tile/get_key/Navionics_webapi_04041/maps.garmin.com';
if (Result = '') and Assigned(Downloader) then begin
VRequestUrl := 'https://maps.garmin.com/marine/api/getNavionicsTokens';
VRequestHeader := 'Origin: https://maps.garmin.com' + #13#10 + 'Referer: https://maps.garmin.com/';
VResponseHeader := '';
VResponseData := '';
@@ -64,11 +61,18 @@ end;
//******************************************************************************
var
VBuf : AnsiString;
VNavToken: AnsiString;
VNavBearer: AnsiString;
begin
VNavToken := GetNavToken;
VBuf := GetNavToken;
VNavToken := RegExprGetMatchSubStr(VBuf, '"configuration_token":"(.*)"', 1);
VNavBearer := RegExprGetMatchSubStr(VBuf, '"access_token":"(.*)",', 1);
if VNavToken <> '' then begin
ResultURL := TemplateToUrl(GetURLBase) + '?' + cReqParams + '&' + 'navtoken=' + VNavToken;
ResultURL := TemplateToUrl(GetURLBase) + '?' + 'config=' + VNavToken + '&' + cReqParams;
RequestHead:= 'Referer: https://maps.garmin.com/' + #13#10 +
'Origin: https://maps.garmin.com' + #13#10 +
'Authorization: Bearer '+ VNavBearer;
end else begin
ResultURL := '';
end;


+ 1
- 2
Navionics/navionics.zmp/params.txt Datei anzeigen

@@ -4,7 +4,7 @@ name=Navionics Marine Charts
ParentSubMenu_ru=Водные карты
ParentSubMenu_uk=Водні карти
ParentSubMenu=Water maps
DefURLBase=https://tile{s}.navionics.com/tile/{z}/{x}/{y}
DefURLBase=https://tile{s}.navionics.com/viewer/api/v1/tile/{z}/{x}/{y}
ServerNames=1,2,3,4,5
NameInCache=navionics
Ext=.png
@@ -13,4 +13,3 @@ projection=1
sradiusa=6378137
sradiusb=6378137
IsUseDownloaderInScript=1
RequestHead=Referer: https://maps.garmin.com/

+ 2
- 1
Update.cmd Datei anzeigen

@@ -9,7 +9,8 @@ if not "%1"=="run" (
)
set maps_dir=sas.maps
set maps_url="http://parasite.kicks-ass.org:3000/sasgis/maps.git"
rem set maps_url="http://parasite.kicks-ass.org:3000/sasgis/maps.git"
set maps_url="https://8e3ad20e4972e58cb91cc7556fc938b45b078544@codeberg.org/sasgis/maps.git"
git version


+ 4
- 1
readme.md Datei anzeigen

@@ -12,7 +12,10 @@
**Ручной способ:**
1. Удалить старую папку с картами `%SASPlanet%/Maps/sas.maps/`
2. Скачать zip архив с новыми картами по этой ссылке: [master.zip](http://parasite.kicks-ass.org:3000/sasgis/maps/archive/master.zip)
2. Скачать архив с новыми картами:
- запустить `GetMaps.cmd` (для Windows 10 и выше, с предустановленным curl)
- [sas.maps.7z](https://disk.yandex.ru/d/bFkhuA_HeOwtlg) *(пароль: sasgis)*
- [master.zip](http://parasite.kicks-ass.org:3000/sasgis/maps/archive/master.zip)
3. Распаковать архив в папку `%SASPlanet%/Maps/`
4. Внутри папки `%SASPlanet%/Maps/` переимановть папку `maps` в `sas.maps`


Laden…
Abbrechen
Speichern