04/12/2013
Передача списка значений в ObjectARX из Lisp приводит к ошибке
Вопрос:
Передача списка значений в ObjectARX-функцию из Lisp приводит к ошибкам в том случае, когда некоторые значения целых чисел (Пример: 5011, 25111) являются частью списка. Как этого избежать?
Ответ:
Некоторые числовые значения интерпретируются как DXF-коды, что и приводит к исключениям.
Простейший способ обойти эту ситуацию – передавать вместо целых чисел плавающие, как показано ниже:
(myLispCallableTestFunc '(5011.0 2 3 4))
Другой способ – передавать целые числа как отдельные списки. Эти списки можно будет объединить уже внутри ObjectARX-функции, которая вызывается из LISP. Пример:
(myLispCallableTestFunc '((5011) (2) (3) (4)))
Примечание переводчика: Это всё в полной мере касается передаче аргументов из LISP в .NET-функцию.
Обсуждение: http://adn-cis.org/forum/index.php?topic=373
Опубликовано 04.12.2013