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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > AUTOCAD 2016 не работает программа вырезания фрагмента генплана Помогите внести изменения.

AUTOCAD 2016 не работает программа вырезания фрагмента генплана Помогите внести изменения.

Ответ
Поиск в этой теме
Непрочитано 19.01.2016, 20:29 1 | #1
AUTOCAD 2016 не работает программа вырезания фрагмента генплана Помогите внести изменения.
jackUAROBEY
 
Проектировщик ВК
 
Анапа
Регистрация: 18.09.2014
Сообщений: 55

Всем привет. Программа Fragm_Den во вложении, вырезание фрагмента генплана не корректно работает в AUTOCAD2016. Если в чертеже есть маскировка или рисунок выдает ошибку internal error. При удалении маскировки все работает. До этого на AUTOCAD2012 такой проблемы не было. Глючит в этом месте. В лиспе отмечено
;++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
(mapcar '(lambda (q)

(if (= (car q) 14)(progn

(setq aa13 (cdr q)
aa13 (mapcar '- aa13 aa14)
aa13 (mapcar '- (mapcar '* aa11 (list (car aa13)(car aa13)))
(mapcar '* aa12 (list (cadr aa13)(cadr aa13))))
aa13 (mapcar '+ aa10 aa13))

(command (trans aa13 0 1))
))

) aa9)
;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Вложения
Тип файла: lsp Fragm_Den1.lsp (19.7 Кб, 142 просмотров)
Тип файла: dwg
DWG 2007
Чертеж1.dwg (154.6 Кб, 519 просмотров)


Последний раз редактировалось jackUAROBEY, 20.01.2016 в 08:17.
Просмотров: 27548
 
Непрочитано 19.01.2016, 21:04
1 | #2
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,052


Обратитесь к автору программы "Замечания и предложения по адресу [email protected]"
Сергей812 вне форума  
 
Автор темы   Непрочитано 20.01.2016, 08:15
#3
jackUAROBEY

Проектировщик ВК
 
Регистрация: 18.09.2014
Анапа
Сообщений: 55



Я на эту почту уже писал не отвечает.
jackUAROBEY вне форума  
 
Непрочитано 21.01.2016, 19:23
1 | #4
kp+

идущий по граблям
 
Регистрация: 26.05.2005
Сообщений: 5,095


Где-то на форуме писали, что в новейших версиях Акада функция (command) работает как-то иначе, чем в более ранних. А перед началом выделенного фрагмента как раз есть ее вызов
Код:
[Выделить все]
(command "_.pline")
;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
(mapcar '(lambda (q)

(if (= (car q) 14)(progn

(setq aa13 (cdr q)
      aa13 (mapcar '- aa13 aa14)
      aa13 (mapcar '- (mapcar '* aa11 (list (car aa13)(car aa13)))
		   (mapcar '* aa12 (list (cadr aa13)(cadr aa13))))
		      aa13 (mapcar '+ aa10 aa13))

(command (trans aa13 0 1))
))

) aa9)
;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Потом при выполнении какого-то условия следующей функцией (command) передаются данные для построения полилинии, начатой по вызвову предыдущей (command). Т.е. еще не завершилась команда, посланная в ком. строку первой (command), и уже вызывается вторая.
Получается как бы вложенный вызов второй (command) внутри первой. Видимо, по правилам Acad 2016 так уже нельзя. У самого Акада 2016 нет, поэтому больше подсказать не могу. Разве что переписать этот фрагмент "некомандными" методами.
kp+ вне форума  
 
Непрочитано 22.01.2016, 10:07
1 | #5
Wion

Инженер-проектировщик
 
Регистрация: 05.11.2014
Санкт-Петербург
Сообщений: 19


Может все дело в вызове "command" ?

http://forum.dwg.ru/showpost.php?p=1328098&postcount=8
Wion вне форума  
 
Автор темы   Непрочитано 29.01.2016, 09:47
#6
jackUAROBEY

Проектировщик ВК
 
Регистрация: 18.09.2014
Анапа
Сообщений: 55


Код:
[Выделить все]
 (setvar "DELOBJ" 1)
:++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
(apply 'command (cons "_.pline"
			(vl-remove nil
			  (mapcar ' (lambda (q)
				     (if (= (car q) 14)
				      (progn
				       (setq aa13 (cdr q)
					aa13 (mapcar '- aa13 aa14)
					aa13 (mapcar '- (mapcar '* aa11 (list (car aa13)(car aa13)))
					      (mapcar '* aa12 (list (cadr aa13)(cadr aa13))))
					aa13 (mapcar '+ aa10 aa13))
				       (trans aa13 0 1)				      
				       );progn
				      );if
				     );lambda
				  aa9);mapcar
			  )
			)
	 )
;++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Проблему решил. Заменил фрагмент кода. Всем спасибо.
Вложения
Тип файла: lsp Fragm_Den.lsp (20.0 Кб, 240 просмотров)
jackUAROBEY вне форума  
 
Непрочитано 04.03.2016, 08:39
#7
sergant2la


 
Регистрация: 05.07.2012
Сообщений: 36


Доброе утро! Помогите решить проблему. В AutoCAD 2016 SP1 программа выдает такое сообщение "Неправильное ключевое слово" Задайте параметр: Замкунть, Разомкнуть, Сплайн, Убрать сглаживание, обратить, Отменить. Что делать?
sergant2la вне форума  
 
Непрочитано 04.03.2016, 08:53
#8
sergant2la


 
Регистрация: 05.07.2012
Сообщений: 36


Скрин проблемы
Миниатюры
Нажмите на изображение для увеличения
Название: Неправильное ключевое слово.png
Просмотров: 174
Размер:	8.0 Кб
ID:	166483  
sergant2la вне форума  
 
Непрочитано 04.03.2016, 09:28
#9
trushev


 
Регистрация: 12.01.2015
Сообщений: 261


Цитата:
Сообщение от sergant2la Посмотреть сообщение
Что делать?
Скорее всего решение в #5. И обратите внимание на различия синтаксиса функций:
Синтаксис функции command-s:
(command-s [cmdname [arguments ...]]).
Синтаксис функции command:
(command [cmdname [arguments ...]] ... [cmdname [arguments ...]]).
trushev вне форума  
 
Непрочитано 04.03.2016, 19:49
#10
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,992


Судя по сообщению на картинке проблема в красной строчке
Цитата:
(defun *error* (msg)
(vla-endundomark (vla-get-activedocument (vlax-get-acad-object)))
(if (< (atof (getvar "ACADVER")) 17.1)
(vla-sendcommand (vla-get-activedocument
(vlax-get-acad-object)) "_.undo 1 ")
(command nil nil nil nil "_.undo" 1))
(princ "\nВыход во время обработки данных\n")
)
Попробуй без этой строчки (оставлена синяя скобка)

Код:
[Выделить все]
(defun *error* (msg)
(vla-endundomark (vla-get-activedocument (vlax-get-acad-object)))
(if (< (atof (getvar "ACADVER")) 17.1)
(vla-sendcommand (vla-get-activedocument
(vlax-get-acad-object)) "_.undo 1 ")
) ;_ (command nil nil nil nil "_.undo" 1)
(princ "\nВыход во время обработки данных\n")
)
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 11.03.2016, 08:43
#11
sergant2la


 
Регистрация: 05.07.2012
Сообщений: 36


Цитата:
Сообщение от VVA Посмотреть сообщение
Судя по сообщению на картинке проблема в красной строчке

Попробуй без этой строчки (оставлена синяя скобка)

Код:
[Выделить все]
(defun *error* (msg)
(vla-endundomark (vla-get-activedocument (vlax-get-acad-object)))
(if (< (atof (getvar "ACADVER")) 17.1)
(vla-sendcommand (vla-get-activedocument
(vlax-get-acad-object)) "_.undo 1 ")
) ;_ (command nil nil nil nil "_.undo" 1)
(princ "\nВыход во время обработки данных\n")
)

Огромное спасибо!!! Удалил строчку, всё стало работать.
sergant2la вне форума  
 
Непрочитано 19.04.2016, 11:46
#12
brokman


 
Регистрация: 22.09.2014
Сообщений: 492


VVA
Так как правильно, удалить строчку и оставить скобку или ваш код
Код:
[Выделить все]
(defun *error* (msg)
(vla-endundomark (vla-get-activedocument (vlax-get-acad-object)))
(if (< (atof (getvar "ACADVER")) 17.1)
(vla-sendcommand (vla-get-activedocument
(vlax-get-acad-object)) "_.undo 1 ")
) ;_ (command nil nil nil nil "_.undo" 1)
(princ "\nВыход во время обработки данных\n")
)
brokman вне форума  
 
Непрочитано 19.04.2016, 13:01
#13
brokman


 
Регистрация: 22.09.2014
Сообщений: 492


Сначала было ошибка как в посте 8, вставил этот код
Код:
[Выделить все]
(defun *error* (msg)
(vla-endundomark (vla-get-activedocument (vlax-get-acad-object)))
(if (< (atof (getvar "ACADVER")) 17.1)
(vla-sendcommand (vla-get-activedocument
(vlax-get-acad-object)) "_.undo 1 ")
) ;_ (command nil nil nil nil "_.undo" 1)
(princ "\nВыход во время обработки данных\n")
)
в лисп из поста 6, вылазит след:\

Autocad 2015 SP2 лицензия
Миниатюры
Нажмите на изображение для увеличения
Название: Ошибка.png
Просмотров: 76
Размер:	22.5 Кб
ID:	169051  

Последний раз редактировалось brokman, 19.04.2016 в 14:34.
brokman вне форума  
 
Непрочитано 19.04.2016, 18:42
1 | 1 #14
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,992


Цитата:
Сообщение от brokman Посмотреть сообщение
Так как правильно, удалить строчку и оставить скобку или ваш код
В #10 удалить красное, оставить синее
Код во вложении у меня работает
Вложения
Тип файла: lsp Fragm_Den_VVA_2016.lsp (20.2 Кб, 540 просмотров)
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 20.04.2016, 11:00
#15
brokman


 
Регистрация: 22.09.2014
Сообщений: 492


В принципе всё работает, но если в одном месте много всяких блоков, подвшивка и элементов с разными слоями, то выдает, то что я написал выше. файл скинуть пока не могу, вечером скину.
brokman вне форума  
 
Непрочитано 08.04.2017, 23:02
2 | #16
petro_f

Проектировщик
 
Регистрация: 06.10.2016
СПб
Сообщений: 303
Отправить сообщение для petro_f с помощью Skype™


Цитата:
Сообщение от VVA Посмотреть сообщение
В #10 удалить красное, оставить синее
Код во вложении у меня работает
Добрый день коллеги. Немного поправил и дополнил плагин:
  1. При взрыве блока (если он попадает по линии разрыва) удаляются невидимые аттрибуты (взял функцию "Burst without Invisible Attributes" http://www.lee-mac.com/upgradedburst.html) [ver. 2016_burst.zip ].
  2. Добавил рисование линий разрыва и выбор 2 или 4 линии [ver. >= 2.1].
  3. Добавил отдельный функционал рисования линий разрыва. Команда BREAK-LINE [ver. >= 2.1]. Добавил одинарную линию разрыва [ver. >= 2.4].
  4. Немного "причесал" исходный код, что бы было понятно к какой функции какая команда принадлежит [ver. >= 2.1].
  5. Добавил защиту от падений, если вдруг плагин запустят в пространстве листа [ver. >= 2.1].
  6. Добавил функционал блокировки или разблокировки слоёв при работе плагина [ver. >= 2.1].
  7. Добавил функцию запоминания исходных настроек автокада при запуске плагина и возврата к данным настройкам после завершения работы плагина или его вылета по ошибке [ver. >= 2.1].
  8. Поправил функцию рисования задней линии при выборе двойной линии разрыва по команде BREAK-LINE [ver. >= 2.3].
  9. Убрал отключение привязки при указании точек линий обрезки [ver. >= 2.7].
  10. Мелкие исправления алгоритма [ver. >= 2.8].
  11. Исправлен косяк описанный тут и тут [ver. >= 2.9].
  12. Мелкие исправления алгоритма. Добавил возможность обработки штриховки через взрыв, так как старый алгоритм обработки не корректно обрезает штриховку. [ver. >= 2.9se].

P.S. Взрыв блока с подчисткой невидимых атрибутов я добавил из-за того, что у меня куча блоков со скрытыми атрибутами и не очень удобно потом это всё подчищать.
P.P.S. Переменная масштаба рисуемых линий берётся из переменной DIMSCALE. Установка переменной (setvar "DIMSCALE" 100) в консоли, где 100 нужное Вам значение.

Может кому пригодится такой вариант плагина.

P.S. Тестил акад 2015-2018
Вложения
Тип файла: zip Fragm_Den_2016_burst.zip (7.5 Кб, 171 просмотров)
Тип файла: rar Fragm_Den [ver. 2.7].rar (12.3 Кб, 117 просмотров)
Тип файла: rar Fragm_Den [ver. 2.8].rar (15.4 Кб, 49 просмотров)
Тип файла: rar Fragm_Den [ver. 2.9].rar (15.4 Кб, 160 просмотров)
Тип файла: zip Fragm_Den [ver. 2.9se].zip (16.1 Кб, 31 просмотров)
__________________
Если ты разговариваешь с идиотом - убедись что он не занят тем же!

Последний раз редактировалось petro_f, 07.10.2022 в 11:59. Причина: Обновление плагина от 07.10.2022
petro_f вне форума  
 
Непрочитано 30.05.2017, 15:58
#17
Composter

Отопление и вентиляция
 
Регистрация: 31.10.2008
Москва
Сообщений: 445


Запустил Fragm_Den_2016_burst все нормально сработало.
Поробовал Fragm_Den [ver. 2.5] выдало следущее
Цитата:
Fragm_Den_petro_f.lsp successfully loaded.
Command: ; error: syntax error
autocad 2014
Composter вне форума  
 
Непрочитано 30.05.2017, 21:04
1 | #18
petro_f

Проектировщик
 
Регистрация: 06.10.2016
СПб
Сообщений: 303
Отправить сообщение для petro_f с помощью Skype™


Цитата:
Сообщение от Composter Посмотреть сообщение
Запустил Fragm_Den_2016_burst все нормально сработало.
Поробовал Fragm_Den [ver. 2.5] выдало следущее


autocad 2014
Поправил архив. Оказывается "сглючил" редактор и склеил несколько фрагментов программы. Странно, что 8 скачиваний и только один человек отписался об этом
Composter скачайте заново и попробуйте запустить.
__________________
Если ты разговариваешь с идиотом - убедись что он не занят тем же!
petro_f вне форума  
 
Непрочитано 31.05.2017, 12:59
#19
SergAM243

инженерю чуть
 
Регистрация: 14.07.2008
Севастополь
Сообщений: 40
<phrase 1=


Запустил Fragm_Den_petro_f.lsp Акад2015 чистый.
С принудительной отрисовкой цветом "черный" и толщиной 0,18 можно смириться.
Хотя, по-моему, лучше оставить с текушими настройками слоя.
Снимает все настройки привязок и не возвращает в исходное.
При отрисовке брек-линии отрисовывает ее величиной 10 мм. Для строителей и черчении объектов в масштабе 1:1 - это очень мало.
Можно ли, чтобы он (она), лисп (прога), брал масштаб из чертежа?
Ну и в любом случае большое спасибо за доработку программы под последние АКАДы.
SergAM243 вне форума  
 
Непрочитано 31.05.2017, 21:21
#20
petro_f

Проектировщик
 
Регистрация: 06.10.2016
СПб
Сообщений: 303
Отправить сообщение для petro_f с помощью Skype™


Цитата:
Сообщение от SergAM243 Посмотреть сообщение
Запустил Fragm_Den_petro_f.lsp Акад2015 чистый.
С принудительной отрисовкой цветом "черный" и толщиной 0,18 можно смириться.
Хотя, по-моему, лучше оставить с текушими настройками слоя.
Снимает все настройки привязок и не возвращает в исходное.
При отрисовке брек-линии отрисовывает ее величиной 10 мм. Для строителей и черчении объектов в масштабе 1:1 - это очень мало.
Можно ли, чтобы он (она), лисп (прога), брал масштаб из чертежа?
Ну и в любом случае большое спасибо за доработку программы под последние АКАДы.
Масштаб берётся из переменной DIMSCALE - установка переменной (без кавычек) - "(setvar "DIMSCALE" 100)". Или поиск и замена по плагину: найти "(getvar "DIMSCALE")" заменить на "(getvar "НУЖНАЯ_ВАМ_ПЕРЕМЕННАЯ")". У себя я использую например переменную USERR1.

По поводу привязок - в автокаде есть небольшой косяк... я и так их откатываю при аварии плагина, но это не всегда выходит. Попробуйте версию 2.6.
P.S. При работе плагина, когда вылетали привязки, в консоли что было написано "Программа завершила свою работу" или что либо про ошибку?
__________________
Если ты разговариваешь с идиотом - убедись что он не занят тем же!

Последний раз редактировалось petro_f, 31.05.2017 в 21:27.
petro_f вне форума  
 
Непрочитано 02.06.2017, 13:52
#21
Composter

Отопление и вентиляция
 
Регистрация: 31.10.2008
Москва
Сообщений: 445


все отлично работет. Спасибо!
Composter вне форума  
 
Непрочитано 02.06.2017, 17:17
#22
SergAM243

инженерю чуть
 
Регистрация: 14.07.2008
Севастополь
Сообщений: 40
<phrase 1=


Цитата:
Сообщение от petro_f Посмотреть сообщение
P.S. При работе плагина, когда вылетали привязки, в консоли что было написано "Программа завершила свою работу" или что либо про ошибку?
При работе плагина вылетали привязки при работе команды BREAK_LINE, в консоли было написано "Программа завершила свою работу".
Цитата:
Сообщение от petro_f Посмотреть сообщение
Масштаб берётся из переменной DIMSCALE - установка переменной (без кавычек) - "(setvar "DIMSCALE" 100)". Или поиск и замена по плагину: найти "(getvar "DIMSCALE")" заменить на "(getvar "НУЖНАЯ_ВАМ_ПЕРЕМЕННАЯ")". У себя я использую например переменную USERR1.
В версии 2.6 косячит опять команда BREAK_LINE. При замене (getvar "DIMSCALE") --- (getvar "CANNOSCALE") выдает: "Не правильный аргумент "1:100" и выбрасывает из команды.
Еще один косячек. При отрисовке 4-х брек-линий создаются 4 отдельных полилинии. При отрисовке 2-х брек-линий создаются 2 отдельных полилинии и одна замкнутая по контуру с двумя "бреками".
И при отрисовке 4-х, и при отрисовке 2-х линий привязки для указания 3-ей точки не работают. Указываешь 3-ю точку через панель привязок и по завершении команды привязки включаются.
SergAM243 вне форума  
 
Непрочитано 02.06.2017, 19:40
#23
petro_f

Проектировщик
 
Регистрация: 06.10.2016
СПб
Сообщений: 303
Отправить сообщение для petro_f с помощью Skype™


Цитата:
Сообщение от SergAM243 Посмотреть сообщение
При замене (getvar "DIMSCALE") --- (getvar "CANNOSCALE") выдает: "Не правильный аргумент "1:100" и выбрасывает из команды.
Сравните вывод команды "(getvar "DIMSCALE")" и команды "(getvar "CANNOSCALE")" - это не взаимно заменяемые параметрические переменные. У одной ("DIMSCALE") вывод вещественное число а у второй ("CANNOSCALE") строка .

Цитата:
Сообщение от SergAM243 Посмотреть сообщение
При отрисовке 4-х брек-линий создаются 4 отдельных полилинии
Так и задумывалось.


Цитата:
Сообщение от SergAM243 Посмотреть сообщение
При отрисовке 2-х брек-линий создаются 2 отдельных полилинии и одна замкнутая по контуру с двумя "бреками".
Замкнутая полилиния создаётся для того, что бы видно было границу обрезки.

Цитата:
Сообщение от SergAM243 Посмотреть сообщение
И при отрисовке 4-х, и при отрисовке 2-х линий привязки для указания 3-ей точки не работают. Указываешь 3-ю точку через панель привязок и по завершении команды привязки включаются.
Задумывалось для того, что бы удобно было ставить точку. Но сам попробовал и мне теперь это кажется не очень хорошей идеей. Так что в версии 2.7 отключу это. Освежите версию..
__________________
Если ты разговариваешь с идиотом - убедись что он не занят тем же!
petro_f вне форума  
 
Непрочитано 06.06.2017, 08:59
#24
SergAM243

инженерю чуть
 
Регистрация: 14.07.2008
Севастополь
Сообщений: 40
<phrase 1=


Цитата:
Сравните вывод команды "(getvar "DIMSCALE")" и команды "(getvar "CANNOSCALE")" - это не взаимно заменяемые параметрические переменные. У одной ("DIMSCALE") вывод вещественное число а у второй ("CANNOSCALE") строка .
Чукча не писатель, чукча - читатель!
Есть ли возможность, чтобы масштаб брался от этой переменной ("CANNOSCALE")? Именно от этой переменной (ИМХО) берется масштаб для аннотативных объектов и масштабирование прерывистых линий.

Цитата:
Замкнутая полилиния создаётся для того, что бы видно было границу обрезки.
По-моему для того, что бы видно было границу обрезки есть вариант с 4-мя брек-линиями.
2 линии - для обрезки длинного и узкого объекта. Границы обрезки по пустоте вроде бы и не нужны. А еще при этом брек-линии отрисовываются дважды, одна поверх другой.
Сейчас попробуем вариант 2.7 и отпишемся.

Вариант 2.7.
Очень понравилась организация работы программы. Но теперь при отрисовке разрывов ( и 4, и 2) они отрисовываются трижды. Два замкнутых четырехугольника из полилинии с брек-линиями и 4 (2) брек-линии.
При отрисовке обрезов ломанной линией или прямоугольником отрисовываются границы дважды, а кругом - только один.
P.S.
Большое спасибо за большую проделанную работу на благо проектного сообщества!

Последний раз редактировалось SergAM243, 06.06.2017 в 09:52.
SergAM243 вне форума  
 
Непрочитано 06.06.2017, 10:59
#25
petro_f

Проектировщик
 
Регистрация: 06.10.2016
СПб
Сообщений: 303
Отправить сообщение для petro_f с помощью Skype™


Цитата:
Сообщение от SergAM243 Посмотреть сообщение
Цитата:
Сравните вывод команды "(getvar "DIMSCALE")" и команды "(getvar "CANNOSCALE")" - это не взаимно заменяемые параметрические переменные. У одной ("DIMSCALE") вывод вещественное число а у второй ("CANNOSCALE") строка .
Чукча не писатель, чукча - читатель!
Есть ли возможность, чтобы масштаб брался от этой переменной ("CANNOSCALE")? Именно от этой переменной (ИМХО) берется масштаб для аннотативных объектов и масштабирование прерывистых линий.
Замените "(getvar "DIMSCALE")" на "(atof (substr (getvar "CANNOSCALE") (+ 2 (vl-string-position (ascii ":") (getvar "CANNOSCALE")))))"
Цитата:
Сообщение от SergAM243 Посмотреть сообщение
Вариант 2.7.
Очень понравилась организация работы программы. Но теперь при отрисовке разрывов ( и 4, и 2) они отрисовываются трижды. Два замкнутых четырехугольника из полилинии с брек-линиями и 4 (2) брек-линии.
При отрисовке обрезов ломанной линией или прямоугольником отрисовываются границы дважды, а кругом - только один.
Я не правил само ядро программы, там эта линия зачем то копируется ещё раз... Попозже, если будет время, посмотрю. В принципе мне эти линии не мешают, вот я их и не трогал...
__________________
Если ты разговариваешь с идиотом - убедись что он не занят тем же!
petro_f вне форума  
 
Непрочитано 06.06.2017, 13:32
#26
SergAM243

инженерю чуть
 
Регистрация: 14.07.2008
Севастополь
Сообщений: 40
<phrase 1=


А вот за это:
Цитата:
Замените "(getvar "DIMSCALE")" на "(atof (substr (getvar "CANNOSCALE") (+ 2 (vl-string-position (ascii ":") (getvar "CANNOSCALE")))))"
Отдельное агромадное спасибо и нижайший поклон!
SergAM243 вне форума  
 
Непрочитано 22.06.2017, 14:33
#27
Composter

Отопление и вентиляция
 
Регистрация: 31.10.2008
Москва
Сообщений: 445


еще заметил что иногда после вырезания фрагмента при сохранении файла вылезают несколько строк такого содержания
Цитата:
*Warning* Multiply owned object, handle "206CF"
и путем стандартных purge и audit от этого не избавится
Composter вне форума  
 
Непрочитано 22.06.2017, 14:50
#28
petro_f

Проектировщик
 
Регистрация: 06.10.2016
СПб
Сообщений: 303
Отправить сообщение для petro_f с помощью Skype™


Цитата:
Сообщение от Composter Посмотреть сообщение
еще заметил что иногда после вырезания фрагмента при сохранении файла вылезают несколько строк такого содержания
*Warning* Multiply owned object, handle "206CF"
и путем стандартных purge и audit от этого не избавится
А это происходит на разных чертежах? Или на одном и том же?
Текст "handle "206CF"" всегда одинаков? или меняется?
__________________
Если ты разговариваешь с идиотом - убедись что он не занят тем же!
petro_f вне форума  
 
Непрочитано 22.06.2017, 14:59
#29
Composter

Отопление и вентиляция
 
Регистрация: 31.10.2008
Москва
Сообщений: 445


происходит на разных чертежах, но не всегда. я так понял что в зависимости отколичества и сложности блоков которые попадают во фрагмент.
файл прикладываю. номер аля 206CF всегда разный, суда по entget это записи словаря, а не примитивы.
Вложения
Тип файла: dwg
DWG 2013
_050-7600-HHH-GAD-IKB-000-0000(сборка).dwg (588.2 Кб, 9 просмотров)
Composter вне форума  
 
Непрочитано 22.06.2017, 15:29
#30
petro_f

Проектировщик
 
Регистрация: 06.10.2016
СПб
Сообщений: 303
Отправить сообщение для petro_f с помощью Skype™


Цитата:
Сообщение от Composter Посмотреть сообщение
суда по entget это записи словаря, а не примитивы.
Судя по словарям - там у тебя остатки какой то проги (не меджик кад ли?) резвятся. А проблеммные объекты - это мультивыноски (MLEADER). Видимо на них или в них идут ссылки на другие словари.
(entget(namedobjdict))
(3 . "ACAD_ASSOCNETWORK")
(3 . "ACAD_ASSOCPERSSUBENTMANAGER")
(3 . "ACAD_BACKGROUND")
(3 . "ACAD_CIP_PREVIOUS_PRODUCT_INFO")
(3 . "ACAD_COLOR")
(3 . "ACAD_DETAILVIEWSTYLE")
(3 . "ACAD_FIELDLIST")
(3 . "ACAD_FLATSHOT")
(3 . "ACAD_GROUP")
(3 . "ACAD_LAYOUT")
(3 . "ACAD_MATERIAL")
(3 . "ACAD_MILLER_DICTIONARY")
(3 . "ACAD_MLEADERSTYLE")
(3 . "ACAD_MLINESTYLE")
(3 . "ACAD_PLOTSETTINGS")
(3 . "ACAD_PLOTSTYLENAME")
(3 . "ACAD_SCALELIST")
(3 . "ACAD_SECTIONVIEWSTYLE")
(3 . "ACAD_TABLESTYLE")
(3 . "ACAD_VISUALSTYLE")
(3 . "AcDbVariableDictionary")
(3 . "AEC_DISP_REP_CONFIGURATIONS")
(3 . "AEC_DISP_REP_SETS")
(3 . "AEC_DISP_REPS")
(3 . "AEC_DISPLAY_PROPS_DEFAULTS")
(3 . "AEC_PROPERTY_SET_DEFS")
(3 . "AEC_VARS")
(3 . "ASE_INDEX_DICTIONARY")
(3 . "MAGI_DATADICT")
(3 . "MAGICAD_SD")
(3 . "{24DE2741-47F6-4298-B91B-737E814BAE3E}")
__________________
Если ты разговариваешь с идиотом - убедись что он не занят тем же!

Последний раз редактировалось petro_f, 22.06.2017 в 15:53.
petro_f вне форума  
 
Непрочитано 22.06.2017, 17:32
#31
Composter

Отопление и вентиляция
 
Регистрация: 31.10.2008
Москва
Сообщений: 445


как будто без этих словарей что то изменится.удалил дублирующиеся handle , удалили словари и сделал заново . результат тот же
Вложения
Тип файла: dwg
DWG 2013
111 (2).dwg (379.2 Кб, 10 просмотров)
Composter вне форума  
 
Непрочитано 23.06.2017, 15:15
#32
petro_f

Проектировщик
 
Регистрация: 06.10.2016
СПб
Сообщений: 303
Отправить сообщение для petro_f с помощью Skype™



Обычно такая фигня происходит, если разными версиями када открывали и копировали элементы. Т.е. например 2004 кадом копируют элементы, которые были созданы в более высшей версии када, и о которых 2004 кад и не знает. А тут надо посмотреть.
А можно на пробу файл который был обработан
Цитата:
Сообщение от Composter Посмотреть сообщение
удалил дублирующиеся handle , удалили словари
- он нормально сохранялся?
__________________
Если ты разговариваешь с идиотом - убедись что он не занят тем же!
petro_f вне форума  
 
Непрочитано 26.06.2017, 14:11
#33
Composter

Отопление и вентиляция
 
Регистрация: 31.10.2008
Москва
Сообщений: 445


ну не знаю, работаю в 2014 акаде, формата более 2013 пока не встречал.
так я же выложил 2 версии файла, вторая еще более урезанная, но в ней проявляются ошибки при выполнении команды.
сохраняется то нормально только после удаления словарей выскакивают ошибки, которые прекрасно лечатся recoverall
Composter вне форума  
 
Непрочитано 26.06.2017, 15:39
#34
Рyslan


 
Регистрация: 25.07.2007
Сообщений: 2,508


VVA, взял программу в твоем посте. Вроде работает вырез фрагмента...только почему то не все что было в выделенном участке вырезается. Я с общего плана трассы трубопровода вырезал, так программа полилинию трубопровода вообще не вырезала...почему?
Открыл другой объект и план, все нормально вырезала, кусок трубопровода отобразился

На еще паре планов попробовал, вроде все работает

Последний раз редактировалось Рyslan, 26.06.2017 в 15:52.
Рyslan вне форума  
 
Непрочитано 27.06.2017, 22:47
#35
skkkk


 
Регистрация: 20.03.2008
Сообщений: 2,653


Рyslan, полилиния не штриховая? Или, может быть, с буквами тип линии? В месте пересечения с режущим контуром нет разрыва?
skkkk вне форума  
 
Непрочитано 28.06.2017, 08:00
#36
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,992


Цитата:
Сообщение от Рyslan Посмотреть сообщение
ак программа полилинию трубопровода вообще не вырезала...почему?
Цитата:
Сообщение от skkkk Посмотреть сообщение
В месте пересечения с режущим контуром нет разрыва?
Скорее всего дело в этом.
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 28.06.2017, 11:58
#37
Рyslan


 
Регистрация: 25.07.2007
Сообщений: 2,508



ну там помимо основного трубопровода есть пересечения ----Г-----Г----- или ------В-----В-------
Вот щас вырезал в этом же чертеже. Сначала не вырезалось, потом получилось
Рyslan вне форума  
 
Непрочитано 24.12.2018, 22:34 Лисп из поста 10 выдает ошибку в Автокад 2015 Ru SP2
#38
Куинбус Флестрин


 
Регистрация: 12.12.2016
Сообщений: 24


Доброго всего!

К сожалению лисп из поста 10 Fragm_Den_VVA_2016.lsp не работает в Автокад 2015 Ru SP2.

Выдает:
Первая точка прямоугольной области или [Круглая/Ломаная] <Ломаная>:
Вторая точка области:VVC: Internal Error

Про аналогичный случай писал Largo_GT (давно было правда - 2016 год):

http://www.caduser.ru/forum/index.ph...4865&PAGEN_1=5

Хотя действительно может все дело в файле.
Куинбус Флестрин вне форума  
 
Непрочитано 24.12.2018, 22:46
#39
petro_f

Проектировщик
 
Регистрация: 06.10.2016
СПб
Сообщений: 303
Отправить сообщение для petro_f с помощью Skype™


Цитата:
Сообщение от Куинбус Флестрин Посмотреть сообщение
К сожалению лисп из поста 10 Fragm_Den_VVA_2016.lsp не работает в Автокад 2015 Ru SP2.
Пробовали лисп с этого поста
__________________
Если ты разговариваешь с идиотом - убедись что он не занят тем же!
petro_f вне форума  
 
Непрочитано 24.12.2018, 23:30
#40
Куинбус Флестрин


 
Регистрация: 12.12.2016
Сообщений: 24


Увы нет, просто доверие к автору поста 10 очень велико и думаю, не только у меня. Это написано 100 раз искренне! Большая часть лиспов, которые я использую создано им. Особенно выручил в свое время лисп (для более старых версий автокада) с группами "группировка и разгруппировка объектов" (сейчас это и так есть), но в свое время GR; GRR и др.команды в контекстном меню очень выручали.
Спасибо, завтра буду смотреть лиспы пост 16. Спасибо всем!

----- добавлено через ~11 ч. -----
К сожалению все лиспы из поста 16 выдают аналогичную ошибку, причем на различных файлах (Автокад 2015 Ru SP2). При выборе фрагмента (например прямоугольной областью) происходит обводка прямоугольной областью, затем появляется контур - прямоугольник и команда прерывается и выдается ошибка:

Первая точка прямоугольной области или [Круглая/Ломаная] <Ломаная>:
Вторая точка области:VVC: Internal Error

Проверял все лиспы, откатывал автокад к старым настройкам и снова подзагружал лиспы, но ошибка все равно есть. Аналог ошибки, повторюсь отмечен был в 16 году http://www.caduser.ru/forum/index.ph...4865&PAGEN_1=5

Жалко, хороший был лисп, на более старых версиях автокада старый лисп Fragm_Den работает без проблем.
Куинбус Флестрин вне форума  
 
Непрочитано 25.12.2018, 10:54
#41
petro_f

Проектировщик
 
Регистрация: 06.10.2016
СПб
Сообщений: 303
Отправить сообщение для petro_f с помощью Skype™


Цитата:
Сообщение от Куинбус Флестрин Посмотреть сообщение
К сожалению все лиспы из поста 16 выдают аналогичную ошибку, причем на различных файлах (Автокад 2015 Ru SP2). При выборе фрагмента (например прямоугольной областью) происходит обводка прямоугольной областью, затем появляется контур - прямоугольник и команда прерывается и выдается ошибка:

Первая точка прямоугольной области или [Круглая/Ломаная] <Ломаная>:
Вторая точка области:VVC: Internal Error

Проверял все лиспы, откатывал автокад к старым настройкам и снова подзагружал лиспы, но ошибка все равно есть. Аналог ошибки, повторюсь отмечен был в 16 году http://www.caduser.ru/forum/index.ph...4865&PAGEN_1=5
Файл пример с ошибкой в студию
__________________
Если ты разговариваешь с идиотом - убедись что он не занят тем же!
petro_f вне форума  
 
Непрочитано 25.12.2018, 12:45
#42
Куинбус Флестрин


 
Регистрация: 12.12.2016
Сообщений: 24


Действительно ошибка была в файлах, как в свое время VVA и писал еще на форуме сайта caduser. В общем при переброске через WBLOCK все начинает работать и Ваш лисп (petro_f версия 2.8) и лисп от уважаемого VVA. Файлы прилагаю - файл 9 - лисп не работает (выдает вышеуказанную (пост 40) ошибку), файл 10 - работает, но правда проверил на файле с очень большим числом объектов, то может слететь, но это уже не критично. В общем проблема действительно в файле, файлы выкладываю. Спасибо petro_f за участие.
Вложения
Тип файла: dwg
DWG 2010
9.dwg (242.7 Кб, 17 просмотров)
Тип файла: dwg
DWG 2010
10.dwg (201.4 Кб, 19 просмотров)
Куинбус Флестрин вне форума  
 
Непрочитано 25.12.2018, 12:54
#43
petro_f

Проектировщик
 
Регистрация: 06.10.2016
СПб
Сообщений: 303
Отправить сообщение для petro_f с помощью Skype™


Цитата:
Сообщение от Куинбус Флестрин Посмотреть сообщение
Действительно ошибка была в файлах, как в свое время VVA и писал еще на форуме сайта caduser. В общем при переброске через WBLOCK все начинает работать и Ваш лисп (petro_f версия 2.8) и лисп от уважаемого VVA. Файлы прилагаю - файл 9 - лисп не работает (выдает вышеуказанную (пост 40) ошибку), файл 10 - работает
Странно 9 файл в автокаде 2018 нормально отработал. Дома проверю в 2015 автокаде.
Миниатюры
Нажмите на изображение для увеличения
Название: Работа плагина.PNG
Просмотров: 48
Размер:	141.2 Кб
ID:	209383  
__________________
Если ты разговариваешь с идиотом - убедись что он не занят тем же!
petro_f вне форума  
 
Непрочитано 25.12.2018, 15:42
#44
Куинбус Флестрин


 
Регистрация: 12.12.2016
Сообщений: 24


Да вот и я удивлен, файлы почищенные, вроде не проблемные. В общем я и не думал, что из-за файла, а начал готовить файл к выкладке - возьми да перебрось через WBLOCK. Хотел видео сделать. Начал снимать - смотрю все работает. Бывает. Еще раз благодарю за участие в моей проблеме.

----- добавлено через ~21 ч. -----
Просто интересно в 2015 файл № 9 как отработал. Если Вы petro_f смогли его проверить дома?
Куинбус Флестрин вне форума  
 
Непрочитано 26.12.2018, 14:00
#45
petro_f

Проектировщик
 
Регистрация: 06.10.2016
СПб
Сообщений: 303
Отправить сообщение для petro_f с помощью Skype™


Цитата:
Сообщение от Куинбус Флестрин Посмотреть сообщение
Просто интересно в 2015 файл № 9 как отработал. Если Вы petro_f смогли его проверить дома?
Нет не успел ))) Вечером занят был немного. Попробую сегодня вспомнить.

P.S. Пишите новым ответом, а то вроде уже читал текст, а там потом правки пошли

----- добавлено через ~9 ч. -----
Цитата:
Сообщение от Куинбус Флестрин Посмотреть сообщение
Просто интересно в 2015 файл № 9 как отработал. Если Вы petro_f смогли его проверить дома?
Проверил. Косячит Поправил. Выложил новую версию 2.9

Если интересна ошибка, то она тут описана. В самом плагине это строка 761. В общем всё дело было в волшебных пузырьках наличии групп объектов, а вернее в наличии выполнения command в mapcar..
По большому счёту надо все command проверить...
__________________
Если ты разговариваешь с идиотом - убедись что он не занят тем же!

Последний раз редактировалось petro_f, 26.12.2018 в 23:44.
petro_f вне форума  
 
Непрочитано 27.12.2018, 00:05
#46
Куинбус Флестрин


 
Регистрация: 12.12.2016
Сообщений: 24


Спасибо, скачал версию 2.9 и буду завтра проверять. Я тоже шерстил интернет. Смотрел, например ссылку https://www.cadtutor.net/forum/topic...-autocad-2015/.
К сожалению я никакой лиспосозидатель. Только проектировщик-пользователь. Спасибо Вам petro_f.
Как протестирую 2.9 на 2015 Ru SP2 сразу отпишусь. Всем доброй ночи!

----- добавлено через ~11 ч. -----
Протестировал на ранее не работавших файлах версию 2.9 - работает. Сложно сказать обо всех моментах, но работает. Более подробно напишу позже. Спасибо petro_f.

----- добавлено через ~11 ч. -----
Протестировал на ранее не работавших файлах версию 2.9 - работает. Сложно сказать обо всех моментах, но работает. Более подробно напишу позже. Спасибо petro_f.

----- добавлено через ~13 ч. -----
Да действительно вложение 2.9 работает и не выдает ошибки VVC: Internal Error.

Правда не обрезает некоторые динамические блоки, но это мелочи. Только некоторые, а так все норм.

Petro_f спасибо Вам!
Куинбус Флестрин вне форума  
 
Непрочитано 03.03.2020, 17:07
#47
roomjke


 
Регистрация: 30.10.2015
Сообщений: 3


А как сделать, чтобы при вырезании, блоки которые целиком попадают в область взрывались?
roomjke вне форума  
 
Непрочитано 03.03.2020, 17:12
#48
petro_f

Проектировщик
 
Регистрация: 06.10.2016
СПб
Сообщений: 303
Отправить сообщение для petro_f с помощью Skype™


Цитата:
Сообщение от roomjke Посмотреть сообщение
А как сделать, чтобы при вырезании, блоки которые целиком попадают в область взрывались?
Ну добавьте сортировку, отберите блоки и взорвите их.
__________________
Если ты разговариваешь с идиотом - убедись что он не занят тем же!
petro_f вне форума  
 
Непрочитано 18.03.2020, 16:23
#49
shartal


 
Регистрация: 12.08.2009
Сообщений: 447


В AutoCAD 2020 Не работает. В любом файле хоть из двух линий.
"
Подождите пока программа обработает все данные

Неправильное ключевое слово.

В функции "Fragm_Den" произошла ошибка."
shartal вне форума  
 
Непрочитано 18.03.2020, 19:43
#50
petro_f

Проектировщик
 
Регистрация: 06.10.2016
СПб
Сообщений: 303
Отправить сообщение для petro_f с помощью Skype™


Цитата:
Сообщение от shartal Посмотреть сообщение
В AutoCAD 2020 Не работает. В любом файле хоть из двух линий.
"
Подождите пока программа обработает все данные

Неправильное ключевое слово.

В функции "Fragm_Den" произошла ошибка."
Какая версия плагина?
__________________
Если ты разговариваешь с идиотом - убедись что он не занят тем же!
petro_f вне форума  
 
Непрочитано 19.03.2020, 10:10
#51
shartal


 
Регистрация: 12.08.2009
Сообщений: 447


Я все версии пробовал. Но не работает оказывается только в нашем корпоративном профиле и шаблоне. Буду сам ковыряться.

Последний раз редактировалось shartal, 19.03.2020 в 10:16.
shartal вне форума  
 
Непрочитано 06.06.2020, 15:42
#52
brokman


 
Регистрация: 22.09.2014
Сообщений: 492


petro_f,
Добрый день!
Пробовал версии 2.7, 2.8, 2.9, 2016_burst и от VVA. Во всех одна и таже ошибка (во вложении).
Файл могу только в личку скинуть.

Автокад 2017 со всеми пакетами.
Миниатюры
Нажмите на изображение для увеличения
Название: 123.png
Просмотров: 46
Размер:	173.8 Кб
ID:	227111  

Последний раз редактировалось brokman, 06.06.2020 в 15:47.
brokman вне форума  
 
Непрочитано 06.06.2020, 16:15
#53
petro_f

Проектировщик
 
Регистрация: 06.10.2016
СПб
Сообщений: 303
Отправить сообщение для petro_f с помощью Skype™


Цитата:
Сообщение от brokman Посмотреть сообщение
petro_f,
Добрый день!
Пробовал версии 2.7, 2.8, 2.9, 2016_burst и от VVA. Во всех одна и таже ошибка (во вложении).
Файл могу только в личку скинуть.

Автокад 2017 со всеми пакетами.
Файло очень, очень тяжёлое, пробовали его чистить?
18 кад просто умирает на нём
__________________
Если ты разговариваешь с идиотом - убедись что он не занят тем же!
petro_f вне форума  
 
Непрочитано 06.06.2020, 16:39
#54
brokman


 
Регистрация: 22.09.2014
Сообщений: 492


Цитата:
Сообщение от petro_f Посмотреть сообщение
Файло очень, очень тяжёлое, пробовали его чистить?
18 кад просто умирает на нём
Сейчас почистил выполнив 2 команды: purge и audit.
И вроде как висит, выполняя команду, уже минут 15.
brokman вне форума  
 
Непрочитано 06.06.2020, 16:58
#55
petro_f

Проектировщик
 
Регистрация: 06.10.2016
СПб
Сообщений: 303
Отправить сообщение для petro_f с помощью Skype™


Цитата:
Сообщение от brokman Посмотреть сообщение
Сейчас почистил выполнив 2 команды: purge и audit.
И вроде как висит, выполняя команду, уже минут 15.
Как уже писали ранее, это программа не тянет тяжёлые файлы
Я так подозреваю это из-за переполнения счётчика, надо все счётчики переводить из INT в REAL.
Но у меня реально еле еле кад крутит этот файл и без плагина.
__________________
Если ты разговариваешь с идиотом - убедись что он не занят тем же!
petro_f вне форума  
 
Непрочитано 06.06.2020, 17:20
#56
brokman


 
Регистрация: 22.09.2014
Сообщений: 492


Цитата:
Сообщение от petro_f Посмотреть сообщение
Как уже писали ранее, это программа не тянет тяжёлые файлы
Я так подозреваю это из-за переполнения счётчика, надо все счётчики переводить из INT в REAL.
Но у меня реально еле еле кад крутит этот файл и без плагина.
После чистки заработало. 20 минут обрабатывал
brokman вне форума  
 
Непрочитано 06.06.2020, 17:28
#57
petro_f

Проектировщик
 
Регистрация: 06.10.2016
СПб
Сообщений: 303
Отправить сообщение для petro_f с помощью Skype™


Цитата:
Сообщение от brokman Посмотреть сообщение
После чистки заработало. 20 минут обрабатывал
Надо в инструкции писать, что перед использованием плагина чистить и проверять файлы средствами автокада.
__________________
Если ты разговариваешь с идиотом - убедись что он не занят тем же!
petro_f вне форума  
 
Непрочитано 06.06.2020, 17:32
#58
brokman


 
Регистрация: 22.09.2014
Сообщений: 492


petro_f,
Не знаете, есть ли лисп, который удаляет всё вокруг выделенной области?

----- добавлено через 41 сек. -----
Цитата:
Сообщение от petro_f Посмотреть сообщение
Надо в инструкции писать, что перед использованием плагина чистить и проверять файлы средствами автокада.
Истина!
brokman вне форума  
 
Непрочитано 06.06.2020, 17:47
#59
petro_f

Проектировщик
 
Регистрация: 06.10.2016
СПб
Сообщений: 303
Отправить сообщение для petro_f с помощью Skype™


Цитата:
Сообщение от brokman Посмотреть сообщение
Не знаете, есть ли лисп, который удаляет всё вокруг выделенной области?
Я обычно выделяю нужное и экспортирую в новый файл. Так удобнее.
Либо инвертировать выбор и удалить не нужное. Смотри вторую ссылку
__________________
Если ты разговариваешь с идиотом - убедись что он не занят тем же!
petro_f вне форума  
 
Непрочитано 12.06.2020, 21:44
#60
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,992


Цитата:
Сообщение от brokman Посмотреть сообщение
Не знаете, есть ли лисп, который удаляет всё вокруг выделенной области?
Выделение снаружи _pline
Удаление объектов находящихся за заданным контуром
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > AUTOCAD 2016 не работает программа вырезания фрагмента генплана Помогите внести изменения.

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Какой язык перспективен для инженера-конструктора с условием The_Mercy_Seat Программирование 705 17.03.2021 14:19
Информация по идентификационным кодам программ в сетевых лицензиях Autodesk KSI AutoCAD 1 14.09.2009 15:59
Фундамент с динамическими нагрузками в Scad Tlelaxu SCAD 9 31.08.2007 10:44