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

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

Вопросы о буфере обмена

Ответ
Поиск в этой теме
Непрочитано 12.11.2007, 18:55 #1
Вопросы о буфере обмена
Огурец
 
Profan
 
Москва
Регистрация: 27.04.2005
Сообщений: 6,760

Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Буфером обмена при работе в каде не пользуюсь вообще Поэтому не могу согласиться с тем, что "буфер нужен".
Дорогой Алексей!

Поясните, пожалуйста, Вашу мысль. Может быть Вы что-то другое имеете в виду? Мне вот без буфера обмена (copy-paste) работать невозможно, на одних x-ref`ах далеко не уедешь.
===
Кулик Алексей aka kpblc : Начало - в теме http://dwg.ru/f/showthread.php?t=14935

Последний раз редактировалось Кулик Алексей aka kpblc, 17.11.2007 в 17:42. Причина: Разделение тем
Просмотров: 21634
 
Непрочитано 12.11.2007, 19:40
#2
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,839


Если честно, я бы тоже с удовольствием послушал как работать без буфера - хотя наверно это дело привычки, но все же мне кажеться, что без буфера (а если точнее без буфера с базовой точкой) - гемор.
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Непрочитано 12.11.2007, 21:35
#3
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,409


Уважаемый Олег Вадимович, один меня, один Это я должен к Вам на "Вы" обращаться, но никак не наоборот.
Я имел в виду именно copy-paste. Для работы внутри одного документа проще использовать обычный _.copy (ну в крайнем случае - создать группу и ее таскать). Для варианта работы между несколькими документами у меня используется либо xref, либо _.wblock. Правда, у меня (ну не у меня, а у пользователей, которых я обслуживаю, а это требует некоторого понимания среды проектирования ) ADT, там технология отличается от чистого acad'a.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 12.11.2007, 21:48
#4
Огурец

Profan
 
Регистрация: 27.04.2005
Москва
Сообщений: 6,760
Отправить сообщение для Огурец с помощью Skype™


Дорогой Алексей!

Как я понимаю, вставка с базовой точкой практически ничем не отличается от _.wblock . Так что мы об одном и том же говорим. Тонкость же в том, что копируя в буфер обмена трёхмерные элементы, можно вставлять их в другую, соответствующим образом повёрнутую систему координат, что намного проще, чем выполнять поворот самого элемента. К примеру, я копирую модель окна вместе с вычитаемым телом в плоскости XY (условно горизонтальной), а вставляю в другую модель, привязавшись через DYN, _fa или же _ob в совершенно другую плоскость стены, часто повёрнутую под немыслимыми углами в двух плоскостях.
Огурец вне форума  
 
Непрочитано 12.11.2007, 22:21
#5
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,409


Уважаемый Олег Вадимович!
Это точно, не отличается. Есть, правда, некоторые тонкости, связанные именно с разницей систем координат и отображения объектов, но они не критичны сейчас.
Я, наверное, получу массу гневных откликов, но: я против использования copy-paste, особенно с базовой точкой и вставкой как блок. Хочу объяснить почему.
Это началось как минимум в 2002 каде, в дальнейших версиях, насколько я знаю, этот баг не исправили (вопрос - а можно ли его вообще исправить). Суть в том, что при копировании в буфер объекты объединяются в блок с именем A$C<И_тут_масса_циферок>. Эти "цифирки" теоретически назначаются случайным образом, но бывают ситуации, когда они совпадают. И вот тут начинается "интересное":
- если копировалось без базовой точки, и вставка выполнена "не как блок", то все хорошо - блок вставляется и тут же разбивается. По-моему, пока буфер обмена Windows не получит новую порцию данных, описание блока продолжает болтаться в файле на случай повторного использования (но тут плаваю, поскольку изысканий не проводил).
- если копировалось с базовой точкой, то независимо от метода вставки описание блока продолжает находиться в файле dwg. А если вставлялось как блок, то блок не разбивается (естественно), что гарантирует его сохранность.
А вот теперь представьте себе ситуацию: 01.03.2007 Вы начали работать над файлом, выполнили copy-pasteasblock (к примеру, набор мебели для прихожей), имя блока A$C123456789 (подчеркиваю - описание блока не удалено). Проходит время, Вы продолжаете использовать copy-paste, и, например, 05.04.2007 в совершенно другом файле блок копирования-вставки получает имя A$C123456789. Вы переходите в свой рабочий файл, нажимаете paste, и...
Acad ищет переданное имя (A$C123456789) по своей таблице блоков, благополучно его находит и предлагает его вставить. Все, аут. Вместо вставки окна с витражом Вы видите набор мебели для прихожей. Повторное выполнение копирования в буфер помогает далеко не всегда
Вы сможете сходу найти причину? Особенно если A$C123456789 вставлен внутрь другого блока (то есть по _.qselect его не видно)? А блоков у Вас в чертеже (имею в виду, естественно, только описания) штук этак 50.
Именно поэтому, получив на нескольких десятках файлов подобные шутки, я стал с опаской относиться к работе acad'a с буфером обмена.
---
P.S. Надеюсь, не слишком путано объяснил
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 12.11.2007, 23:24
#6
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,839


Буду знать, но до сих пор ни разу не сталкивался, а если в конце всегда _purge использовать (что я обычно делаю) поможет? (вставляю НЕ как блок)
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Непрочитано 12.11.2007, 23:41
#7
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,409


Теоретически должно помогать. Если удастся "выцепить" код, попробую где-нибудь опубликовать для очистки файла от блоков копирования-вставки.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 17.11.2007, 00:03
#8
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Это точно, не отличается.
Отличается. В детали вникать не буду, но разница есть. Для AutoCAD работа с буфером обмена - это инородное тело, внесенное относительно недавно (если учитывать всю историю существования AutoCAD). И до сих пор она не вполне корректна. Своих пользователей я постепенно отучил пользоваться этой возможностью, как и ты. И если мне приносят чертеж и я вижу в нем блоки A$XXXXXXXX - приходится применять "административный ресурс". Чтоб не повадно было!
Александр Ривилис вне форума  
 
Непрочитано 17.11.2007, 07:08
#9
Krieger

инженер (КМ)
 
Регистрация: 30.10.2004
Красноярск
Сообщений: 3,837


Такое ощущение, что AutoCAD не из мира сего...
Krieger вне форума  
 
Непрочитано 17.11.2007, 07:17
#10
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,627


Конечно, он из DOS'а.
По-моему, в 1990 году кроме AutoCAD'а и не было никаких других графических программ для проектировщика.

Последний раз редактировалось Profan, 17.11.2007 в 07:26.
Profan вне форума  
 
Непрочитано 17.11.2007, 15:49
#11
Vova

Engineer
 
Регистрация: 05.09.2003
New-York
Сообщений: 10,288


Цитата:
Сообщение от Александр Ривилис Посмотреть сообщение
...Для AutoCAD работа с буфером обмена - это инородное тело, внесенное относительно недавно (если учитывать всю историю существования AutoCAD). И до сих пор она не вполне корректна. Своих пользователей я постепенно отучил пользоваться этой возможностью, как и ты. И если мне приносят чертеж и я вижу в нем блоки A$XXXXXXXX - приходится применять "административный ресурс". Чтоб не повадно было!
Буфер обмена, если я не ошибаюсь; поя
Vova вне форума  
 
Непрочитано 17.11.2007, 16:17
#12
Vova

Engineer
 
Регистрация: 05.09.2003
New-York
Сообщений: 10,288


Цитата:
Сообщение от Александр Ривилис Посмотреть сообщение
...Для AutoCAD работа с буфером обмена - это инородное тело, внесенное относительно недавно (если учитывать всю историю существования AutoCAD). И до сих пор она не вполне корректна. Своих пользователей я постепенно отучил пользоваться этой возможностью, как и ты. И если мне приносят чертеж и я вижу в нем блоки A$XXXXXXXX - приходится применять "административный ресурс". Чтоб не повадно было!
Буфер обмена, если я не ошибаюсь, появился при AC-2000, то есть 7 автокадов назад. А до этого было реальных 5 автокадов, то есть больше половины его истории буфер был. И всегда был Wblock, что по-сути одно и тоже. Те, кто из строителей делает каждый этаж в собственном файле и имеет общую точку 0,0, (a это самая правильная работа) без буфера не могут жить. Если перенесенные блоком объекты остались в файле неразбитыми или непереименованными (A$XXXXXXXX ) то это отсутствие автокадовской культуры, и административным рессурсом можно было-бы воспользоваться и научить этой самой культуре. Например, автору приходит автоматическое письмо с просьбой самому переименовать или разбить блоки, а не то.... Но ведь отсутствие культуры сказывается не только в этом.
Цитата:
Сообщение от Кулик Алексей aka kpblc
Для работы внутри одного документа проще использовать обычный _.copy (ну в крайнем случае - создать группу и ее таскать
Далеко не всегда. Допустим, работаю с фрагментами. В каждом надо добавить несколько одинаковых штуковин, но расположенных по-разному, да еще что-то удалить или передвинуть. Одна нужная штуковина в буфере, другая в W-block-е (вспомни в книге про язык макророманд главу Альтернативные ячейки памяти) , и пошла быстрая работа. При помощи буфера также заполняется Tool Palettes. Не, без буфера никак нельзя.
Vova вне форума  
 
Непрочитано 17.11.2007, 17:38
#13
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,409


ToolPalettes можно вроде бы и использованием, например, DC, заполнять - ИМХО более верно будет.
Насчет "одинаковых" элементов: кто мешает использовать группу, я не очень понял.
ИМХО: буфер обмена - достаточно опасное и узкое место, и постоянно его использовать лично я не рекомендую
P.S. Тема плавно ушла в сторону от начального вопроса . Разделил.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 17.11.2007, 18:33
#14
Vova

Engineer
 
Регистрация: 05.09.2003
New-York
Сообщений: 10,288


Да, бывает, автокад сгенерирует одинаковое имя. Это похоже на переменную UserХХ, которую программисты критикуют по этой-же причине. Но обычно неправильное действие автокада сразу-же вызывает недоумение, точно также как вставка разных блоков с одинаковыми именами (неправильное действие пользователя). На чертеж это вряд-ли отразится, разве что время потеряется, пока разберутся. Из двух зол всегда выбирают меньшее. Несмотря на редчайший баг с одинаковым сгенерированным именем блока из буфера отказ от него замедляет работу. Буфер ведь на правой кнопке, и дежурит всегда. А wblock? Он неоперативен, если не сделать 2 спец кнопки-положить и взять. Группа здесь не поможет, ибо она в этом контексте то-же,что и Copy, только щелчки сэкономит.
Vova вне форума  
 
Непрочитано 17.11.2007, 20:41
#15
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,409


Vova, мне, честно говоря, неудобно спорить, но...
Хорошо если эту "нестыковку" можно обнаружить сразу. А если такой блок вложен? Да еще и в другом файле, который вставляется блоком?
Я попробовал нарисовать код, проверьте, у кого есть файлы с блоками A$C*:
Код:
[Выделить все]
(defun c:clear-copy-paste (/                   *error*
                           adoc                loc:get-name
                           loc:is-block-reference
                           loc:conv-ent-to-vla
                           )

  (defun *error* (msg)
    (vla-endundomark adoc)
    (princ msg)
    (princ)
    ) ;_ end of defun

  (defun loc:conv-ent-to-vla (ent)
    (cond
      ((= (type ent) 'ename) (vlax-ename->vla-object ent))
      ((= (type ent) 'vla-object) ent)
      (t nil)
      ) ;_ end of cond
    ) ;_ end of defun

  (defun loc:is-block-reference (ent)
    (and
      (= (vla-get-objectname ent) "AcDbBlockReference")
      (equal
        (vla-get-islayout (vla-item (vla-get-blocks adoc) (loc:get-name ent)))
        :vlax-false
        ) ;_ end of equal
      (equal (vla-get-isxref (vla-item (vla-get-blocks adoc) (loc:get-name ent)))
             :vlax-false
             ) ;_ end of equal
      ) ;_ end of and
    ) ;_ end of defun

  (defun loc:is-block-definition (ent)
    (and
      (= (vla-get-objectname ent) "AcDbBlockTableRecord")
      (equal
        (vla-get-islayout (vla-item (vla-get-blocks adoc) (loc:get-name ent)))
        :vlax-false
        ) ;_ end of equal
      (equal (vla-get-isxref (vla-item (vla-get-blocks adoc) (loc:get-name ent)))
             :vlax-false
             ) ;_ end of equal
      ) ;_ end of and
    ) ;_ end of defun

  (defun loc:get-name (ent / res)
    (if
      (vl-catch-all-error-p
        (setq res (vl-catch-all-apply '(lambda () (vla-get-effectivename ent))))
        ) ;_ end of vl-catch-all-error-p
       (setq res (vla-get-name ent))
       ) ;_ end of if
    res
    ) ;_ end of defun

  (defun loc:explode (ent)
    (if (and (loc:is-block-reference ent)
             (wcmatch (strcase (loc:get-name ent)) "A$C*")
             ) ;_ end of and
      (progn
        (vlax-for subent (vla-item (vla-get-blocks adoc) (loc:get-name ent))
          (loc:explode subent)
          ) ;_ end of vlax-for
        (vla-explode ent)
        (vla-erase ent)
        ) ;_ end of progn
      ) ;_ end of if
    ) ;_ end of defun

  (vl-load-com)
  (vla-startundomark
    (setq adoc (vla-get-activedocument (vlax-get-acad-object)))
    ) ;_ end of vla-startundomark
  (vlax-for blk_def (vla-get-blocks adoc)
    (vlax-for ent blk_def
      (loc:explode ent)
      ) ;_ end of vlax-for
    ) ;_ end of vlax-for
  (repeat 3 (vla-purgeall adoc))
  (vla-endundomark adoc)
  (princ)
  ) ;_ end of defun
Особо не тестировал. Слои крайне желательно держать разблокированными и размороженными. Попытался исключить из обработки внешние ссылки.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 17.11.2007, 21:02
#16
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,627


Не знаю, как удается Александру Ривилису применить административный ресурс, но наших оболтусов никакими средствами не заставишь отказаться от использования буфера обмена. Этот инструмент повсеместно используется в Windows, чем же AutoCAD хуже? Будут мучиться с "анонимными" блоками, но от буфера обмена в AutoCAD не откажутся. Я тоже.
Profan вне форума  
 
Непрочитано 18.11.2007, 00:31
#17
Vova

Engineer
 
Регистрация: 05.09.2003
New-York
Сообщений: 10,288


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
[Хорошо если эту "нестыковку" можно обнаружить сразу. А если такой блок вложен? Да еще и в другом файле, который вставляется блоком?
.
А если вложен обычный блок, но с тем-же именем, которое уже есть в файле-приемнике? В любом случая получится конфуз
Vova вне форума  
 
Непрочитано 18.11.2007, 01:36
#18
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,409


Ага, получится. Но если это дело хоть как-то можно проконтролировать и заставить использовать в качестве префикса, например, краткое наименование фирмы, то с блоками A$C* такой номер уже не прокатит.
ЯТД, каждый останется при своих, предлагаю ничью
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 18.11.2007, 01:44
#19
MS

слаботочник
 
Регистрация: 31.08.2006
Москва
Сообщений: 128


Цитата:
Сообщение от Vova Посмотреть сообщение
Буфер обмена, если я не ошибаюсь, появился при AC-2000, то есть 7 автокадов назад.
В 13-ом точно был.
__________________
С уважением, Михаил.
MS вне форума  
 
Непрочитано 18.11.2007, 01:45
#20
MS

слаботочник
 
Регистрация: 31.08.2006
Москва
Сообщений: 128


Цитата:
Сообщение от Profan Посмотреть сообщение
Конечно, он из DOS'а.
Из UNIXа
__________________
С уважением, Михаил.
MS вне форума  
 
Непрочитано 18.11.2007, 03:12
#21
Vova

Engineer
 
Регистрация: 05.09.2003
New-York
Сообщений: 10,288


Еще раз повторю главный козырь. Обмен между файлами этажей при общей базовой точке 0,0. В том числе детали из чертежей смежников. У меня часто открыты черт. мои, архитектурные, пламбинг, HVAC и Strucrural и надо посмотреть, мешает ли мне кто-нибудь или можно-ли здесь пролезть. Например, в буфере проем в перекрытии, и, подозреваю, он разного размера на чертежах. А в проеме у меня трубы с электричеством битком набиты по самую крышу. Вот и бросаю проем то туда, то сюда, пока не обнаружу либо ошибку, либо убеждаюсь, что все верно. Огромный кусок работы связан с буфером, и совсем не обязательно, что этот блок остается в чертеже. Просто с ним (буфером) идет примерка. Так что-же делать, если буфер запрещен? Через wblock такая работа будет замедленной, а это у нас не катит
MS> все-таки, в 13 втокаде буфера не могло быть. Из имеющейся у меня книги по 2000 видно,что там есть Copy to clipboard, Cut to clip board и Paste from clip board, а про базовую точку нет. Видать, она появилась в 2002
Vova вне форума  
 
Непрочитано 18.11.2007, 03:37
#22
MS

слаботочник
 
Регистрация: 31.08.2006
Москва
Сообщений: 128


Vova,
Книга по 2000, а в 13-ом не могло быть? Странная логика.
Вот у меня есть книга по 14-му и там есть про базовую точку.
Надо 13-й откопать, поставить и посмотреть, как оно было.
__________________
С уважением, Михаил.
MS вне форума  
 
Непрочитано 18.11.2007, 06:07
#23
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,627


Для MS.
UNIX - это у них там. А у нас я не хочу затрагивать версии, меньшие 10.
Как только первые 4 пункта меню в AutoCAD (File, Edit, View, Insert) стали стандартными для Windows приложений - так с этого момента и стал применяться буфер обмена в AutoCAD. А такая структура меню, с трудом вспоминаю я, была принята уже в AutoCAD 12 для Windows.
Однако в других программах ситуация с буфером обмена может быть не менее поганой, чем в AutoCAD'е. Пример - CorelDRAW. При вставке в текущий рисунок фрагмента из другого рисунка все объекты фрагмента оказываются на одном слое (текущем) в то время, как в исходном рисунке они были разнесены по разным слоям. Вот и приходится чуть ли не поштучно копировать объекты одноименных слоев. Но ведь там нет команды Wblock...
Profan вне форума  
 
Непрочитано 18.11.2007, 07:48
#24
Vova

Engineer
 
Регистрация: 05.09.2003
New-York
Сообщений: 10,288


Нашел книгу Омуры по 13 автокаду. Там есть команды Copyclip, Cutclip и Pasteclip (три стандартные для всех Win- приложений кнопки, как и сообщил Profan). Команд Copybase и Pasteblock там нет. Интересно,что в 14? По моей памяти они появились в 2000, как и дизайн-центр. В посте 21 я ошибочно сказал, что в 13 не было буфера обмена. Я имел в виду именно копирование с базовой точкой через буфер. Когда эта фитча появилась, жить стало значительно легче, и команда стала применятся в массовом порядке
Vova вне форума  
 
Непрочитано 19.11.2007, 00:13
#25
MS

слаботочник
 
Регистрация: 31.08.2006
Москва
Сообщений: 128


Vova,
Цитата:
В посте 21 я ошибочно сказал, что в 13 не было буфера обмена. Я имел в виду именно копирование с базовой точкой через буфер. Когда эта фитча появилась, жить стало значительно легче, и команда стала применятся в массовом порядке
Аааа! Ну так это совсем другое дело!
__________________
С уважением, Михаил.
MS вне форума  
 
Непрочитано 22.11.2007, 09:40
#26
Yura

ЦТП, котельные, отопление, вентиляция
 
Регистрация: 21.02.2007
Кишинев
Сообщений: 548
<phrase 1= Отправить сообщение для Yura с помощью Skype™


А ведь никто не затронул вопрос о копировании текста (не как объекта, а как текста), прямо из редактора и вставке в другой текст... Это удобно при формировании общих указаний в проекте, когда надо выдрать абзац или два из многострочного текста одного файла и вставить в другой. Ведь это идет тоже через буфер обмена. Как же без этого-то, если буфером обмена в Автокаде не пользоваться?
Yura вне форума  
 
Непрочитано 10.01.2008, 11:20
#27
Abzorbo

инженер-конструктор
 
Регистрация: 25.01.2007
Киев
Сообщений: 740
<phrase 1= Отправить сообщение для Abzorbo с помощью Skype™


Товарищи! У меня по буферу такой вопрос. В одном окне Акада я копирую необходимые мне объекты (количество их разное, от 10 до 10000) и по-рабоче-крестьянскому просто командой PASTE вставляю (вернее хочу вставить) их в другой чертёж. Я привык, когда в чертеже много деталей с разных чертежей и удобно по ним делать основной свой чертёж. И тут начинаются приколы. Либо просто высвечивается в коммандной строке _pasteclip *Invalid* либо пишет, что дублируются блоки. Блоки переименовал, всё равно не хочет вставлять. Иногда может просто "вылететь" Акад, без предупреждения или с предупреждениями о ошибках.
Такая проблема появилась в последнее время и с чертежами из АрхиКАда. Что-то можно сделать или переучиваться на другой принцип работы? Невозможно работать
З.Ы. Акад 2006, СПДС 4.0, WinXP SP1
__________________
Time and time again
I witness a birth of a new-born star.
I climb the highest mountain
To find the essence of a new era...
Abzorbo вне форума  
 
Непрочитано 10.01.2008, 11:23
#28
Fellini


 
Регистрация: 02.10.2003
Сообщений: 1,158


_audit
Fellini вне форума  
 
Непрочитано 10.01.2008, 11:25
#29
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,409


ИМХО: переучиваться. Я, откровенно говоря, уже подустал объяснять поведение AutoCAD'a при работе с буфером и все проблемы, с этим связанные (точнее, с блоками вида A$Cxxx). Используй _.wblock, внешние ссылки и т.п.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 10.01.2008, 11:38
#30
Abzorbo

инженер-конструктор
 
Регистрация: 25.01.2007
Киев
Сообщений: 740
<phrase 1= Отправить сообщение для Abzorbo с помощью Skype™


Цитата:
Сообщение от Fellini Посмотреть сообщение
_audit
Пробовал, всё ОК. Ошибок не обнаружено.

Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
ИМХО: переучиваться. Я, откровенно говоря, уже подустал объяснять поведение AutoCAD'a при работе с буфером и все проблемы, с этим связанные (точнее, с блоками вида A$Cxxx). Используй _.wblock, внешние ссылки и т.п.
Я читал твои рекомендации. Ну вот если взять отвлечённо. Я из чертежа блоки вида A$Cxxx почистил командой _purge. Нажимаю paste -- и тишина. Почему? Спрашивал у товарища своего, проблем у него нет, всё пашет. Правда не с моими чертежами, но в принципе.
__________________
Time and time again
I witness a birth of a new-born star.
I climb the highest mountain
To find the essence of a new era...
Abzorbo вне форума  
 
Непрочитано 10.01.2008, 11:52
#31
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,409


Ни _.purge, ни _.-purge не удаляет и не разбивает вставленные блоки копирования! Это надо делать либо руками, либо лиспом. Если ты читал мои опусы по этому вопросу, то видел, что "ситуация возможна, но не обязательна". То, что "у товарища все работает", пока говорит только о том, что ему повезло, можно сказать.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 10.01.2008, 12:01
#32
Abzorbo

инженер-конструктор
 
Регистрация: 25.01.2007
Киев
Сообщений: 740
<phrase 1= Отправить сообщение для Abzorbo с помощью Skype™


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Ни _.purge, ни _.-purge не удаляет и не разбивает вставленные блоки копирования! Это надо делать либо руками, либо лиспом. Если ты читал мои опусы по этому вопросу, то видел, что "ситуация возможна, но не обязательна". То, что "у товарища все работает", пока говорит только о том, что ему повезло, можно сказать.
Хм... Но тем не менее, _.purge сработал. Ясно. Будем посмотреть, когда Xref делать, а когда СTRL+C-->СTRL+V пользовать.
__________________
Time and time again
I witness a birth of a new-born star.
I climb the highest mountain
To find the essence of a new era...
Abzorbo вне форума  
 
Непрочитано 10.01.2008, 12:04
#33
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,409


Если блок копирования-вставки вложен в другой (а этот второй уже куда-то вставлен), то _.purge первый блок фиг тронет (что, в общем-то, верно).
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 10.01.2008, 12:10
#34
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Что-то мне подсказывает что в чертеже прокси-объекты...
Александр Ривилис вне форума  
 
Непрочитано 26.06.2008, 13:33
#35
Фунт Изюма

архитектор
 
Регистрация: 25.06.2008
Ростов-на-Дону
Сообщений: 32
Отправить сообщение для Фунт Изюма с помощью Skype™


При копировании Ctrl+C 5 объектов (полилинии,текст) - Кад думает секунд 40, при 20 примитивах или 1 блоке- виснет беспробудно. Файлы порядка 1,5Мб, но с кучей слоев и блоков. Файлы, созданные мной, работают нормально.
Проц 4-ядерный, 4 Гб RAM, так что видимо дело не в системе.
С чем это может быть связано?
Фунт Изюма вне форума  
 
Непрочитано 26.06.2008, 13:45
#36
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,409


С содержимым файла. Точнее, с наличием прокси-объектов.
Образец в студию! Если до вечера никто не откликнется, я просмотрю (могу пока только из дома )
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 30.03.2013, 03:35
#37
skkkk


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


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
- если копировалось без базовой точки, и вставка выполнена "не как блок", то все хорошо - блок вставляется и тут же разбивается.
Заметил такую особенность: при выходе из команды pasteclip по Escape (до указания точки вставки, разумеется) создается описание блока с именем A$CXXXXXXXXX, содержащего в себе вставляемые примитивы. Интересно, это только у меня в 2011-м так или у всех?
skkkk вне форума  
 
Непрочитано 30.03.2013, 03:37
#38
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от skkkk Посмотреть сообщение
Интересно, это только у меня в 2011-м так или у всех?
У всех и всегда в любых версиях AutoCAD.
Александр Ривилис вне форума  
 
Непрочитано 30.03.2013, 03:40
#39
skkkk


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


И на кой это надо, интересно? И как посоветуете с этим бороться, кроме как отказаться от буфера?
skkkk вне форума  
 
Непрочитано 30.03.2013, 03:49
#40
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от skkkk Посмотреть сообщение
И как посоветуете с этим бороться, кроме как отказаться от буфера?
_PURGE
Александр Ривилис вне форума  
 
Непрочитано 30.03.2013, 03:53
#41
skkkk


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


Ну это-то понятно. А чтоб по уму, но для обычного рядового пользователя (читать "тётеньки")? Переопределять pasteclip что ли, добавив туда "_.-purge" "_b" "*"? Он может и нужные описания блоков постирать... Как получить указатель на этот блок?
skkkk вне форума  
 
Непрочитано 30.03.2013, 04:03
1 | #42
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от skkkk Посмотреть сообщение
но для обычного рядового пользователя (читать "тётеньки")?
Учить его нужно. Можешь ему кнопочку сделать для очистки. Только шаблон для имён блоков (если боишься потерять нужные) сделай "A$*" вместо "*"
Александр Ривилис вне форума  
 
Непрочитано 30.03.2013, 15:34
#43
Vova

Engineer
 
Регистрация: 05.09.2003
New-York
Сообщений: 10,288


Ах где эта тема! Врезалась мне в память и с тех пор как только лезу в правую кнопку за буфером, вспоминаю Kpblc. Мол, буфер это плохо, и подтверждается плохость тем что случайно можно наткнуться на то-же имя блока. 6 лет прошло, и никак в моей практике такая случайность не наступала, хотя по 100 раз в день копирую. Везунчик я, наверное Сейчас на двух мониторах многие работают. На них два разных файла и между ними происходит обмен информацией. Если это делать при помощи Wblock то работа замедлиться в разы, и придется удалять временные файлы предыдущего Wblock-a. Кроме того кто мне расскажет как использовать команду Find для поиска сложного слова кроме как захватить ее в буфер и опустить в окно Find? Или рекомендации по неприменению буфера касаются только базовой точки?
Vova вне форума  
 
Непрочитано 30.03.2013, 16:46
#44
skkkk


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


Цитата:
Сообщение от Vova Посмотреть сообщение
случайно можно наткнуться на то-же имя блока
На мой взгляд, весьма маловероятно, что два девятизначных набора буквенно-цифровых символов, генерируемых случайным образом, совпадут.
Если такое и случится пару раз за всё время деятельности каждого конкретного пользователя AutoCAD, то это не повод отказываться от буфера обмена. Хотя всё это - дело привычки. И личного выбора.
skkkk вне форума  
 
Непрочитано 30.03.2013, 16:54
#45
Vova

Engineer
 
Регистрация: 05.09.2003
New-York
Сообщений: 10,288


Цитата:
Сообщение от skkkk Посмотреть сообщение
Хотя всё это - дело привычки. И личного выбора.
Не так. Привычка медленной работы никак не вяжется с современностью.
Vova вне форума  
 
Непрочитано 30.03.2013, 18:01
#46
Valery Brelovsky

Инженер дорожник
 
Регистрация: 22.10.2007
Израиль
Сообщений: 1,859


Тема тут крутится уже восемь лет. То что буфер нужен это однозначно, но вопрос применения это уже второй вопрос. Первое что не делаю это не вставляю из буфера как блок. Если собираюсь какойто элемент использовать много раз то не ленюсь и создаю блок. Но рядом есть мудрецы, Которые копируют болк через буфер и потом вставляют как блок, и не один раз встречал и такое. О базовой точке вообще представления не имеют хоть для буфера хоть просто для болка. Она всегда где то за пределами чертежа. Так что проблема не буфере а в понятиях его использования. А удобство есть и значительное. Работаю со ссылками и иногда просто линии нужно перенести в другой файл и не нцжно здесь ни блоков ни W_блоков. (штриховки выношу в отдельный файл и нужны линии ограничивающие покрытие дорог, троеуаров и т.п.) скопировал в буфер и вставил.
Valery Brelovsky вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Вопросы о буфере обмена



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Хочу начать изучать автокад, есть вопросы, помогите GALANT AutoCAD 126 16.06.2011 11:01
Доступ к объектам скопированным в буфер обмена МишаVBA AutoCAD 6 20.05.2006 00:41
Проблемы с копирование через буфер обмена. zenon AutoCAD 2 22.12.2005 07:20
Вопросы самоучки ( Лира ) Cole Лира / Лира-САПР 5 02.08.2005 23:32