|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
|
||||
Регистрация: 10.08.2013
Сообщений: 11,052
|
добавьте princ в конце
Код:
|
|||
|
||||
Регистрация: 17.01.2014
Сообщений: 97
|
Цитата:
Код:
|
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,052
|
|
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,850
|
(setq l2 (list a (car l1) (cadr l1) d))
----- добавлено через 28 сек. ----- Между прочим, команда _.list - штатная команда AutoCAD. Советую выбрать другое название
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,850
|
Советую поэкспериментировать с cons / append. Ну и list туда же.
Хотя зачем получать слабоструктурированный или вообще неструктурированный список - для меня тайна. ----- добавлено через ~4 мин. ----- Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 19.11.2014
Сообщений: 2,435
|
Подскажите, как в LISP обрабатываются ошибки? Например есть такой код:
Код:
|
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,850
|
Код:
А вообще говоря, проще сначала прочитать файл, закрыть - и только потом выполнять какие-либо действия с полученными данными.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 19.11.2014
Сообщений: 2,435
|
Кулик Алексей aka kpblc, а где в этой конструкции вписывается инструкция по закрытию файла при ошибке?
----- добавлено через ~32 мин. ----- А, похоже понял vl-catch-all-apply ловит ошибку, программа при этом продолжает работу и доходит до функции close? |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,850
|
Именно.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 19.11.2014
Сообщений: 2,435
|
Мне здесь однажды написали лисп, который позволял подсчитать общую массу по строкам спецификаций, но я кое-что отредактировал и не пойму пока почему он не работает больше.
Вот как работал лисп. В чертеже есть набор блоков с атрибутами, которые (блоки) в своем имени содержат текст "спецстр" (есть два варианта блоков с именами "спецстр" и "спецстризд") и каждый блок содержит атрибуты "КОЛ" и "МАССА". Активируя лисп я выбирал нужные мне экземпляры блоков (по сути это строки спецификации) и программа автоматически перемножала по каждой строке значения в атрибутах "КОЛ" и "МАССА", выдавая в итоге сумму по всем строкам. Сейчас я изменил структуру блоков, представляющих собой строки спецификации, но в них по прежнему остались атрибуты "КОЛ" и "МАССА", только теперь они занимают другую относительную позицию в списке атрибутов блока. Если раньше у них были позиции 4 и 5, то теперь 7 и 8. Я смотрю сам лисп и не вижу, чтобы их относительная позиция в перечне атрибутов как-то учитывалась. Как я понимаю лисп находил нужные данные по имени атрибута. Или все ж нет? Вот исходный лисп: Код:
|
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,850
|
Блоки случайно не стали динамическими?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 19.11.2014
Сообщений: 2,435
|
Нет, в блоках раньше было порядка 20 атрибутов, после переделки их чуть больше стало, кое-каким атрибутам дал новые имена, изменил их порядок, но остались два атрибута "КОЛ" и "МАССА". Результат работы лиспа - сообщение "Общая масса: 0,00".
|
|||
|
||||
начинающий инженер-гидротехник Регистрация: 18.04.2010
Санкт-Петербург
Сообщений: 893
|
|
|||
|
||||
Регистрация: 08.02.2021
Сообщений: 5
|
Принимайте в свои ряды.
Только познаю азы LISPa А может разбирали похожий пример. Нужно выбрать объекты (текст) в чертеже, в тексте найти цифры, а далее выполнить конвертацию этих цифр с округлением. Например, имею текст "Высота 1000м", а хочу результат "Высота 1000м/3381' ". Таких объектов может быть несколько в чертеже с разными словами. Думал сделать чтобы сразу с группой можно было работать, т.е в начале эти объекты "натыкать". Заранее спасибо всем откликнувшимся. |
|||
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
LISP. Вставка в таблицу поля, соотвествующего площади примитива | Profan | Готовые программы | 272 | 06.06.2021 23:12 |
Сейсмозащита и сейсмоизоляция существующих, построенных зд. | IANationalInformAgentstvo | Прочее. Архитектура и строительство | 216 | 20.01.2015 16:51 |
Мониторы LCD CRT | Разное | 94 | 17.06.2008 10:51 | |
ЮМОР 2006 =) | Perezz!! | Разное | 1122 | 04.01.2007 00:46 |