Реклама i
Стань нашим партнером - зарабатывай с нами!
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Объединение (группировка) объектов

Объединение (группировка) объектов

Ответ
Поиск в этой теме
Непрочитано 29.09.2005, 11:04 #1
Объединение (группировка) объектов
Кулик Алексей aka kpblc
Moderator
 
LISP, C# (ACAD 200[9,12,13,14])
 
С.-Петербург
Регистрация: 25.08.2003
Сообщений: 39,848

Сорри за ламерский вопрос, но думать самостоятельно уже не получается вообще никак.
В организации используется одинаковое меню на AutoCAD и AutoCAD LT (2005 Rus). В меню используется группировка объектов.
Естественно, что первое желание сделать

^C^C_.-group;_create;*;;
И теперь суть прикола: В AutoCAD LT нет команды GROUP! Есть только pkfstgroup (которой, естественно, нет в полной версии када) :twisted: :twisted: :twisted: . Опции командной строки уже особой роли не играют.
Ну так, в качестве небольшого отступления: в полной версии када окно модальное, не дает даже выделить что-либо на чертеже. А в LT - немодальное, может болтаться само по себе. Отступление закончено
И собственно вопрос: каким образом можно определить, из-под какого када идет работа (LT / полный) - на одной машине в теории может стоять и тот, и другой.
Естественно, что первое, что я попробовал, это получить (getvar "acadver"), но оно что для одного, что для другого выдает одно и то же - "16.1s (LMS Tech)".
P.S. Если требуется лисп, то возможность его подключить есть. ObjARX тоже в принципе есть шансы. Или вариант делать два разных меню (фактически только из-за одной-двух команд) и "доктор сказал - в морг, значит - в морг, не занимайтесь самолечением!"?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Просмотров: 4540
 
Непрочитано 29.09.2005, 11:25
#2
Torino


 
Регистрация: 21.08.2003
Штаб
Сообщений: 943
<phrase 1=


>>kpblc
Отвечаю не совсем то, что ты спрашивал: в Toolpac'e 9 есть команда позволяющая создавать группы по принципу твоей кнопки (даже проще).
Ты говоришь, что есть возможность подключить лисп к ЛТ, так вот может быть Тулпак заработает в ЛТ.
Torino вне форума  
 
Автор темы   Непрочитано 29.09.2005, 12:38
#3
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848


Да дело в том, что там не лисп в Toolpac'e, а комбинация vlx / fas / dvb. Ничего из этого в LT мне не подключить. Соответственно по человечески и код не посмотреть
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 29.09.2005, 12:56
#4
VetalBY


 
Регистрация: 16.05.2005
г. Минск
Сообщений: 276


Нет у меня LT, подсказать что-либо дельное сложно...
Может поискать какой-нибудь файлик, который есть в полной версии, но нет в LT (findfile ...)
:shock:
VetalBY вне форума  
 
Автор темы   Непрочитано 29.09.2005, 13:13
#5
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848


Нету такого. Искал лисп по команде c:group. Скорее всего, где-то зашито.
В общем, суть прикола не меняется - надо как-то определить лиспом, в полном каде болтаемся или не совсем в полном.
---
Добавлено:
Все, крыша едет окончательно. Профи лиспа, помогите начинающему! Я понимаю, что надо сделать (vl-catch-all-apply) и проверять на (vl-catch-all-error-p), но у меня что-то не срастается с командами. Наверное, надо как-то жить через (function lambda), но их я пока понять что-то не в силах. Расскажите, как выкрутиться?
Функции (vl*) поддерживаются, так что тут все ок (нет поддержки некоторых реакторов, ну и бог с ними, пока без них весело).
---
Добавлено 2:
Все, народ, тему можно закрывать. Все решается через (vlax-product-key) И анализ возвращенной строки на предмет наличия символов "AutoCAD LT"
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 29.09.2005, 13:19
#6
VetalBY


 
Регистрация: 16.05.2005
г. Минск
Сообщений: 276


я имел ввиду, например (findfile "geom3d.arx")
неужели и с LT версией поставляется этот файл?
или другой ARX файлик
VetalBY вне форума  
 
Непрочитано 29.09.2005, 13:25
#7
VetalBY


 
Регистрация: 16.05.2005
г. Минск
Сообщений: 276


и тогда в LT функция вернет nil, а в полной - путь к файлу
VetalBY вне форума  
 
Автор темы   Непрочитано 29.09.2005, 13:29
#8
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848


Не, я нашел-таки решение. Вроде как пока работает... А искать файлы имхо последнее дело - кто его знает, что и где будет храниться. И через год, например, я из вредности напишу objarx с таким именем -сволочь я та еще!
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 29.09.2005, 13:32
#9
Apelsinov

Проектировщик ВК. LISP-любитель.
 
Регистрация: 15.12.2003
Москва
Сообщений: 1,192
<phrase 1=


Насколько я понял, проблема в определении LT или не LT. Как в лиспе сделать пока не знаю, но:
Предложение дубовое:
при первом запуске вывести запрос на версию, типа
Код:
[Выделить все]
(initget "Autocad2005 AutocadLT")
  (GETKWORD "\nКакая версия AutoCAD[Autocad2005/AutocadLT]<Autocad2005>:")
Записать его где нить в файлике, и сравниваться затем с ним.
Apelsinov на форуме  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Объединение (группировка) объектов

Размещение рекламы