Поради з програмування в autocad

Поради з програмування в AutoCAD.

Можливості Visual Lisp:
  • Забезпечує всі можливості AutoLISP;
  • Робить програмування зручнішим за допомогою Інтегрованої середовища розробки (IDE)
  • Удосконалює AutoLisp завдяки підтримці справжніх об'єктів AutoCAD і ActiveX.
  • Надає збільшену захист і ефективність за допомогою компіляції Lisp-програм.
Visual Lisp побудований на технології ObjectARX, і планується AutoDesk як ще один стандарт засобів програмування під AutoCAD поряд з AutoLisp, ObjectARX і Microsoft Visual Basic for Applications.

Деякі ресурси по Visual Lisp можна знайти на цьому сайті в розділі "Посилання"

Опишіть будь ласка хоч коротко формат лісповскіе захищених файлів.

На початку йде текст "AutoCAD PROTECTED LISP file", після нього CR / LF, далі EOF. Слідом йде однобайтовий ключ, за допомогою якого і осуществяется кодування.

Див. Програму декодування на REXX. Вона не зовсім коректно працює в загальному випадку, але ідея думаю буде зрозуміла. Hепонятно для мене місця відзначені.

Serg Shikov, 2: 5020/52, (RU.ACAD)

Як створювати анонімні блоки в AutoCAD.

Більшість програм AutoLISP, результатом роботи яких є отрисовка об'єктів, що складаються з декількох примітивів (наприклад кокой-небудь спецзнак), мають одним загальним недоліком - намальовані елемент складається з декількох об'єктів і тому, якщо виникне необхідність видалити, перемістити, повернути і т. П. весь об'єкт, то виділити його цілком не завжди зручно. Іноді для вирішення цієї проблеми всі об'єкти спецзнака отрісовиваємих в окремому шарі. Іншим способом є створення таких об'єктів як анонімні блоки. У цьому випадку об'єкт являє собою єдине ціле і оперувати з ним набагато легше. При цьому сам блок в, відміну від звичайного, для користувача не бачимо і його ім'я не з'являється в списку імен блоків при використанні команди insert. У разі видалення отрисовать спецзнака з креслення, анонімний блок, на який посилався цей елемент автоматично видаляється з бази даних креслення при закритті файлу.

Процедура називається (UnBlock pt ss). де
pt - точка вставки об'єкта
ss - набір об'єктів, які треба перетворити в анонімний блок.
ss можна створити за допомогою команди ssget або ssadd.

Процедура UnBlock міститься в файлі UnBlock.zip
У файлі SpSign.zip міститься приклад використання цієї процедури (маленький набір програм відтворення таких спецзнаків як "Розріз" і "Вид").

Як написати лічильник часу на мові AutoLISP?

За допомогою системної змінної CDATE (можливе використання інших змінних).

У потрібних місцях програми слід прочитати поточні дату і час, які повертаються через системну змінну CDATE, наприклад:

У повернутому значенні перед точкою - рік (4 цифри), місяць (2 цифри) і день (2 цифри), після точки - годинник (перші 2 цифри), хвилини (2 цифри), секунди (2 цифри) і соті частки секунди ( 2 останні цифри). Більше 8 десяткових знаків після точки в CDATE отримати не можна.

Обробіть таким чином показання годин на відповідних місцях роботи програми, отримаєте ваші дані.

Схожі статті