dwg.ru forum rss xml
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму |

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

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

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

jackUAROBEY вне форума Вставить имя

Всем привет. Программа 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 Кб, 70 просмотров)
Тип файла: dwg
DWG 2007
Чертеж1.dwg (154.6 Кб, 486 просмотров)


Последний раз редактировалось jackUAROBEY, 20.01.2016 в 08:17.
Просмотров: 6586
 
Непрочитано 02.06.2017, 13:52
#21
Composter

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


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

инженерю чуть
 
Регистрация: 14.07.2008
Севастополь
Сообщений: 30
Отправить сообщение для SergAM243 с помощью ICQ


Цитата:
Сообщение от 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
Сообщений: 46


Цитата:
Сообщение от 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
Севастополь
Сообщений: 30
Отправить сообщение для SergAM243 с помощью ICQ


Цитата:
Сравните вывод команды "(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
Сообщений: 46


Цитата:
Сообщение от 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
Севастополь
Сообщений: 30
Отправить сообщение для SergAM243 с помощью ICQ


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

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


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


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


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

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


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


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


Цитата:
Сообщение от 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
Москва
Сообщений: 344


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


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



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

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


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


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


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

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

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

AutoCAD_2008->2011
 
Регистрация: 20.03.2008
Московская область
Сообщений: 2,055


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

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,481
Отправить сообщение для VVA с помощью ICQ Отправить сообщение для VVA с помощью Skype™


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


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



ну там помимо основного трубопровода есть пересечения ----Г-----Г----- или ------В-----В-------
Вот щас вырезал в этом же чертеже. Сначала не вырезалось, потом получилось
Рyslan вне форума вставить имя Обратить внимание модератора на это сообщение  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > AUTOCAD 2016 не работает программа вырезания фрагмента генплана Помогите внести изменения.

Инженерные консультации
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Быстрый переход

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

|| Главная || Каталог САПР || Тендеры || Публикации || Объявления || Биржа труда || Download || Галерея ||
|| Библиотека || Кунсткамера || Каталог предприятий || Контакты || Файлообменник || Блоги ||


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