Skip To Content

esri_coordsys_DatumTransformations_set (AutoLISP)

Эта функция задает преобразование датума в текущем чертеже. Если преобразование датума (из исходной в конечную систему координат) уже существует, оно перезаписывается. Функция вернет набор преобразований датума.

Синтаксис

(esri_coordsys_DatumTransformations_set FromCS ToCS transformationStep_properties)

Аргументы

  • FromCS | строка | обязательно | корректный WKID (общепринятый идентификационный номер системы координат) или WKT системы координат Esri в виде строки.
  • ToCS | строка | обязательно | корректный WKID (общепринятый идентификационный номер системы координат) или WKT системы координат Esri в виде строки.
  • transformationStep_properties | связанный список | обязательно | Список шагов преобразования в виде связанных списков разделенных точками пар свойств шагов, как определено в следующей таблице:

    Связанная надписьТип значенияОписание значенияОбязательные или дополнительные
    "Direction"

    string

    Направление шага, которое является либо "Forward", либо "Reverse", в котором должен быть применен шаг преобразования.

    required

    "Step"

    string

    Стандартный идентификатор (WKID) или стандартный текст (WKT) шага преобразования.

    required

Использование

При создании составного преобразования датума порядок выполнения каждого шага должен быть правильным. Так, в примере 2, приведенном ниже, 108355 является первым шагом, а 108282 — вторым и заключительным шагом. Прямое или обратное направление преобразования должно быть указано в виде строки "Forward" или "Reverse" без учета регистра.

ArcGIS for AutoCAD не проверяет предоставленные шаги преобразования. Если какая-либо часть установленного метода неверна или применена в неправильном порядке, то слои в ArcGIS for AutoCAD могут быть нарисованы неправильно.

Примечание:

При создании стандартного текста (WKT) в качестве строкового аргумента AutoLISP строка должна содержать соответствующие зарезервированные символы, чтобы включить необходимые кавычки в текстовую строку. Ниже приведены примеры:

Система координат:

"PROJCS[\"NAD_1983_HARN_StatePlane_Florida_West_FIPS_0902_Feet\",GEOGCS[\"GCS_North_American_1983_HARN\",DATUM[\"D_North_American_1983_HARN\",SPHEROID[\"GRS_1980\",6378137.0,298.257222101]],PRIMEM[\"Greenwich\",0.0],UNIT[\"Degree\",0.0174532925199433]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"False_Easting\",656166.6666666665],PARAMETER[\"False_Northing\",0.0],PARAMETER[\"Central_Meridian\",-82.0],PARAMETER[\"Scale_Factor\",0.9999411764705882],PARAMETER[\"Latitude_Of_Origin\",24.33333333333333],UNIT[\"Foot_US\",0.3048006096012192],AUTHORITY[\"EPSG\",2882]]"

Преобразование датума

"GEOGTRAN[\"WGS_1984_(ITRF00)_To_NAD_1983\",GEOGCS[\"GCS_WGS_1984\",DATUM[\"D_WGS_1984\",SPHEROID[\"WGS_1984\",6378137.0,298.257223563]],PRIMEM[\"Greenwich\",0.0],UNIT[\"Degree\",0.0174532925199433]],GEOGCS[\"GCS_North_American_1983\",DATUM[\"D_North_American_1983\",SPHEROID[\"GRS_1980\",6378137.0,298.257222101]],PRIMEM[\"Greenwich\",0.0],UNIT[\"Degree\",0.0174532925199433]],METHOD[\"Coordinate_Frame\"],PARAMETER[\"X_Axis_Translation\",0.9956],PARAMETER[\"Y_Axis_Translation\",-1.9013],PARAMETER[\"Z_Axis_Translation\",-0.5215],PARAMETER[\"X_Axis_Rotation\",0.025915],PARAMETER[\"Y_Axis_Rotation\",0.009426],PARAMETER[\"Z_Axis_Rotation\",0.011599],PARAMETER[\"Scale_Difference\",0.00062],OPERATIONACCURACY[0.1]]"

Пример использования 1

Пытается задать одноступенчатое преобразование датума в текущем чертеже между исходной и конечной системами координат, обозначенными WKID. Список шагов включает в себя один шаг преобразования датума, который ссылается на WKID и должен применяться в прямом порядке.

(esri_coordsys_DatumTransformations_set 
  "2882" "3857" 
   (list 
     (list (cons "Direction" "Forward") (cons "Step" 1580))
   )  
)

Пример использования результата 1

Задает одноступенчатое преобразование датума в текущем чертеже и возвращает полное определение преобразования датума в виде связанного списка.

(("From" . "2882") ("To" . "3857") ("Transformation" ((("Direction" . "Forward") ("Step" . "1580")))))

Пример использования 2

Пытается задать составное преобразование датума в текущем чертеже между исходной и конечной системами координат, обозначаемыми WKID (стандартный идентификационный номер). Шаги преобразования датума, на которые ссылаются строковые значения WKID, предназначены для применения в обратном порядке.

(esri_coordsys_DatumTransformations_set 
  "6425" "3857" 
  (list 
    (list (cons "Direction" "Reverse") (cons "Step" 108355))
    (list (cons "Direction" "Reverse") (cons "Step" 108282))
  )
)

Пример использования результата 2

Устанавливает двухэтапное составное преобразование датума в текущем чертеже и возвращает полное определение преобразования датума в виде связанного списка.

(("From" . "6425") ("To" . "3857") ("Transformation" ((("Direction" . "Reverse") ("Step" . "108355")) (("Direction" . "Reverse") ("Step" . "108282")))))

Возвращаемые значения

  • Задается преобразование датума, а полное определение преобразования датума возвращается в виде связанного списка.
  • В случае неудачи применения функции, возвращается список с первым значением nil, а затем связанный список, содержащий значение ключа "Error" и соответствующее сообщение об ошибке в виде строки: (nil ("Error" . "<message>")).

Не удалось возвратить значения

Неудачное возвращение значения может произойти по любой из следующих причин:

  • (nil ("Error" . "Failed"))

    Предоставленный WKID или WKT некорректен.

  • (nil ("Error" . "This document contains existing web feature layers. Datum transformations cannot be modified when web feature layers present."))

    Преобразования датума нельзя установить или изменить, если чертеж содержит векторные веб-слои.

  • (nil ("Error" . "Missing required argument."))

    Не указан один или несколько обязательных аргументов.