| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
05.03.2017, 10:51 | #1 | |
Отключение регенирации и прорисовке в лисп-е?
Регистрация: 30.03.2015
Сообщений: 152
|
||
Просмотров: 2572
|
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,856
|
1. regenmode -> 0
2. Отключи в коде регенерацию 3. Вообще проанализируй код - при неудачной организации обновление будет выполняться слишком часто. Offtop: Вот думаю, может, статейку нарисовать на эту тему?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 30.03.2015
Сообщений: 152
|
стоит в начале (setvar "REGENMODE" 0) -- не помогало,хоть всеравно оставил....но он только в одном файле у меня регенирацию полюбому выбивало (даже при regenmode=0) в остальных прорисовку ...
не совсем понял ==наверное ты про первое (сис.переменную regenmode -> 0) Цитата:
насчет "неудачной организации" =как то размывчато, хоть если вдруг статейку надумаешь, можешь тоже написать от чего зависит... ==потому что я например не понимаю когда эта прорисовка запрашивается(от чего зависит и т.д) автокадом, а не понимая - код не оптимизируешь.... я думаю она всем будет полезна , да и ты хорошо пишешь Последний раз редактировалось prajdziswet, 05.03.2017 в 13:46. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,856
|
А почему ты используешь командные методы? Что препятствует использованию ename или vla?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 30.03.2015
Сообщений: 152
|
1) проще: в плане не надо переводить объект туда, а потом обратно + проще скорректировать dxf, нагляднее чем под vla-объектом что-то просмотреть, ==все наверху...да vla в некоторых местах удобнее, но тут все на виду (хоть ты можешь поспорить)
2) командные методы всегда в памяти, когда постоянно чертишь.. 3) активХ много методов которые в accoreconsole не работают, раньше моя программа там отлично работала... например моя очистка поллинии с рекурсией (19970 ,как ты правильно замечал, пока у меня не превышало...) на очень больших объектах может полчаса работать ато и больше = удобнее запустить на консольном автокаде, а в это время на основном чертить = поэтому и стараюсь писать без активХ -чтобы можно было теоретически и на консольном использовать //правда сча засада - в плане что оно прерывает в консольном (подозрение что запрашивает там же - туже прорисовку и не пишет,хоть надо эхо включить - cmdecho, хоть вроде все равно не писало) и правда там сложнее отладить (в консольном, редактор при командных методах вешается ; вдруг может подскажешь ==жаль если нельзя эту прорисовку отключить) п.с а так ничего впринципе не препятствует использованию vla Последний раз редактировалось prajdziswet, 05.03.2017 в 17:12. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,856
|
prajdziswet, в описании блока примитивы обычно лежат именно в "мировой" системе координат.
Второе. Командные методы вызовут регенерацию после выхода из редактора блоков, хочешь ты того или нет Третье. В accoreconsole действительно масса вещей не работает. Но, во-первых, тебе никто не мешает использовать entmod + entupd. А, во-вторых, почему именно accoreconsole? Почему не использовать ObjectDBX, и работать именно через него? Там, конечно, есть свои ограничения, но их нередко можно игнорировать. Какая твоя задача-то? ----- добавлено через ~2 мин. ----- Кстати: http://autolisp.ru/2010/04/08/procee...tive-document/ http://autolisp.ru/2015/10/20/objectdbx-limits/ http://forum.dwg.ru/showthread.php?p=351547#post351547
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
идущий по граблям Регистрация: 26.05.2005
Сообщений: 5,095
|
Цитата:
|
|||
|
||||
Регистрация: 30.03.2015
Сообщений: 152
|
Цитата:
вы цитируете: перевожу простые примитивы (сплайны, отрезки, дуги) в полилинии _pedit, в ptools реализовано преобразование линейных объектов в 2д полилинию, причем сдалано на активХ и не факт если преобразовать все (сплайны, отрезки, дуги) будет быстрее чем это выполнит встроенная команда "полред"... вы цитируете: ..._pedit, этой же командой сливаю полилинии посмотрите п-тулс, чем выполняется слияние полилиний?! вы цитируете:алгоритмом удаляю вершины, оптимизируя полилинию и entmod обновляю entmod - это командный метод? (я не передаю команду в командную строку автокада, это команда лисп-а, да оно обновляет примитив эт да) п.с как Алексей правильно заметил , но вся проблема чтобы перейти у меня знания нулевые (инфы нормальной по-русски я не встречал ObjectDBX, Алексей может что порекомендует...еще ObjectARX или Net API можно что-то найти, но это не облегчает то что знаний у меня активной разработки нету)...ObjectDBX решил бы мою проблему насчет "занятости автокада", поэтому у меня на ум приходит пока что accoreconsole (поэтому я стараюсь не использовать активХ лисп-а) самая проблема что я использую командный метод открытия и закрытия блока, тут начинаются "запросы прорисовки"(большинство из запросов приходится на блоки), можно было использовать активХ(vla-...), но тогда у меня автокад выпадает на время обработки лисп-а (accoreconsole можно вызвать несколько, причем автокадом самим я спокойно смогу пользоватся)... задал вопрос начет "прорисовки", в надежде что может есть переменная типа "regenmode" или кто подскажет как выкрутится (потому что куча умных людей-на порядок умнее меня в этих вопросах, иногда читают и подсказывают что-то толковое, или хорошую идею) |
|||
|
||||
Регистрация: 20.03.2008
Сообщений: 2,653
|
Цитата:
Хотелось бы все же понять, как получить координаты объекта в блоке в мировой СК? |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,856
|
Пам-пам-пам... Я сейчас капитально выпимши, поэтому могу не менее капитально очепятываться
Сугубо ИМХО: если надо преобразовать сплайны в полилинии, для этого совсем необязательно использовать командные методы. Мне кажется, что создать полилинию на основе сплайна не так уж и сложно: основная проблема в том, чтобы определить алгоритм. Придумаешь это - остальное становится тупо делом техники. ObjectDBX я на autolisp.ru расписывал, это не так уж и сложно на самом деле. P.S. Остальное уже завтра, сейчас практически сплю
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 30.03.2015
Сообщений: 152
|
Цитата:
У меня появилась идея: а если не отключать прорисовку, а наоборот регенерировать или освежать в обрабатываемом куске, не исчезнет ли "окно запроса прорисовки"? (да может оно станет чуть медленнее, но может будет терпимо...) п.с а насчет алгоритмом создавать полилинию, еще раз подумаю (но это наверное следующий шаг, вот это надо будет мне почитать https://habrahabr.ru/post/264191/ ) ...пока и время более или менее удовлетворительно, единственно "запросы прорисовки" раздражают, да и что параллельно пока не получается запускать (раньше на accoreconsole работало, пока что-то я не переусовершенствовал ) ----- добавлено через ~22 ч. ----- попробывал регенерацию - эффект тот же, "окна прорисовки" не исчезли... |
|||
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Интересно где работают ЛИСП программисты? | dextron3 | LISP | 114 | 17.12.2017 13:53 |
Нужна помощь по изменению лиспа "Вставка пикетажа" в лисп "вставка плюсовой точки" | sosococo | LISP | 8 | 27.01.2016 13:36 |
Что прописать в acad.lsp чтобы всегда загружались пользовательские лисп команды? | overband | LISP | 43 | 07.02.2013 14:47 |
Лисп присадки мебельной фурнитуры | Скулачёв А. | LISP | 18 | 20.08.2008 13:59 |
Лисп для копирования данных нескольких мтекстов по принципу расположения. | Red Nova | LISP | 14 | 18.06.2008 22:08 |