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

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

Autolisp Отрисовка и перерисовка объектов как в MagiCad

Ответ
Поиск в этой теме
Непрочитано 30.11.2010, 12:46 #1
Autolisp Отрисовка и перерисовка объектов как в MagiCad
Zaghim
 
Регистрация: 01.07.2010
Сообщений: 521

Друзья, подскажите как можно сделать следующее: нарисовать, скажем, трубы на чертеже, сохранить чертеж и выйти. Потом открыть его через время и, допустим, поменять расход или добавить врезку и что бы автоматом все это перерисовалось. Где хранить данные об объектах? Каким образом перерисовывать?
Просмотров: 3679
 
Непрочитано 30.11.2010, 18:08
#2
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Динамический блок поможет? А хранить в расширенных данных!
gomer вне форума  
 
Автор темы   Непрочитано 30.11.2010, 21:48
#3
Zaghim


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


Имеется ввиду нарисовать какую-нибудь малюсенькую точку и сделать из нее динамический блок с аттрибутами в которых хранить координаты и прочую инфу??? А что за расширенные данные, можно подробнее, пожалуйста?
Zaghim вне форума  
 
Непрочитано 30.11.2010, 23:44
#4
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Имеется ввиду сделать нормальный дин блок... который можно быстро настраивать (изменять) к нему прилепить расширенные данные... типа погонный вес... и лиспом пересчитывать спецификацию по данным блока...
gomer вне форума  
 
Непрочитано 01.12.2010, 06:11
#5
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,381


"Как в Magicad" не получится. Эта и другие системы используют не базовые штатные примитивы, а custom-объекты, наделенные специальными свойствами и методами. Они могут включать "поменял расход и все перерисовалось". Делается это на ObjectARX.
ShaggyDoc вне форума  
 
Автор темы   Непрочитано 01.12.2010, 10:50
#6
Zaghim


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


"к нему прилепить расширенные данные" вот этого никак не понимаю, можно объяснить, что это значит?
Хочется сделать вообще так, что бы поставил точки, задал расходы в помещениях по известным формулам посчитался диаметр труб и они отрисовались. Впринципе такое сделать можно, но весь вопрос в перерисовке...типа поменялся расход в комнате, нужно что бы все перерисовалось...вот какая идея...знаю, что велосипед изобретаю, но хочется свое...
Zaghim вне форума  
 
Непрочитано 01.12.2010, 11:30
#7
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,381


Цитата:
Сообщение от Zaghim Посмотреть сообщение
"к нему прилепить расширенные данные" вот этого никак не понимаю, можно объяснить, что это значит?
Хочется сделать вообще так, что бы поставил точки, задал расходы в помещениях по известным формулам посчитался диаметр труб и они отрисовались. Впринципе такое сделать можно, но весь вопрос в перерисовке...типа поменялся расход в комнате, нужно что бы все перерисовалось...вот какая идея...знаю, что велосипед изобретаю, но хочется свое...
Расширенные данные - некая информация, которая может быть присоединена к любому объекту. Имеется несколько видов (xdata, lspdata). Эту информацию легко присоединить и прочитать LISP-функциями, но в отличие, например, от атрибутов блоков, расширенные данные обычными штатными средствами нельзя просмотреть и изменить. Примеры в справке есть, хотя обычно делают дополнительный набор функций для более удобной работы.

Расширенные данные "сами собой", при изменении каких-то свойств объекта, не изменяются. Их надо изменять программно.

Велосиед изобретать не надо, надо изучать ObjectARX.
ShaggyDoc вне форума  
 
Непрочитано 01.12.2010, 11:38
#8
Do$

AutoCAD/Civil3D LISP/C#
 
Регистрация: 15.08.2008
Санкт-Петербург
Сообщений: 1,702
Отправить сообщение для Do$ с помощью Skype™


Цитата:
Сообщение от Zaghim Посмотреть сообщение
весь вопрос в перерисовке...типа поменялся расход в комнате, нужно что бы все перерисовалось...
Цитата:
Сообщение от ShaggyDoc Посмотреть сообщение
надо изучать ObjectARX.
Мне вот интересно, а лиспом с помощью реакторов с этим не справиться? Или однозначно - ObjectARX?
Do$ вне форума  
 
Автор темы   Непрочитано 01.12.2010, 11:59
#9
Zaghim


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


С расширенными данными разобрался, понял как делать, ничего сложного. Т.е. при изменении исходных данных, все расширенные данные можно будет изменить. А как насчет перерисовки? С чего начать изучение ObjectARX, куда копать?
Zaghim вне форума  
 
Непрочитано 01.12.2010, 13:50
#10
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,381


Цитата:
Мне вот интересно, а лиспом с помощью реакторов с этим не справиться? Или однозначно - ObjectARX?
Кое-что можно делать и с помощью реакторов. Но не то, что подразумевает Zaghim.

Реактор отслеживает какие-то события. Можно предусмотреть какие-то действия и с расширенными данными - в зависимости от их типа, назначения, создавшего их приложения. А потом еще что-то в зависимости от самих изменившихся исходных данных. Возможностей не так уж много, но их можно с умом использовать.

Например, можно привязывать специальной программой данные об объекте для составления спецификаций. Не примитивно в виде атрибутов блока, а в виде ссылки на запись в базе данных оборудования. Просмотр данных из БД можно сделать специальной программой, которая быдет показывать информацию при щелчке по примитиву. Потом можно сводку сделать, туда не попадут удаленные объекты. При этом технические характеристики будут всегда актуальные, так как БД может вестись в единственном экземпляре.

Цитата:
С чего начать изучение ObjectARX, куда копать?
Начинать с начала - т.е. с изучения документации. Копать надо "клад", чтобы накопать денег на приобретение VS.

Книжек русских нет и не будет, кое-что можно найти в Интернет. Осваивать начальный уровень придется с год, и это ещё не заветные custom-объекты.
ShaggyDoc вне форума  
 
Автор темы   Непрочитано 01.12.2010, 14:54
#11
Zaghim


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


Да уж, обрадовали))) Ладно, будем думать...
Zaghim вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Autolisp Отрисовка и перерисовка объектов как в MagiCad

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
масштабирование объектов в AutoLISP sazone LISP 12 09.04.2009 15:52
AutoLISP: Определение количества экземпляров созданных COM объектов Supermax LISP 13 22.11.2008 20:31
FILTER / фильтр BM60 Справочник команд 0 08.07.2008 15:35