Тема: Клонирование с помощью insert
см. пример по теме клонирования на www.arxmaster.by.ru
Информационный портал для профессионалов в области САПР
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Форумы CADUser → Программирование → ObjectARX → Клонирование с помощью insert
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
см. пример по теме клонирования на www.arxmaster.by.ru
Привет всем и с Наступающим НГ!
Вот решил поработать... Не получается.
Пробую клонировать объекты в другую базу с помощью insert. Вот код:
Acad::ErrorStatus es = Acad::eNotImplementedYet; AcApDocument * pCurDocument = acDocManager->curDocument(); // Найти документ, отличный от current AcApDocumentIterator *pDocIter = acDocManager->newAcApDocumentIterator(); AcApDocument *pSecondDoc = NULL; for (; !pDocIter->done(); pDocIter->step()) { AcApDocument *pDoc = pDocIter->document(); if (pDoc != pCurDocument) { pSecondDoc = pDoc; if (pSecondDoc) break; } } delete pDocIter; if (pSecondDoc) { AcDbDatabase *pCurDatabase = pCurDocument->database(); AcDbDatabase *pSecondDatabase = pSecondDoc->database(); AcGeMatrix3d xform; es = acDocManager->lockDocument(pSecondDoc, AcAp::kWrite); es = pSecondDatabase->insert(xform, pCurDatabase, Adesk::kFalse); es = acDocManager->unlockDocument(pSecondDoc); }
Коды возврата нормальные. Только во втором документе объекты не отображаются. REGEN и REDRAW не помогает. Что характерно, закрытие этого документа приводит к обвалу акада. Если его сохранить в файл, потом прочитать, в нем все нормально будет.
Заранее спасибо всем.
Еще замечание. Если клонировать объекты наоборот, в current базу из какой-нибудь другой, все работает нормально. Есть комментарии?
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Форумы CADUser → Программирование → ObjectARX → Клонирование с помощью insert
Форум работает на PunBB, при поддержке Informer Technologies, Inc