Сообщество программистов Autodesk в СНГ

ADN Club => AutoCAD .NET API => Тема начата: Atomohod от 18-09-2019, 20:06:29

Название: Рaste to original coordinates из кода
Отправлено: Atomohod от 18-09-2019, 20:06:29
Здравствуйте!

Подскажите, пожалуйста, как в средствах API вызвать команду "paste to original coordinates" для вставки в другой чертеж. Отдельного метода я что-то никак не найду. Как организовать такую вещь?
Название: Re: Рaste to original coordinates из кода
Отправлено: Александр Ривилис от 18-09-2019, 20:08:38
Здравствуйте!

Подскажите, пожалуйста, как в средствах API вызвать команду "paste to original coordinates" для вставки в другой чертеж. Отдельного метода я что-то никак не найду. Как организовать такую вещь?
В API такого нет. Так что только запуск команды. Непонятно только зачем это нужно.
Название: Re: Рaste to original coordinates из кода
Отправлено: Atomohod от 18-09-2019, 21:38:38
Непонятно только зачем это нужно.
Задача у меня такая - нужно обеспечить синхронизацию чертежей. Есть 11 чертежей в разных папках по специализациям отделов. Каждый из них живет своей жизнью, необходимо каждый день ночью автоматически создавать из них один единый мастер-чертеж. Не ссылочный из xRef, а как будто он выполнен одним человеком в одном файле изначально. Вот я и думаю как это организовать. А если запуск команды, то как я ей передам нужные мне объекты-ведь их некому выделить на чертеже?
Название: Re: Рaste to original coordinates из кода
Отправлено: Александр Ривилис от 18-09-2019, 22:55:55
Задача у меня такая - нужно обеспечить синхронизацию чертежей.
Тогда я не понял причем здесь CopyClip/PasteOrig? Смотри в сторону Database.WblockCloneObjects.
Название: Re: Рaste to original coordinates из кода
Отправлено: Atomohod от 18-09-2019, 23:00:39
Тогда я не понял причем здесь CopyClip/PasteOrig?
Как самый простой вариант - содержимое каждого чертежа копировать и вставить в те же координаты, но в мастер-чертеж. Предварительно системы координат каждого из 11 чертежей согласованы с системой координат мастер-чертежа. Может быть есть какой-то иной путь, о котором я не догадался?
Название: Re: Рaste to original coordinates из кода
Отправлено: Александр Ривилис от 18-09-2019, 23:05:39
Может быть есть какой-то иной путь, о котором я не догадался?
Есть множество путей. Например, тот, о котором я уже написал с использованием Database.WblockCloneObjects. Открываешь поочередно все 11 чертежей и при помощи Database.WblockCloneObjects копируешь в "мастер-чертеж" содержимое пространства модели (если все работают в модели) каждого из этих чертежей.
Второй путь - использовать Database.Insert
Название: Re: Рaste to original coordinates из кода
Отправлено: Atomohod от 18-09-2019, 23:11:15
Database.WblockCloneObjects.
А при таком способе возможно будет переключить отображения динамического блока при вставке в мастер-чертеж? Суть в вот в чем - есть динамический блок крана. В рабочем чертеже он установлен с видимостью "рабочее положение", в мастер-чертеже нужно переключить его в отображение "по-походному" так можно будет сделать?
Название: Re: Рaste to original coordinates из кода
Отправлено: Александр Ривилис от 18-09-2019, 23:13:15
А при таком способе возможно будет переключить отображения динамического блока при вставке в мастер-чертеж?
Думаю что будет можно. Проверьте сами. Только не "при вставке", а "после вставки".
Название: Re: Рaste to original coordinates из кода
Отправлено: Atomohod от 18-09-2019, 23:19:45
Думаю что будет можно.
Буду пробовать, спасибо!
Название: Re: Рaste to original coordinates из кода
Отправлено: Александр Ривилис от 18-09-2019, 23:21:38
Atomohod,
С Database.Insert должно быть проще.