Posted  by  admin

Autocad Vba Polyline Bulge

Autocad Vba Polyline Bulge Rating: 6,2/10 2973 votes

AutoCAD, Системный реестр Системы Windows, и Приложения ObjectArx. Модификация Системного. The polyline has no elevation, and is. // explicitly set as closed. The polyline is simple. // that is, not curve fit or a spline. By default, the. // widths are all 0.0 and there are no bulge factors.

AutoCAD и AutoLisp FAQ от Reini Urban Резюме: AutoLISP - встроенный язык AutoCAD, общеизвестного CAD-пакета. Этот AutoLISP FAQ распространяется в comp.cad.autocad, alt.cad.autocad еженедельно. Ключевые слова: FAQ, AutoLISP, AutoCAD URL: Версия: 1.12 Последние изменения: 3 марта 1998 Добро пожаловать в comp.cad.autocad AutoLISP FAQ! От Reini Urban AutoLISP - встроенный язык AutoCAD, общеизвестного CAD-пакета. Этот AutoLISP FAQ зарегистрирован в comp.cad.autocad, alt.cad.autocad и распространяется еженедельно. Существует еще один AutoCAD FAQ - на но он не зарегистрирован в Comp.cad.autocad. Содержание данного FAQ относится к всем версиям AutoLISP начиная с версии для AutoCAD R10, включая Visual Lisp и программы третьесторонних разработчиков ACOMP и Vital Lisp.

Это - 1/2 часть AutoLISP FAQ v1.12, который состоит из:. AutoLISP FAQ (1/2 части) - Общий FAQ. AutoLISP FAQ (2/2 части) - примеры, код Изменения, от последней предыдущей версии заключены в Оглавление: Часть 1: Общая Часть 2: Примеры, код. AutoLISP будет определенно обеспечиваться в будущих версиях AutoCAD. VB был представлен, чтобы упростить Автоматизацию делопроизводства: ACAD Excel/Access. Все языки имеют преимущества и недостатки. VB, кажется, более графический а AutoLISP более логический.

Объектная концепция VBA, кажется, проще, для изучения, но Вы не можете выполнять в нем команды подобно AutoLISP. Новый VBA (в R14.01) чрезвычайно быстр. Также 5.2 С тех пор Autodesk приобретал исходный текст Vital LISP 3.2, предварительная версия Visual Lisp уже доступна для свободного копирования на Некоторые из больших мест AutoCAD shareware с LISP: CADalog - AutoCAD Shareware Clearinghouse (Майк Кларк) с поиском Rolling Stock Software (Дэвид Винот) PIRS Online (tm) Они специализированы на связанное с AuotCAD программное обеспечение и имеют очень хорошие AutoLISP-коллекции. Другие профессиональные AutoLisp shareware сайты: Xarch AutoCAD Info & Tools (Reini Urban) (с поиском) CADENCE magazine (Peter Sheerin) журнала CADalyst (собраны ' Горячие Советы Гарри ' Art Liddle),с поиском AutoCAD Технический Журнала (Peter Sheerin) CADshack (Jeff Foster) SimTel - Coast To Coast - Архив Bob Jones Henry Francis Оуэн Венгерд Desi Moreno Доктор Лисп Утилитиес (Александр Медведев) UCCB AutoCAD и AutoLISP страница (Пауль Стандинг) Theo L.A. Groenenberg На находятся документы от Autodesk (ответы на технические вопросы. Их FAQ) Не имеется никакого архива comp.cad.autocad, но существуют некоторые поисковые машины, которые сохраняют статьи из новостей. В частность: - самый большой архив новостей непосредственно с Индекс к Web-ресурсам Некоторые специфические новости также сохранены на До AutoCAD R12 SDK было доступно непосредственно от Autodesk.

SDK1-2 поставлялись с международной версией AutoCAD R12 свободно. Эти SDK включили много ADS и AutoLISP исходного текста и библиотек. С AutoCAD R13 Autodesk обеспечивает специальную сеть разработчиков, сравнимую Микрософт, ADN.

Новый SDK совместим со старым SDK, но более направленн на ADS и ARX - разработчиков. Войдите в контакт с вашим самым близким представителем Autodesk для получения. Некоторые файлы - на В США, ADN членство стоит $ 495.00 ежегодно.

'AutoLISP Reference Manual' от Autodesk Press. До AutoCAD R12 существовал отдельный AutoLISP-Справочник. Затем AutoLISP стал частью Руководства Настройки для R13. С R14 это руководство скомпилировано как Winhelp. 'Maximizing AutoLISP' от Rusty Gesner, Tony и Mark Middlebrook, Tony Tanzillo.

Информация на Большинство примеров, которые напечатаны в журналах или размещены на различных сайтах Web написаны ужасно, делая процесс обучения AutoLISP даже тяжелее для новичков. LISP-код должен легко читаться, во всяком случае из-за его краткости и бесчисленного числа круглых скобок.

Автоматические форматировщики, или так называемый beautifiers (см. 6.3) автоматически форматируют код согласно стандарту. На R12 CD-ROM в SDK2 ACG.DOC или на находится превосходна документация Autodesk относительно кодирования, комментирования и международных стандартов для обеспечения удобства читаемости LISP-кода.

Наиболее важные пункты:. Комментируйте ваш код, используя ';;; ' в 1 строке, ';; ' внутри кода ';' для конечных комментариев (в строке 39).

Следуйте за стандартами выравнивания что дает автоматическим форматировщикам лучше записать структурный код, чтобы он стал более читаемым. Особенно это важно для SETQ, DEFUN, IF, COND, PROGN. Попытайтесь избежать использовать глобальные переменные. Если Вы используете их (для эффективности), то пометьте их, поместив возле них сдово.GLOBAL. Не забудте описать ваши переменные (позади '/' в списке параметров DEFUN ). Только для целей отладки Вы можете их временно не определять.

Защита имен: С тех пор как AutoLISP не обеспечивает никакой защиты пространства имен, легко перезаписать системные функции. Используйте уникальные короткие префиксы по крайней мере, когда Вы публикуете или отдаете ваш код. Я использую UR - для функций и UR: для переменных. ADGE и Autodesk требует даже 4 префиксных символа.

Кроме этого ваши имена защищены от перезаписи другими функциями. Всегда располпгаете первым символ подчеркивания в любой строке (команде и опции) которые передаются в COMMAND и OSNAP. Имеются много коммерческих программ, которые не работают в международных версиях.

(command 'PEDIT' ss 'J') лучше чем (command 'PEDIT' ss 'J'). Не делайте слишком много SETQ: LISP был первоначально языком функций, без любых переменных. Имеются достаточно конструкций которые работают эффективно со списками без потребности немедленного сохранения значений в переменных. Пример кода 22.) Но для удобочитаемости и целей отладки Вы должны всегда устанавливать переменные.

В старом LISP было правило: Любая хорошая функция не дольше быть больше 6 строк. (LISP - второй по старости компьютерный язык, он изобретен Джоном McCarthy в MIT в 1958). Предпочтительно использовать CONS чем APPEND, три CONS, и один REVERSE лучше чем APPEND. Для приемов с конкатенированием (опущением nil) смотрите примеры: удаление в 11 или сравнение стиля в 23.1).

Используйте английские символы и комментарии. Не используйте T,MIN,MAX и LAST как переменные! Это функции системы!.

Vital Lisp Professional и Visual Lisp от Autodesk поддерживают IDE (это лучше),. ACOMP только для R10, свободный для копирования. Вы можете еще использовать его с R12 DOS, но вы будете иметь LISP-функции только для R10.

Ld, AutoLISP отладчик для R14, R13c4 и R12/DOS из Чешской республики (free) на См. ' 5 AutoLISP компиляторы ' Самая лучшая поддержка, которую Вы можете иметь для отладки - это запись вашего кода в хорошо разработанном, модульном стиле, выделяя различные задачи в отдельные функции и затем свободно использовать вложенные вызовы функций. Это позволит Вам использовать функцию TRACE что необходимо, чтобы обнаружить любые ошибки. Примеры:;;; Отладочнаые функции (defun break (s) (if.BREAK. (progn (princ 'BREAK (stop with ) nBREAK ')(princ s) (while (/= (setq s (getstring ' nBREAK ')) ') (print (eval (read s)))))));bugfix from v1.3! (defun dbg-print (s);accepts atoms and lists (if.DEBUG.

(if (listp s) (MAPCAR 'print s) (print s)))) (defun C:DEBUG (setq.DEBUG. (not.DEBUG.)));switch it on and off (defun C:BREAK (setq.BREAK. (not.BREAK.))) (defun CONT (setq.BREAK. nil));cont. Without any interruption Для использования примера см.: Kelvinate С помощью KELV.EXE (на R12 CD-ROM или на AutoLISP сайтах '1'). Как Де-kelvinate LISP с помощью pretty printer, см. Символьные имена будут искаженными, и комментарии потеряны.

Protect С помощью PROTECT.EXE (на R12 CD-ROM или на AutoLISP сайтах ' 1 ') Обратите внимание, что депротекторы существуют, и free. Kelvinate и Protect Сначала kelvinate, чтобы сделать текст нечитабельным, затем Protect. Convert 3.5 Shareware LISP En-/Decryptor от Maciej Lukasiewicz, Швеция. С помощью Convert зашифрованные файлы не могут быть расшифрованы другой программой, но сам Convert это может. ACOMP AutoLISP компилятор ACOMP.EXE, включен в R12 международную версию или доступен на AutoLISP-сайтах. Большее количество документации о ACOMP - на См.

Также Vital LISP Professional См. Также Lisp2C преобразователь LISP в C, для R12/R13 Dos/Win (Watcom, Metaware, MSVC Libs). Вы должны обладать таким компилятором C.

Visual Lisp от Autodesk См. Резюме: Серьезное шифрование теперь обеспечивается Autodesk, чтобы помочь профессиональным AutoLISP-разработчикам. Kelvinate делает, LISP файлы нечитабельными и загружающимис быстрее. Защищенные Protect Lisp-файлы могут быть легко расшифрованы. Другие - не расшифрованными. С помощью CONVERT -e$GUARD можно расшифровать Lisp-файлы, защищенные только с помощью Convert. Имеются три AutoLISP компиляторы, лучшие чем они могут появится в будущем (Allegro CL и Lispworks для Windows будет поддерживать ActiveX).

ACOMP, Vital Lisp и Visual Lisp от Autodesk, полученный из Vital Lisp 3.2 Acomp обеспечивался до R12 для только международных версий. Он - freeware, но не работает с R13, ни с R12/Win. Acomp производит. BI4 файлы и нуждается в специальном ACADL.EXP, обеспеченном как ACADLC.EXP См.

Свободные от лицензии загрузочные модули для R12/R13/R14 DOS/Windows/NT См. Имеется свободная доступная демонстрационная версия. Текущая версия - 3.2 R14 версия (ViLL 3 x) включает ActiveX (подобно VB) и поддержку реакторов См. Также и Vlisp находится в бете теперь и будет выпущен в начале лета 1998 года.

Очень маловероятно, что Basis Software продолжит разрабатывать Vital Lisp так как Visual Lisp - преемник Vital Lisp. Резюме: AutoLISP компиляторы нуждаются в системе поддержки выполнения (run-time). Вы не можете создавать автономные программы, хотя ViLL/vlisp создает автономный ARX. Исходный код зашифровывается.

Будущее версии AutoCAD будут поставляться с run-time системой для vlisp. Visual Lisp от Autodesk См. Vital LISP Lite Edition (только редактор) - за $ 50, Standard Edition (+ отладчик) - $ 350 и Professional Edition (+ компилятор, расширения) - $ 675. С Standard Edition вы имеете превосходное средство отладки и редактирования. LispPad Изящный Windows Lisp Редактор от Tony Tanzillo. Ранняя версия включена в книгу, Maximizing AutoCAD R14, Полная версия должна быть выпущена в первой четверти 1998 и будет объявлен в newsgroup.

LispLink Коммерческий AutoLISP Редактор. Visual LISP от WSSW Старый хороший Windows Lisp редактор. Версия 1.0 свободна. WCEDIT 2.02 Редактор для AutoCAD DOS R12, может вычислять Lisp код внутри редактора, свободный.

MultiEdit Pro 7 Это - дорогой программистский редактор для DOS и Windows. Он не обеспечивает проверку синтаксиса Lisp или формат исходного текста.

Дл короткого описания. Домашняя страница на CODEKEY Старый коммерческий DOS IDE, внутренний форматировщик исходного кода, протектор, депротектор, кельвинатор. Все еще доступный? ALLY 3.0 и CADET Shareware LISP Анализатор и Редактор. Pred freeware, маленький LISP редактор для DOS, который обеспечивает подсвечивание круглых скобок.

На Подобный редактор - ADE. Emacs для NT Огромный редактор и совершенно интересно узнать то что он написан и настроен на LISP. Свободный, для всех платформ. Проверьте LSPEDIT из xlisp-stat Простой Windows LISP редактор, который поддерживает соответствие круглой скобки и выравнивание кода. Проверьте Имеются другие но не настолько хорошие (ADE) но я не имею их описания. Средства проверки соответствия круглых скобок можно больше не использовать. Редакторы должны уметь это делать.

ALLY30.ZIP Lisp-проверочная программа общего пользования. Проверяет синтаксис и печатает статистику (древо функции). В 1.

lck21b.zip LCK LISP Checker 2. 1b (графический). рaran.zip Простой.

PARNCH.ZIP Простой Имеются также некоторые программы AutoLISP, которые считают круглые скобки. Внешние:. FMT202S.ZIP LISP, DCL и FRM форматер исходного текста.

Не проверен однако. LB.EXE Исходный текст предоставляется Autodesk в SDK2. Имеет проблемы с длинными строками и комментариями в новом стиле. PPRINT.LSP В SDK2, см., или.

Внутренние: Emacs, Visual Lisp, Vital LISP и Codekey обеспечиваются внутренним форматировщиками кода, насколько я это знаю. Не имеется почти никаких известных серьезных ошибок в AutoLISP.

Интерпретатор Autolisp непосредственно (ACADL.EXE/.EXP) работает несомненно хорошо. Некоторые ограничения основаны на принципах работы AutoCAD и Proteus(DCL).

Некоторые программы LISP-поддержки (к примеру DDMODIFY.LSP) часто дефектны. ENTGET используемый с LWPOLYLINE, HATCH (только r14) Координата Z (caddr (getval 10 ele)) - случайное число и часто вызывает ошибку с плавающей точкой, потому что может быть слишком маленьким или слишком большим. Часть 2, Раздел 23.1. ENTMAKE VERTEX от Тэрри Доцон (только r14) Проблема может происходить во время процесса использования (entmake), чтобы создать полилинии, Вы должны назначить уровень каждой из определений VERTEX (которые Autodesk сообщил нам), но Вы должны также назначить уровень к окончанию SEQEND. Отсутствие этого заставит SEQEND заканчиваться на текущем уровне, который может быть позже замороженный. Пытается перемещать этот фрагмент из геометрии затем вызовет EREGEN ошибку и крах в R14 (только).

Vba

ACADSTRLSORT: Странный порядок сортировки в Windows. Chars в Windows не сортируются в представлении ASCII! Windows: (acadstrlsort '(' -1' '+ 1')) - (' -1' '+1'), DOS: (acadstrlsort '('-1' '+1')) - ('+1' '-1') Оба: (mapcar ' ascii ('-' '+')) - (45 43) Больше информации по этому вопросу на. AIPROPCHK (Aipropchk) был переименован в (C:AIPROP) в R13c3. 'Функция AutoLISP aipropchk была изменена на c:aiprop так, чтобы это вело себя аналогично к другим командам. Это позволяет нажимать Enter, чтобы возвратить DDMODIFY если она выбрана из инструментальной панели.' .

Дефектные обратные вызовы в R13 DCL-коде приводят к краху AutoCAD Имеется ошибка в R13/R14, где AutoCAD терпит крах с Фатальной Ошибкой если ошибка происходит в AutoLISP коде в течение обратного вызова из полоса прокрутки (слайдера) в диалоговом окне. Например, если Вы пробуете вычислить нулевую функцию во время обратного вызова, AutoCAD терпит крах немедленно. Технически, это не ошибка в AutoLISP интерпретаторе, но все еще называют это AutoLISP-ошибкой. Вы не можете полагаться на значение бита 64 в флаге 70 в символьных таблицах нигде в R13, но также и во всех предыдущих выпусках. Вставленные блоки могут иметь не установленное значение 64.

Тот же самое в R14. Неофициальный список ошибок в AutoCAD поддерживаемый Steve Johnson для большинства дефектных программ AutoLISP и приведенный на, фактически.01-05. Hmtl (Esp: 33, 124, 126, 127, 139, 153, 158, 165, 176, 182, 192, 193, 238, 240, 254, 272, 295). протектированные LISP файлы В pre-c4a R13 протектированные LISP файлы не оставались защищенными в памяти. По нашему мнению, эта проблема должна быть сделана известной всем, так как разработчики не принимают, что их защищенный код обезопасен от чужих глаз. Эта FAQ тема вызвала главную проблему на AutoCAD Форуме CompuServe. Ограниченное число открытых наборов выбора Они сохраняются во временных файлах.

Избавьтесь от не необходимых наборов выборов установив символы в nil и выполните (gc), сборщик мусора, который затем фактически закрывает эти файлы. Максимальное число зависит от операционной системы, то есть в DOS число файлов - FILES= определяется в CONFIG.SYS. Числа: диапазон, точность Целые числа - внутренний длинные ( 32-разрядные), но связь от AutoLISP до AutoCAD принимает только 16-разрядный короткие в диапазоне -32766. + 32767, потому что AutoCAD нуждается только в коротких значениях. Числа с плавающей запятой - двойной точности (32-разрядные). Все внутренние.

Числовые вычисления в AutoLISP и AutoCAD работают с этим форматом, который должен быть достаточен. По крайней мере первые 14 позиций десятичного числа точны. Однако с геометрическими сравнениями там часто происходят ошибки, Так, было мудро сравнить точки с (equal pt1 pt2 1e-6); дает ошибку округления 0.000001 вместо (equal pt1 pt2), особенно С углами. Также.

(EQ) строгость ACOMP С оттранслированной программой ACOMP вы должны соблюсти осторожность потому что поведение (EQ) в BI4 намного более строго чем в обычном AutoLISP. В AutoLISP (eq '1' '1') -.T., в оттранслированной программе ACOMP's это - nil. Далее перечисленны не реальные ошибки, которые делают аварийный крах AutoLISP или возвращают ложные результаты. Они только следствие плохой реализации языка.

И и ИЛИ должен возвратить значение параметра не-NIL Вместо.T. MAX и MIN должен обработать также строковые типы, потому что.and. Принимает и обрабатывает строковые типы. ACADSTRLSORT выше.

О ошибках переполнения стека см. Я установил краткий обзор сортировки в AutoLISP на В LISP обычно используют сортировку с объединением (также используется в (str-sort) в примере TABLES.LSP от AutoDesk) потому что это естественный метод для связи списков. Обычно (например в C) вы используете сортировку методом кучи (heap) (для любых Данные) или qsort (для произвольных данных) и сортировку методом вставки для маленьких списков ( Имеется ли lisp-команда, которая позволит мне выбирать строки текста, и распознают число(а) в каждой строкечтобы, скажем, увеличить каждое номер в два раза? Оставляя структуру предложения неповрежденной?

Это - один способ. (Я уверен, что имеются много других способов) (defun mult2 (strng); (c) by Vladimir Nesterowsky (strlgather (mapcar '(lambda (s / n) (if (zerop (setq n (atof s))) s (rtos (. n 2)))) (strlparse strng ' ')); parse by spaces ' ')); gather back with spaces Объясняется на;;; перемещение строк и столбцов в матрице (defun transpose(l); (c) by Doug Wilson (apply 'mapcar (cons 'list l))) Объясняется на LISP файлы могут быть загружены при запуске, используя LOAD в ACAD.LSP.

Некоторые LISP-файлы, работающие с меню, чтобы работать, должны быть загружены из соответствующего. MNL-файла.MNL- файл, загружаемый по умолчанию - ACAD.MNL LISP функции, называемые командами при запуске должны быть определены в S::STARTUP в ACAD.LSP. Эта функция вызывается при запуске после инициализации автоматически. Иначе вы получите ошибку: 'Command list interruption (6.2)'. Если имя файла указано без расширения, функция LOAD принимает.LSP по умолчанию. Если нет указания полного пути к файлу, используется обычный путь к библиотекам AutoCAD, то есть:. Текущий каталог.

Каталог, содержащий файл текущего рисунка. Каталоги, определенные в переменной среды AUTOCAD (устанавливается в пункте меню Preference, пути к каталогу SUPPORT).

Каталог acad.exe Если ваша программа не загружается больше автоматически, проверьте ваш путь к библиотекам AutoCAD. С ACADLC (от ACOMP) и внутренние версии AutoCAD R12 ACAD.LSP не загружается автоматически. Следовательно Вы должны добавить (load 'ACAD' -1) в ваш ACAD.MNL. Пример ACAD.LSP:;;; ACAD.LSP;;; Fred the Beaver, 12/12/94 (load 'init' -1); загружает некоторые инструментальные средства (defun S::STARTUP (load 'new-end' -1); переопределение команды END ) -1 параметр предохраняет LOAD от прерывания процесса запуска, если происходит любой отказ функции LOAD (порождение ошибки AutoLISP). Если отказ во время загрузки происходит, -1 возвращается, но вычисление кода не останавливается.1 может быть в также в любом выражении.

Типовой пример, осуществления расширения S::STARTUP в вашей программе (с компилированным кодом Vital Lisp это не будет работать: это не должно компилироваться) (Defun S::STARTUP ; ваш код запуска идет сюда. (Princ) ) (setq S::STARTUP (if (and S::STARTUP (listp S::STARTUP));already defined in; ACAD.LSP or elsewhere (append S::STARTUP (cdr MY::STARTUP));append your code MY:STARTUP));just your code Или другой пример: (if (and S::STARTUP (listp S::STARTUP));usually called consp (setq S::STARTUP (append S::STARTUP (list func '(princ)))) (setq S::STARTUP (list nil func '(princ)))) См. Также ' Вы можете или загружать ваши программы при запуске (см. ') что создает потребность в большем количестве времени и памяти во время запуска, или Вы может определять их через механизм автозагрузки. С R14 ARX-программами используют новую схему автозагрузки, называемую загрузкой по потребности, с некоторыми зарегистрированными установками и больше не из ACADR14. Рассмотрим конец ACADR12.LSP но не ACADR13.LSP, как AutoCAD автозагружает программы.;;; Автозагрузка Lisp-приложения.

(autoload 'dline' '('dline' 'dl')). Это определяет команды DLINE и DL в списке, который будет загружен из файла DLINE.LSP, когда будет первый вызов пользователем команда DLINE или DL. Перед этим функция просто определена подобно этому: (defun C:DL (load 'DLINE')(C:DL)) Фактически определение больше усложнено из-за ошибки при обработке. После первого обращения функция записывается поверх определения программы. Преимущества автозагрузки:. Запуск происходит быстрее, потому что Вы не должны загружать все ваши lisp-файлы. Вы только определяете простое.wrapper.

определение как показано выше. Вы нуждаетесь в меньшем количестве памяти. Недостатки:. При ошибках в вашей программе Вы попадаете в замкнутый цикл, который можно остановить только после переполнения стека или Ctrl-C Обратите внимание: с ACOMP-оттранслированной программой четный Ctrl-C невозможен. Поэтому вставьте обращение к не компилируемому (princ) где-нибудь в программе. Вы должны определить и поддерживать все имена команды из вашей программы в определении autoload. Изменения имени lisp-файла или имя команды вызовет вышеупомянутую ошибку.

Где помещать ваши определения (autoload)?. Не в ACADR13. Мы рекомендуем поместить это в Ваш файл инициализации и не в ACAD.LSP, потому что это часто изменяется различными приложениями а ACAD.LSP должны сохраниться довольно маленьким. То есть поместите это в AUTOLOAD.LSP или INIT.LSP, который будет загружаться из ACAD.LSP.

Должно быть упомянуто, что пользователи не должны изменять ACADR13. LSP (Или ACADR12. LSP, хотя это не было 'официально' до r13).

Начиная с тех пор ACAD.LSP не перезаписывается в течение обновлений, это гарантирует безопасность. В AutoLISP это невозможно. Вы можете или передавать все ваши параметры в списке подобно этому:;;; print a variable number of arguments (of any type) (defun my-princ (x);; simple version, for better stuff look at the SDK2: PRINTF.LLB (if (listp x) (mapcar 'princ x) (princ x))) Или Вы должны определить функцию в ADS/ARX и экспортировать это в AutoLISP. Затем Вы можете набрать: (ads-print 'Hello ' 'World ' 1 2 3) Или даже: (ads-printf 'Hello%s%i%i' 'World' 2 3) Рассмотрите ADS-примеры Reini Urban и Vladimir Nesterovsky на для свободных реализаций из вышеупомянутых примеров.

Официально это было указано AutoDesk regarding&optional как расширение языка AutoLisp, но это не было выполнено в R14. В AutoLISP размер стека жестко закодирован. Он не может быть расширен, но этот размер должен быть достаточен для большинства целей. Ошибок большинство связанных с переполнением стека происходят из-за ошибок в ваших программах, предотвращая систему от краха в бесконечном цикле, или от использования рекурсивных функций в больших списках. Следовательно Вы ограничены в списках 200 элементов с рекурсивными функциями. Вы не можете уменьшать используемый размер стека используя меньше локальных параметров в вашей рекурсивной функции! Однако не используйте APPLY, EVAL или MAPCAR, чтобы вызвать вашу функцию рекурсивно, потому что они поедают стек.

Вы будете должны преобразовать вашу рекурсивную функцию в итерационную. (Имеется математическая теорема, которая говорит, что каждая рекурсивна функция может быть преобразована в итерационную, обратно рекурсивную даже автоматически.) Итерационные версии могут использовать стеко-подобные функции как (push) и (pop), но эти версии хранят стек в куче (пространстве узлов Autolisp), размер которого размер ограничен только вашей виртуальной памятью. Вы можете проверять переполнение стека этой простой функцией:;;; создайте список n чисел (начиная с нуля) (defun intlst (l n) (cond ((zerop n) l) (T (intlst (cons (1- n) l) (1- n))))) И попытайтесь: (setq n 100)(while (intlst nil (setq n (+ 10 n)))(print n)) В AutoLISP R12/DOS Вы достигаете ограничения стека с (Intlst nil 138), в A13/Win с (intlst nil 240), в ACOMP bi4 c (intlst nil 1240), в Vital Lisp IDE с (intlst nil 984). В Vital Lisp RTS, размер стека неограничен.

С R10c10, первой версией Lisp DOS Extender, вы могли бы расширять размер стека LISP переменной среды LISPSTACK. ACOMP для R10 имел COMPSTACK. Это не возможно больше. Преобразование в итерационную версию производит требуемые результаты: (defun intlst (n / l) (repeat n (setq l (cons (setq n (1- n)) l))));this looks ugly but it works Единственная возможность физически расширять размер стека состоит в том, чтобы использовать ACOMP интерпретатор ACADLC или Vital Lisp. BTW: Лучше Lisp-системы могут автоматически преобразовывать обратно рекурсивные функции в итерационные.

Некоторые команды не являются внутренними командами AutoCAD, а есть простые AutoLISP-программы, начинающиеся с C:, даже если они определены в ADS. Только родные Rx приложения экспортируют истинные команды. Список всех этих команд содержится в ACADR13. LSP в разделе AUTOLOAD.

Также ') Все эти команды должны вызваться как (C:ROTATE3D) вместо (command 'ROTATE3D'). Однако функции ADS могут получать дополнительные параметры. Руководство по настройки для большей информации. То есть (c:rotate3d ss p1 p2 angle) также допустим, как и (rotate3d.) 'Я имею проблему при создании lisp-файла, который открывает рисунок и продолжает выполняться. Как только новый рисунок открыт, lisp-файл прекращает существовать в памяти Autocad.

AutoCAD должен быть перезагружен, чтобы распознать команды.' LISP-память перезагружается при загрузке рисунка. Имеются несколько способов выполнять Lisp-программы с несколькими чертежами:. Через скрипт, который выполняется на нескольких чертежах. MYSCRIPT.SCR: (load 'mylisp') QSAVE OPEN!nextdwg (load 'mylisp') QSAVE OPEN!nextdwg. Внешнее программы третье сторонних разработчиков типа RunLisp или DDSCRIPT автоматизирует метод 1.

R14 имеет новую возможность, называемому 'Постоянный LISP'. Установите это в Preferences-Compatibility-Persistent LISP. Vital Lisp имеет встроенную переменную выполняющую функцию 'Persistent LISP': (setq.VILL-NEW-FULL-INIT. nil); хранит символы между сеансами Поскольку не существует свободных библиотек для манипуляции базовыми списками и строками как для любого другого Lisp, Вы должны собрать вашу собственную.

Некоторый код доступен на некоторых AutoLISP-сайтах или включен в SDK от AutoDESK Я включил сюда некоторых очень полезные сервисные функции для коротких примеров отвечая на вопросы в сети. Вы могли бы полагаться на факт, что эти функции общеизвестны как известная функция dxf, которая определена как (defun dxf (grp ele) (cdr (assoc grp ele))) и специфическая (getval), который работает с списком entget или ename.

Автор: Дата: Просмотров: 5 723 «Пакеты Прикладных Программ» относятся к классу программ 'поддержки принятия решений', содержат более 60-ти программ для статического рассчета плоских рам, ферм, балок; подбора сечений стальных, железобетонных, кирпичных и деревянных конструкций; сбора снеговых, ветровых, гололедных нагрузок и мн. Пакеты Прикладных Программ являются развитием набора программ, входивших в ПК Инженерный Калькулятор. Востребованное быстрое наращивание количества таких программ обусловило организацию разделов ПК Инженерный Калькулятор в виде отдельных Пакетов Прикладных Программ. Их структурирование выполнено в соответствии с классами задач, встречающихся при расчете и проектировании конструкций: железобетонные конструкции, стальные конструкции, деревянные конструкции, основания и фундаменты и т.д. Engineering Assistance Package (Engineer AP) is a set of programs that help civil and structural engineers make necessary decisions at their workplace. Engineering Assistance Package Engineering Assistance Package (Engineer AP) is a set of programs that help civil and structural engineers make necessary decisions at their own workplace. Engineer AP is an extension of set of programs previously included in CALCULATOR software.

The programs in the package are organized according to necessary tasks that should be carried out in analysis and design of the following structures: reinforced concrete structures, steel structures, timber structures, foundations, etc. Компания Corel выпустила новый набор приложений Corel Designer Technical Suite X4, в состав которого вошли инструменты для работы с растровой графикой, векторными изображениями, для трассировки, а также для работы с 3D-моделями. Поскольку у Corel нет собственных разработок, которые позволили бы компании предложить своим пользователям такие возможности, Corel заключила партнерское соглашение с Right Hemisphere, производителем известной программы Deep Exploration. В Corel Designer Technical Suite X4 входит специальная версия этой программы Deep Exploration Standard Edition, благодаря чему пользователи пакета могут открывать и просматривать 3D CAD модели, а также включать их в свои 2D-проекты и в файлы PDF.

Deep Exploration Standard Edition работает с более чем 80 форматами, включая те, которые используются в CATIA, Autodesk Inventor, Pro/ENGINEER, SolidWorks и Unigraphics NX. Кроме Deep Exploration, в состав нового пакета программ входят Corel DESIGNER X4, Corel PHOTO-PAINT X4, Corel PowerTRACE X4, Corel CAPTURE X4, Microsoft Visual Basic for Applications 6.4.

(комментариев - 5) Автор: Дата: Просмотров: 822 Компании Autodesk и Bentley Systems объявили о том, что достигнуто соглашение по расширению совместимости выпускаемых ими программ для архитектурно-строительной отрасли. Autodesk и Bentley намерены обменяться библиотеками и модулями из состава своих программных продуктов (Autodesk RealDWG и др.), что позволит повысить точность при чтении и записи соответствующих файлов формата DWG и DGN в смешанной операционной среде. Кроме того, обе компании планируют повышать производительность процессов, связанных с совместным применением программных продуктов, путем двустороннего использования интерфейсов прикладного программирования (API). (комментариев - 2) Автор: Дата: Просмотров: 3 124 Advanced vehicle swept path and turn simulation software for the transportation and engineering professional. This timesaving CAD-based program lets you analyze and evaluate vehicle maneuvers for projects such as intersections, roundabouts, bus terminals, loading bays or any on/off-street assignments involving access, clearance, and maneuverability checks. The world's leading vehicle maneuver and swept path simulation software has just received a functionality enhancement. The new AutoTURN 5.1 version from Transoft Solutions, internationally renowned developers of CAD based software solutions for the architectural and engineering sector, promises to set another standard for transportation design tools.

AutoTURN 5.1 includes a selection of new and productivity enhancing improvements that increase the level of dynamic usability and flexibility users around the world have come to expect from the software company. Along with new and updated vehicle libraries (AASHTO 2004, CALTRANS/CALTRANSM 2005 and other European libraries), this new release includes a new front and rear steering linkage system. This allows designers the ability to create front and rear steering vehicles with the ability to specify the linkage ratios between the front and rear wheels - ideal for multi-axle semi-trailer, truck and articulated bus modeling. (комментариев - 21) Автор: Дата: Просмотров: 1 568 EMC VMware Workstation v6.0.4.93057.

VMware Workstation - мощное программное обеспечение в области создания виртуальных машин, предназначенное для разработчиков и системных администраторов, которые хотят упростить процесс разработки, тестирования и внедрения программного обеспечения. VMware Workstation обеспечивает одновременную работу нескольких операционных систем и управляемых ими приложений на одном физическом компьютере. Операционные системы и приложения надежно изолированы друг от друга в рамках виртуальных машин, которые совместно используют имеющиеся аппаратные ресурсы физического компьютера. Если говорить простыми словами, то это программа, при помощи которой можно одновременно запустить на одном ПК несколько операционных систем.

OriginLab Origin - пакет для численного анализа данных, включающих различные статистические операции, обработку сигналов и т.п., и создания двухмерной и трёхмерной научной графики, которая создаётся с помощью готовых шаблонов (возможно создавать новые шаблоны и редактировать существующие). После создания изображения оно может быть отредактировано с помощью меню и диалогов, вызываемых двойным щелчком мыши на его элементах. Можно экспортировать полученные графики и таблицы в ряд форматов, таких как PDF, EPS, WMF, TIFF, JPEG, GIF и др. (комментариев - 9) Автор: Дата: Просмотров: 2 389 Bentley InRoads - САПР для проектирования дорог.

Из статьи: Компания Bentley Systems предлагает семейство программных модулей для решения задач гражданского проектирования под общим названием InRoads: - InRoads Survey — обработка данных геодезических измерений; - InRoads Site — проектирование искусственных ландшафтов (генплан); - InRoads — проектирование дорожного покрытия; - InRail — проектирование железнодорожного полотна; - InRoads Storm&Sanitary — проектирование сетей инженерных коммуникаций; - InRoads Bridge — проектирование мостов. Эти модули могут работать как в среде MicroStation, так и AutoCAD, что дает пользователям возможность выбора графической платформы и позволяет без преобразования передавать данные между отделами или внешними организациями, даже если они используют разные графические редакторы. На русском вышли также: Bentley Power Survey XM Edition (08.09.01.45) MicroStation Civil Extension XM Edition (08.09.01.45) (комментариев - 7) Автор: Дата: Просмотров: 1 174 Avid Media Composer v3.0. Компания Avid начала продажи новой линейки продуктов для видеомонтажа Media Composer 3.0 - мощной профессиональной системы обработки нелинейного видео.

Среди нововведений версии 3.0 можно отметить: - вывод видео в реальном времени во все основные форматы HD и SD; - ускорение визуализации эффектов за счет задействования возможностей многоядерных процессоров, графического адаптера и PCI Express; - улучшенная поддержка многих форматов, в том числе AVC-I, DVCPRO HD, XDCAM HD; - инструмент SubCap для добавления субтитров, с возможностью импорта и экспорта в форматы EBU-N19; - новый инструмент MetaFuze для быстрого объединения файлов, содержащих один кадр; - новая программа Avid DVD для создания дисков Blu-ray. (комментариев - 4) Автор: Дата: Просмотров: 1 137 BricscadPro v8.2.11.