Перейти к содержимому


- - - - -

Готовые скрипты на языке LISP, которые работают в NANOCAD без ошибок

LISP

Сообщений в теме: 32

#21 gomer

    Посетитель

  • Пользователи
  • PipPip
  • 25 сообщений

Отправлено 20 Апрель 2015 - 00:26

Просмотр сообщенияLion007 (13 Апрель 2015 - 01:50) писал:

для меня уже два десятка лет загадка - а вот нахрена LISP? он же невнятный! и предметной области нифига не соответствует...
моя бы воля - нахрен всякий лисп, даешь Lua! :) благо, даже опыт есть... один-единственный модуль, и можно позабыть про кривые прокси-объекты!
благо, даже опыт есть - причем аж под юниграфиксом... не, фигушки! а то слишком хорошо будет - там же можно даже отладчик пресловутых объектов написать на самом этом же луа. причем не убогий, а нормальный отладчик. ну да пес с ним, пусть не луа. пусть питон, руби, сквирл, форт, наконец - для настоящих джедаев. но лисп-то почему?!
и, главное, я могу хоть апстену убицца, но все упрется ровно в одно - НИ ОДИН человек, из тех, кто кричит, что "лисп форева, лисп маст хэв!" - не понимает, что там написано. для того, кто понимает - не составит особого труда портировать это на любой другой язык...

такая вот суровая имха...
Ну я пишу на лиспе для себя и на заказ, даже для нано писал, но обжегся на диалогах и отмене команд. Интересно в семерке пофиксили баг с отменой?
Скажу так, мне лисп нравится, я его понимаю и многое могу сделать без труда именно потому, что это лисп, а не другой язык.

#22 ermakovkv

    Новичок

  • Пользователи
  • Pip
  • 3 сообщений
  • Пол:Мужчина

Отправлено 26 Январь 2016 - 12:43

Скрипт dgnpurge удаляющий словарь с типами линий DGN - актуально для чертежей полученных из программных продуктов Bentley Inc.
Во первых снижает объем чертежа.
Во вторых исключает зависание продукта nanocad при сохранении (в т.ч. автосохранении).

Пример чертежа Прикрепленный файл  Черная дыра.zip   3,19МБ   8 Количество загрузок:

Сам скрипт Прикрепленный файл  dgnpurge.LSP   912байт   18 Количество загрузок:

#23 Kreator

    Активист

  • Пользователи
  • PipPipPipPip
  • 452 сообщений
  • Пол:Мужчина
  • Город:Краснодар

Отправлено 15 Июль 2016 - 21:55

Выложу то, на чём у меня сейчас работает моя недоавтоматизация. Писалось всё с 2009 года, поэтому код неказистый. Но по принципу "работает - и ладно" используется и не трогается без особой необходимости. Комментарии написал минимально. Но зато с примером использования. Лисп я вообще не перевариваю, но нужно было что-то скриптовое с нормальным взаимодействием с объектами ACAD2006-8. А начинал с VBA. Как это всё работает, и тем более, как я это собрал в кучу - загадка :blink:
Добавлю загрузчик лиспов из папки (автор - Зуенко Виталий) и простенький пример использования цикла - заполняет вертикальную шкалу по параметрам, запрашиваемым у пользователя из командной строки (можно и горизонтальную, функция внутри позволяет выбирать).
Авось, кому пригодится это добро в начинаниях.

Прикрепленные файлы

  • Прикрепленный файл  PAV.lsp   6,39К   6 Количество загрузок:
  • Прикрепленный файл  LSPloader.lsp   2,88К   9 Количество загрузок:
  • Прикрепленный файл  Шкала.lsp   1,94К   12 Количество загрузок:

Полховский А.В. Проектирование железнодорожных путей
nanoCAD Plus 8.1.3712.2221; MultiCAD.NET; Печатаем просто и быстро

#24 ooo.edp

    Посетитель

  • Пользователи
  • PipPip
  • 11 сообщений

Отправлено 20 Октябрь 2016 - 14:41

Добрый день.

Добавлю еще несколько Лисов, работающих в NanoCad

1. Расстановка блоков в вершины полилинии.
Выставляет блоки по вершинам полилинии. точка привязки блока в вершине. Имя блока задается во время выполнения скрипта.

2. Нумерация вершин полилинии от 1 вершины с задаваемым начальным номером

3. Экспорт координт вершин полилини в Excel

Прикрепленные файлы


Сообщение отредактировал ooo.edp: 21 Октябрь 2016 - 08:53


#25 ermakovkv

    Новичок

  • Пользователи
  • Pip
  • 3 сообщений
  • Пол:Мужчина

Отправлено 25 Декабрь 2016 - 11:09

Так как на текущий момент размеры проставляемые в nanocad не учитывают ПСК, то текст в некоторых случаях вставляется в перевернутом виде!
Для решения этой проблемы, а также для возможности в дальнейшем изменить ориентацию размерного текста согласно текущей ПСК, есть решение в виде
скрипта на LISP (как бы его не любили).
Команда запуска DimOrientUCS (Autocad также поддерживается)
Прикрепленный файл  DimOrientUCS.LSP   1,18К   6 Количество загрузок:

#26 Linetzev

    Новичок

  • Пользователи
  • Pip
  • 5 сообщений
  • Пол:Мужчина

Отправлено 31 Август 2017 - 07:52

А с бейсиком нанокад работает?
Как бы его не любили, но я знаю бейсик и написал достаточно большую программу по обработке координатной съемки. В основном она заточена под железную дорогу.
Наверняка Лисп лучше, но я его не знаю. И переписывать программу смысла нет. Потому и спрашиваю...

#27 dows

    Активист

  • Продукт-менеджеры
  • PipPipPipPip
  • 2 577 сообщений
  • Пол:Мужчина
  • Город:Москва
  • Интересы:САПР

Отправлено 31 Август 2017 - 07:53

да, работает Visual Basic Script - в документации есть описания примеров работы.
С уважением,
Денис Ожигин

Сайты: www.archicad.ru, www.nanocad.ru

#28 Linetzev

    Новичок

  • Пользователи
  • Pip
  • 5 сообщений
  • Пол:Мужчина

Отправлено 31 Август 2017 - 07:59

А есть разница между VBA, на котором у меня написана программа, и Visual Basic Script ? Мои скрипты сохраняются в файле dvb. Такие файлы нанокад переваривает?
Постоянная поддержка VBA прекращена в автокаде начиная с 2010 года, хотя отдельный модуль для скачивания пока еще можно найти.

#29 dows

    Активист

  • Продукт-менеджеры
  • PipPipPipPip
  • 2 577 сообщений
  • Пол:Мужчина
  • Город:Москва
  • Интересы:САПР

Отправлено 31 Август 2017 - 08:10

VBA отличается от VBS только тем, что в VBA есть среда для отладки, а в VBS - нет. Если по человечески, VBA - это VBS обернутый сервисными улучшениями от Microsoft и Autodesk. И т.к. Нанософт в разработке этих сервисов не участвовал (не пригласили нас), то работать VBA приложения в среде nanoCAD не будут.
С уважением,
Денис Ожигин

Сайты: www.archicad.ru, www.nanocad.ru

#30 Kreator

    Активист

  • Пользователи
  • PipPipPipPip
  • 452 сообщений
  • Пол:Мужчина
  • Город:Краснодар

Отправлено 31 Август 2017 - 10:12

Просмотр сообщенияLinetzev (31 Август 2017 - 07:59) писал:

А есть разница между VBA, на котором у меня написана программа, и Visual Basic Script ? Мои скрипты сохраняются в файле dvb. Такие файлы нанокад переваривает?
Нет, файлы dvb он не ест. Сильно переписывать не придётся - язык тот же. Рекомендую поставить среду разработки, код перенести туда и сделать нормальный DLL.
Либо же воспользоваться советом dows и перенести код в скрипты VBS, но тогда отладка сильно затруднится. Но если код и так рабочий, то и отлаживать не нужно.
Полховский А.В. Проектирование железнодорожных путей
nanoCAD Plus 8.1.3712.2221; MultiCAD.NET; Печатаем просто и быстро

#31 Kreator

    Активист

  • Пользователи
  • PipPipPipPip
  • 452 сообщений
  • Пол:Мужчина
  • Город:Краснодар

Отправлено 31 Август 2017 - 10:17

С лиспом лучше не связывайтесь :) "Такой личный неприязнь к нему испытываю, что кушать не могу" :D
Полховский А.В. Проектирование железнодорожных путей
nanoCAD Plus 8.1.3712.2221; MultiCAD.NET; Печатаем просто и быстро

#32 Linetzev

    Новичок

  • Пользователи
  • Pip
  • 5 сообщений
  • Пол:Мужчина

Отправлено 31 Август 2017 - 17:17

С Лиспом я связываться точно не буду. Он трудно читаем, да и вообще хватит мне языки программирования осваивать. Достаточно FoxPro, Basic и Pascal.
Что за среда разработки? С DLL не связывался пока...
С VBS тоже связываться не хочу...

#33 Kreator

    Активист

  • Пользователи
  • PipPipPipPip
  • 452 сообщений
  • Пол:Мужчина
  • Город:Краснодар

Отправлено 01 Сентябрь 2017 - 21:01

Качаете доступную среду разработки, например, Visual Studio или SharpDevelop. Последняя бесплатна.
Ставите, идёте в Клуб разработчиков, качаете SDK, открываете проект VB в Примерах (Samples), доводите его до состояния, когда он запускается и работает, а дальше его меняете под ваш проект VBA.
Полховский А.В. Проектирование железнодорожных путей
nanoCAD Plus 8.1.3712.2221; MultiCAD.NET; Печатаем просто и быстро





Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 скрытых пользователей