О буфере обмена замолвим словечко… : AutoLISP / VisualLISP
Автор: Кулик Алексей aka kpblc | Дата: 16 Февраль 2011 · Прокомментировать
О том, что такое буфер обмена, распространяться не буду — и так все знают. Где-то и когда-то я рассказывал про свое видение тонкостей работы с этим понятием в AutoCAD. Искать лениво, поэтому попробую высказаться тут.
Логика работы буфера обмена в AutoCAD немного необычна. Дело в том, что после нажатия Ctrl+C выделенные объекты не только копируются в буфер (точнее, копируется их визуальное представление, насколько я понимаю), но и, дополнительно:
а) во внедокументном адресном пространстве организовывается заполнение некоей переменной полным описанием всех выделенных объектов и
б) в каталог временных файлов (обычно это %temp%) записывается полноценный dwg-файл с именем A$C<и тут цифирки-цифирки-цифирки>. Цифирки, естественно, назначаются случайным (точнее, псевдослучайным) образом.
Если идет вставка «как блок», то проще вставлять внешний файл как блок.
Но есть проблема. И не одна…
Файл, хранимый в %temp%, может запросто не удалиться даже при корректном выходе из AutoCAD (я уж молчу про Fatal Error). Это раз.
Второе. Цифры назначаются псевдослучайным образом, то есть теоретически возможна ситуация, при которой эти цифры будут повторяться.
И, наконец, третье. Описание временного блока копирования-вставки не удаляется из файла.
Представим себе ситуацию: первого марта человек открывает файл (назовем его файл1.dwg) и работает с буфером обмена, вставляя скопированное «как блок».
Естественно, на имена блоков он не смотрит, хотя и стоило бы: имя блока вида A$C1653965 мало что скажет. Ну да ладно.Проходит пару дней (или месяцев, или лет…), и проектировщик возвращается к этому файлу. Ему жизненно необходимо скопировать в этот файл кусок из другого (файл2.dwg). Все стандартно: во втором файле Ctrl+C, переход в первый, Ctrl+V — и вуаля, тушите свет, сливайте воду: на курсоре вместо скопированной таблицы болтается изображение какой-то двери. Что за дела, кричит проектировщик… Ведь в другой / новый файл все вставляется корректно!
Кричать бесполезно. Учитывая все то, что я сказал выше, получается примерно такая схема работы:
- Примитивы из файл2 копируются в буфер. Набор получает «имя» A$C1653965
- Переход в файл1. Нажимается «вставить из буфера».
- AutoCAD проверяет таблицу блоков файл1 на предмет: «а нет ли тут блока с описанием A$C1653965?»
- Естественно, что такой блок находится — ведь раньше-то буфером пользовались!
- Выполняется вставка имеющегося описания блока.
Вот и все.
Теперь о методах «борьбы»…
Естественно, что необходимо выполнять очистку файла от мусора. В идеале — каждый раз при сохранении файла.
Кроме того, крайне желательно «проходить» по таблице блоков текущего файла и переименовывать блоки копирования-вставки, гарантируя уникальность имени.
И, наконец, последнее: при закрытии AutoCAD (ну или Windows :)) желательно очищать %temp% от накопившегося мусора.
Я у себя на работе провернул первые два пункта, и с тех пор жалоб на «неправильное поведение буфера» не слышал
Что делать, если AutoCAD тормозит при копировании и вставке объектов?
mas 02.04.2015 Советы и Трюки 7
Иногда случается такая ситуация, что при попытке скопировать и вставить объекты внутри одного чертежа AutoCAD или между несколькими файлами, система зависает на несколько минут, а то и вообще аварийно завершает работу. Особенно это касается крупных проектных организаций, которые используют в работе файлы, пришедшие от подрядчиков, соисполнителей, и прочих контрагентов. При этом проблема никак не зависит от размера файла.
Основная причина возникновения такой проблемы — поврежденные данные в чертеже. Давайте разберемся, в чем может быть причина и как решить вопрос.
Восстановите чертеж
Для открывания чертежа используйте команду ВОССТАН (_RECOVER). Она позволяет проанализировать файл на ошибки в момент его открытия и исправляет их при возможности.
Если чертеж уже открыт, то для его проверки используйте команду ПРОВЕРИТЬ (_AUDIT)
Удалите лишние типы линий и прочие ненужные объекты
Для удаления неиспользуемых объектов используйте команду ОЧИСТИТЬ (_PURGE). Начиная с версии AutoCAD 2015 эта команда также позволяет удалить группы, пустые текстовые строки и данные, пришедшие из DGN файлов (из системы Microstation от Bentley).
Если у вас AutoCAD более ранний, чем 2015, воспользуйтесь утилитой AutoCAD DGN Hotfix для версий 2013 и 2014, или версией для AutoCAD 2012.
Удалите зависимости
Если на чертеж наложено слишком много зависимостей (Constrain), то это замедляет работу с рисунком и может привести к значительным проблемами при копировании и вставке. При этом если вы не видите зависимости, то это не значит, что их нет. Включить отображение зависимостей можно кнопкой на ленте или командой ОГРСТРОКА.
Для удаления зависимостей используйте команду УДАЛОГР (_DELCONSTRAIN).
Удалите лишние масштабы
«Раздутые» списки масштабов не способствуют быстрой работе файла DWG, поэтому удалите неиспользуемые аннотативные масштабы командой -СПИСМАСШТРЕД (-_SCALELISTEDIT), выберите опцию Удалить и введите *. Все неиспользуемые масштабы будут удалены.
Удалите фильтры слоев
Даже если вы удалили ненужные слои, то фильтры, в которых они фигурировали, останутся. Удалите неиспользуемые фильтры слоев с помощью команды ФИЛЬТРЫ (_FILTERS)
Очистите буфер обмена Windows
Этот совет может показаться странным, но при длительной работе программы оперативная память, выделенная под буфер обмена, становится слишком фрагментированной, особенно это становится заметным на компьютерах с минимально-допустимым объемом памяти. Перезапустите AutoCAD чтобы избежать проблем с фрагментацией.
Надеюсь, описанные проблемы помогут решить вам вопрос с долгой работой AutoCAD при копировании и вставке объектов в чертеже.
About mas
View all posts by mas →
AutoCAD, Советы и трюки
Свойства объектов из листового металла
Внутренние эскизы в Pro/Engineer
Почему копирование и вставка не работает в AutoCAD? – Assemblymade.com
Содержание
Почему копирование и вставка не работает в AutoCAD?
Используйте команду ОЧИСТИТЬ и выберите все параметры, чтобы удалить лишние типы линий, которые могут быть на чертеже. Удалить ограничения. Слишком большое количество ограничений замедлит рисование и остановит работу копирования и вставки. Чтобы удалить их, выберите все элементы на чертеже и используйте команду ДЕЛКОН.
Как скопировать и вставить из AutoCAD в AutoCAD?
Копирование и вставка с базовой точкой
- Нажмите Ctrl+Shift+C или введите COPYBASE в командной строке или .
- Выберите базовую точку.
- Выберите объекты для копирования и нажмите Enter.
- При необходимости переключитесь на чертеж, на который вы хотите вставить объекты.
- Вставьте объекты с помощью одной из показанных ранее команд.
Почему Ctrl C не работает в AutoCAD?
AutoCAD/LT требует постоянного доступа для чтения/права/удаления/перезаписи/переименования к временной папке входа в систему Windows для работы копирования/вставки. если помогает закрытие и перезапуск LT или помогает перезапуск Windows, то это обычно означает, что некоторая временная блокировка/ограниченный доступ удаляется.
Как скопировать в буфер обмена в AutoCAD?
Нажмите Ctrl+Shift+C или введите COPYBASE в командной строке. Выберите базовую точку. Выберите объекты для копирования и нажмите Enter. Теперь объекты доступны для вставки в тот же или другой чертеж.
Как очистить буфер обмена в AutoCAD?
Используйте команду -SCALELISTEDIT и выберите параметр Reset. Используйте команду ФИЛЬТРЫ, чтобы удалить все фильтры слоев. Фрагментация памяти могла привести к повреждению буфера обмена. Выйдите и перезапустите AutoCAD, чтобы сбросить его.
Почему AutoCAD зависает?
Программное обеспечение продукта повреждено из-за неправильной установки или сбоя системы: сбросьте настройки AutoCAD (см. раздел Восстановление настроек AutoCAD по умолчанию). Восстановите или переустановите AutoCAD (см. раздел Исправление или переустановка установки AutoCAD). Выполните полное удаление/переустановку (см. Рекомендуемые процедуры удаления и переустановки AutoCAD).
Что такое CTRL C в Autocad?
CTRL+C. Копирует объекты в буфер обмена Windows. CTRL+SHIFT+С. Копирует объекты в буфер обмена Windows с базовой точкой.
Как исправить ошибку копирования в буфер обмена AutoCAD?
На вкладке «Профили» установите профиль по умолчанию, <>.
- Закрыть AutoCAD.
- Начните новый чертеж со стандартного DWT.
- Используйте команду INSERT (или CLASSICINSERT), чтобы импортировать поврежденный чертеж.
- ВЗОРВАТЬ получившийся блок.
- Сохраните, закройте и снова откройте файл.
- Убедитесь, что копирование в буфер обмена работает.
Как очистить буфер обмена в Windows 10?
Чтобы очистить историю буфера обмена в Windows 10, выполните следующие действия:
- Откройте «Настройки».
- Щелкните Система.
- Нажмите на буфер обмена.
- В разделе «Очистить данные буфера обмена» нажмите кнопку «Очистить». Источник: Центр Windows.
Почему копирование и вставка зависают в AutoCAD?
При попытке копирования и вставки элементов в чертеж AutoCAD процесс зависает на долгое время (даже несколько минут) или не работает. Программа также может аварийно завершать работу или выдавать фатальную ошибку.
Проблемы с копированием и вставкой?
У меня проблемы с копированием (ctr+C) и вставкой (Crt+V) между разными рисунками. Никаких ошибок не выдает, но скопированный элемент не появляется на втором чертеже.
Как копировать и вставлять с рисунка на рисунок?
У вас всегда есть возможность использовать _WBLOCK для создания нового рисунка из элементов, которые вы хотите скопировать. Затем используйте команду _INSERT на чертеже, в который вы хотите вставить геометрию, это дает вам (при перетаскивании точки вставки) лучшее представление о положении и содержимом, с которым вы работаете.
Как удалить фильтры при копировании и вставке?
Чтобы удалить их, выберите все элементы на чертеже и используйте команду ДЕЛКОН. Сбросить список масштабов. Используйте команду -SCALELISTEDIT и выберите параметр Reset. Удалить фильтры слоев. Используйте команду ФИЛЬТРЫ, чтобы удалить все фильтры слоев. Экспорт объектов Civil 3D из проблемного чертежа в новый чертеж с помощью инструмента LandXML.
youtube.com/embed/Cr1zTX-3xFE?feature=oembed» frameborder=»0″ allow=»accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture» allowfullscreen=»»>Использование функции вырезания, копирования и вставки Windows (концепция)
Использование функции вырезания, копирования и вставки Windows (концепция)
AutoCAD 2008 Пользовательский Руководство > Создать и изменить Объекты > Изменить существующие Объекты >
Использование Windows «Вырезать, копировать и вставить»
Концепция | Процедура | Краткий справочник |
Если вы хотите использовать объекты из файла чертежа в другом приложении вы можете вырезать или копировать эти объекты на Буфер обмена, а затем вставьте их из буфера обмена в другой приложение.
Вырезать Объекты
Вырезание удаляет выбранные объекты на чертеже и сохраняет их в буфере обмена. Объекты теперь доступны для вставки в другие Майкрософт . Окна . документов.
Копировать Объекты
Вы можете использовать Буфер обмена для копирования части или всего рисунка в созданный документ другим приложением. Объекты копируются в векторном формате, который сохраняет высокое разрешение в других приложениях. Эти объекты хранятся в формате WMF (метафайл Windows) в Буфер обмена. Информация, хранящаяся в буфере обмена, затем может быть встроенный в другой документ. Обновление исходного чертежа не обновлять копию, встроенную в другое приложение.
Вставить Объекты
Приложения использовать различные внутренние форматы для хранения информации буфера обмена. Когда вы копируете объекты в буфер обмена, информация сохраняется во всех доступные форматы. Когда вы вставляете содержимое буфера обмена в чертеже используется формат, сохраняющий наибольшее количество информации. Однако вы можете переопределить этот параметр и преобразовать вставленные информацию в формате AutoCAD.
Потому что это самый простой формат для редактирования, формат AutoCAD является предпочтительным формат для копирования объектов в AutoCAD и из него. Он сохраняет все релевантная информация об объекте, включая ссылки на блоки и 3D аспекты.
Окна формат метафайла (изображения) содержит информацию о векторе экрана, и файлы можно масштабировать и печатать без потери разрешения. Использовать это формат для вставки объектов в приложения Windows, поддерживающие WMF файлы. Метафайлы, вставленные в AutoCAD, имеют более высокое разрешение, чем растровые изображения (файлы BMP), но ими не так легко манипулировать, как Объекты Автокад. Растровые изображения — это растровые изображения, состоящие из шаблон пикселей и обычно используются приложениями для рисования.
Цвет объект не изменяется при копировании в буфер обмена. Для например, белые объекты, наклеенные на белый фон, не будут видимый.