SASGIS

Веб-картография и навигация

SAS.Wiki

Веб-картография и навигация

Инструменты пользователя

Инструменты сайта


описание_паскаль_скриптов

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

описание_паскаль_скриптов [05/04/2015 16:45]
zed
описание_паскаль_скриптов [08/02/2021 18:25] (текущий)
radioxoma [Использование автозамены плейсхолдеров]
Строка 25: Строка 25:
 Интерфейсные переменные,​ доступные в скриптах*:​ Интерфейсные переменные,​ доступные в скриптах*:​
   * **Downloader** (ISimpleHttpDownloader) — выполнение HTTP запросов внутри скрипта. Доступно только при включённой опции **IsUseDownloaderInScript** в params.txt   * **Downloader** (ISimpleHttpDownloader) — выполнение HTTP запросов внутри скрипта. Доступно только при включённой опции **IsUseDownloaderInScript** в params.txt
-  * **DefProjConverter** (IProjConverter) — конвертер координат в проекции,​ определённой в params.txt (параметр **Proj4Args**). Доступна только при наличии **proj480.dll** +  * **DefProjConverter** (IProjConverter) — конвертер координат в проекции,​ определённой в params.txt (параметр **Proj4Args**). Доступна только при наличии **proj.dll** 
-  * **ProjFactory** (IProjConverterFactory) — фабрика,​ для создания конвертеров координат различных проекций. Доступна только при наличии **proj480.dll**+  * **ProjFactory** (IProjConverterFactory) — фабрика,​ для создания конвертеров координат различных проекций. Доступна только при наличии **proj.dll**
   * **Converter** (ICoordConverter) — набор функций для работы с координатами в текущей проекции   * **Converter** (ICoordConverter) — набор функций для работы с координатами в текущей проекции
 Описание интерфейсов и примеры их использования см. ниже. Описание интерфейсов и примеры их использования см. ниже.
Строка 126: Строка 126:
   * function **Base64UrlEncode**(const Data: AnsiString):​ AnsiString;   * function **Base64UrlEncode**(const Data: AnsiString):​ AnsiString;
   * function **Base64Decode**(const Data: AnsiString):​ AnsiString;   * function **Base64Decode**(const Data: AnsiString):​ AnsiString;
 +  * function **TemplateToUrl**(const ATmpl: String): String;
  
 ===== Выполнение HTTP запросов из скрипта ===== ===== Выполнение HTTP запросов из скрипта =====
Строка 172: Строка 173:
 ===== Работа с хитрыми системами координат ===== ===== Работа с хитрыми системами координат =====
  
-Если в папке с программой присутствует ​proj480.dll, то в скриптах будут доступны такие переменные+Если в папке с программой присутствует ​proj.dll, то в скриптах будут доступны такие переменные
   * переменная **DefProjConverter** с объектом типа:   * переменная **DefProjConverter** с объектом типа:
 <code delphi> <code delphi>
Строка 251: Строка 252:
     // производим расчёты и генерируем url     // производим расчёты и генерируем url
   end else begin   end else begin
-    ​Result ​:= '';​+    ​ResultURL ​:= '';​
   end;   end;
 +end.
 +</​code>​
 +
 +
 +===== Использование автозамены плейсхолдеров =====
 +
 +Если файла **GetUrlScript.txt** нет или он пуст (в том числе не содержит ни пробелов,​ ни переводов строк),​ то будет выполнен скрипт,​ который автоматически заменяет плейсхолдеры найденные в **GetURLBase**. Именно в этом формате он применяется при [[простой_пример_с_плейсхолдерами |упрощенном добавлении карт]]). Однако,​ если вам потребуется,​ то вы можете использовать эту функцию в собственных скриптах.
 +
 +<code delphi>
 +begin
 +  ResultUrl := TemplateToUrl(GetURLBase);​
 end. end.
 </​code>​ </​code>​