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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Дополнительные команды для Аннотативных масштабов. Удаление лишних масштабов, копирование масштабов между объектами и т.п.

Дополнительные команды для Аннотативных масштабов. Удаление лишних масштабов, копирование масштабов между объектами и т.п.

Ответ
Поиск в этой теме
Непрочитано 01.02.2008, 22:12 1 | #1
Дополнительные команды для Аннотативных масштабов. Удаление лишних масштабов, копирование масштабов между объектами и т.п.
Red Nova
 
ՃԱՐՏԱՐԱԳԵՏ, Տ.Գ.Թ.
 
Торонто
Регистрация: 23.10.2007
Сообщений: 1,980

В первом сообщении выкладываю всю главную информацию. Прикрепляю последнюю версию кода и иконки для команд.

Kr_DeleteAllObjectScale - удаляет все аннотативные масштабы примитивов и добавляет им текущий масштаб рабочего пространства.



RN_MatchAnntScale - Копируем аннотативный масштаб (масштабы) с одного объекта на другой (другие).
По сути это Match Properties, но только для аннотативных масштабов.



RN_SetAnntScaleFromObj - Выбираем примитив и его аннотативный масштаб назначается текущим масштабом рабочего пространства.
(Предполагается что мы держим только один аннотативный масштаб у примитива. Если масштабов несколько берется за основу первый из списка)


____________________________________________________________________________________________________________________
Еще очень давно, когда только появились аннотативные масштабы, я не перешел на них из за ограниченного на мой взгляд функционала. В некотором роде схожие масштабы имелись в СПДС. Естественно было и много отличий, но основная суть была одинакова.
Мне казалось очень нелогичным что в акаде не было предусмотрено функции для быстрого изменения аннотативного масштаба. Если нужно было поменять масштаб у всех элементов в одном узле, то предполагалось залезать к ним в свойства, открыть таблицу с масштабами, добавить новый и удалить старый. Еще ничего если скажем нужно было поменять масштаб только для размеров, их можно выбрать все вместе и залезть к ним в общую таблицу масштабов через свойства. Но если аннотативных объектов есть несколько видов, то нужно было выбирать каждую дисциплину отдельно, и залезать по очереди к ним в свойства.... Короче очень и очень непродуманно. Данную идею реализовал и выложил на этой ветке Krieger. Так уж вышло что я только спустя годы начал пользоваться аннотативными масштабами (когда остался без СПДС). Сейчас я считаю что аннотативные мастабы даже удобнее чем масштабы СПДС. Ведь аннотативности поддается куда больше объектов (штриховки, блоки и т.п.). Со временем и с помощью более продвинутых форумчан я добавил и новые команды (RN_MatchAnntScale и RN_SetAnntScaleFromObj).
____________________________________________________________________________________________________________________
Исходный текст сообщения.
Уважаемые коллеги. Немного в качестве предисловия. Сам я пользуюсь СПДС, глюки некоторые конечно нервируют, но в основном заметно облегчает работу конструктора. Кто хоть раз видел, знает, как удобно устроены в СПДС выноски, разрезы, сварные швы и т.п. Но все это в принципе и в самом Автокаде можно сделать при помощи динамических блоков или типов линий. Что до недавнего времени было лично для меня главным преимуществом СПДС – это способность без проблем изменять масштабы символов, что очень помогает, когда чертишь все 1:1 (как я и делаю). “До недавнего времени”, поскольку установив 2008-й Автокад и увидев аннотативность, я было подумал что вот наконец и Autodesk додумался. Но рано радовался. Уж больно перемудрили, на мой взгляд, с аннотативностью. Чтобы поменять, к примеру, масштаб размера, приходится зайти к нему в свойства, добавить нужный масштаб (если не хочешь чтоб лишние масштабы глаза мозолили, то старый надо стирать) потом выделить обьект, поменять масштаб. Долго и нудно. В СПДС все гораздо быстрее. Выделил объект поменял масштаб. Все.
Неужели я прав и нельзя облегчить переход из одного масштаба в другой используя аннотативность.

Разделю мешающие мне факторы по пунктам.
1.Лишняя информация на экране. Когда у объекта в свойствах много масштабов это действует на нервы. Выделяешь объект и все возможные размеры видны. По-моему это лишнее.
2.Надо лезть в свойства. Возьмем к примеру размеры. В параметрах стиля нельзя задать нужные масштабы. Для этого нужно отдельно выбирать объект и править свойства. Есть вариант add current scale, но тоже не самый удобный вариант.
В идеале я представляю изменение масштаба так. Выделил объект, поменял его масштаб и все.
Возможно ли подчинить такому методу работы аннотативность? Может есть какой то вариант настройки или макрос позволяющий подправить настройки. Работать макрос мог бы так. Выбираешь объект, меняешь масштаб, при этом предыдущий масштабный коэффициент стирается из памяти объекта, и добавляется текущий. Таким образом можно было избежать ненужной возни.

Изображения
 

Вложения
Тип файла: rar Annotative tools icons.rar (16.7 Кб, 197 просмотров)
Тип файла: lsp Annotative Tools.lsp (6.9 Кб, 307 просмотров)


Последний раз редактировалось Кулик Алексей aka kpblc, 28.11.2016 в 09:02.
Просмотров: 42801
 
Автор темы   Непрочитано 03.02.2008, 21:23
#2
Red Nova

ՃԱՐՏԱՐԱԳԵՏ, Տ.Գ.Թ.
 
Регистрация: 23.10.2007
Торонто
Сообщений: 1,980
Отправить сообщение для Red Nova с помощью Skype™


Из печальной судьбы форума делаю вывод. Масштабы СПДС пока вне конкуренции.
Red Nova вне форума  
 
Непрочитано 04.02.2008, 02:46
#3
wetr

инженер
 
Регистрация: 09.08.2006
Владивосток
Сообщений: 1,535
<phrase 1= Отправить сообщение для wetr с помощью Skype™


Цитата:
Уж больно перемудрили, на мой взгляд, с аннотативностью.
согласен. Но назначение аннотативности несколько другое, нежели у СПДС. Отсюда и такие заморочки
__________________
14 Ибо если вы будете прощать людям согрешения их, то простит и вам Отец ваш Небесный (Мф 6, 14)
wetr вне форума  
 
Автор темы   Непрочитано 04.02.2008, 17:05
#4
Red Nova

ՃԱՐՏԱՐԱԳԵՏ, Տ.Գ.Թ.
 
Регистрация: 23.10.2007
Торонто
Сообщений: 1,980
Отправить сообщение для Red Nova с помощью Skype™


Да, Autodesk делает возможным настроить месторасположение одного и того же элемента в разных масштабах в разных местах. Этого в СПДС нет, но интересно, сколько пользователей 2008-го AutoCAD-а этой возможностью пользуются. Я таких не знаю.
Red Nova вне форума  
 
Непрочитано 09.03.2008, 14:33
#5
Krieger

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


Я еще не перешел на 2008-ой и не скажу за аннотативность , но масштаб размерностей меняю без каких-либо проблем. Выделил - поменял стиль (или коэф-т в свойствах). В чем проблема? А если не нравится аннотативность не пользуйся, пользуйся заранее настроенными размерными стилями.
Krieger вне форума  
 
Автор темы   Непрочитано 09.03.2008, 20:40
#6
Red Nova

ՃԱՐՏԱՐԱԳԵՏ, Տ.Գ.Թ.
 
Регистрация: 23.10.2007
Торонто
Сообщений: 1,980
Отправить сообщение для Red Nova с помощью Skype™


Krieger, Да уш, для этого надо иметь штук двадцать размерных стилей. А ведь переходя в масштабе надо еще кучу вещей менять. Мультилидеры, текст, таблицы, ... Раньше у меня так и было, но теперь я познал СПДС, и на душе стало легче.
P.S. Но если все же когда-то создадут лисп как я описал в первом посте, то ох как жарко будет чертить с аннотативностью.
Red Nova вне форума  
 
Непрочитано 09.03.2008, 21:16
#7
Krieger

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


Зачем двадцать? Прям таки столько масштабов используешь в одном проекте, наверняка не больше трех-четырех? Одна кнопочка, после нажатия которой указываешь масштаб и размерный стиль готов. Установив текущим соответствующий масштабу стиль мы поменяли переменную dimscale, все остальные кнопки пляшут от нее. Если не менять масштаб у того что чертишь, то проблем нет. Поменять стиль у размера не проблема, но со всем остальным, и даже не так сложно сколько все по отдельности обрабатывать надо, согласен - жопа. То как AutoCAD работает с масштабами мне откровенно не нравится, нормальных инструментов нет, а то что есть - спрятано, все время приходится изобретать велосипед. Не знаю как там в вертикальных решениях, но можно было бы наверное выпустить нормальный продукт для 2D черчения, за такие-то бабки...
Krieger вне форума  
 
Автор темы   Непрочитано 10.03.2008, 15:04
#8
Red Nova

ՃԱՐՏԱՐԱԳԵՏ, Տ.Գ.Թ.
 
Регистрация: 23.10.2007
Торонто
Сообщений: 1,980
Отправить сообщение для Red Nova с помощью Skype™


Поставишь 2008 поймешь о чем я, они нас будто дразнят, для масштабов сделали аннотивность, но настолько ее усложниди, что аш воротит.
Red Nova вне форума  
 
Непрочитано 08.03.2009, 06:41
3 | 1 #9
Krieger

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


Red Nova, вот я и поставил AutoCAD2008

Цитата:
1.Лишняя информация на экране. Когда у объекта в свойствах много масштабов это действует на нервы. Выделяешь объект и все возможные размеры видны. По-моему это лишнее.
Переменная SELECTIONANNODISPLAY тебе поможет.
Цитата:
2.Надо лезть в свойства. Возьмем к примеру размеры. В параметрах стиля нельзя задать нужные масштабы. Для этого нужно отдельно выбирать объект и править свойства. Есть вариант add current scale, но тоже не самый удобный вариант.
В идеале я представляю изменение масштаба так. Выделил объект, поменял его масштаб и все.
Возможно ли подчинить такому методу работы аннотативность? Может есть какой то вариант настройки или макрос позволяющий подправить настройки. Работать макрос мог бы так. Выбираешь объект, меняешь масштаб, при этом предыдущий масштабный коэффициент стирается из памяти объекта, и добавляется текущий. Таким образом можно было избежать ненужной возни.
Вот такое накропал:
Код:
[Выделить все]
(defun Kr_DeleteAllObjectScale ( / ss pr cmd)
  (vl-load-com)
  (if (setq ss (ssget))
    (progn
      (setq cmd (getvar "CMDECHO"))
      (setvar "CMDECHO" 0)
      (vl-cmdf "-objectscale" ss "" "_Add" (getvar "CANNOSCALE") "")
      (command)
	  (foreach pr (dictsearch (namedobjdict) "acad_scalelist")
	    (if (and (= (car pr) 350)
	             (not (eq (getvar "CANNOSCALE") (cdr (assoc 300 (entget (cdr pr))))))
		     )
	      (vl-cmdf "-objectscale" ss "" "_Delete" (cdr (assoc 300 (entget (cdr pr)))))
	    );if
	    (command)
	    (princ)
	    );foreach
      (setvar "CMDECHO" cmd)
      );progn
    );if
  (princ)
  );defun
Эта функция устанавливает текущий аннотативный масштаб выбранным аннотативным объектам, при этом все остальные представления удаляются.
__________________
Делай хорошо, плохо само получится.
Krieger вне форума  
 
Непрочитано 10.03.2009, 07:19
#10
wetr

инженер
 
Регистрация: 09.08.2006
Владивосток
Сообщений: 1,535
<phrase 1= Отправить сообщение для wetr с помощью Skype™


Все таки аннотативность - замечательная вещь!
Ее нужно только распробовать.
Цитата:
1.Лишняя информация на экране
А не нужно включать автоматическое добавление масштабов всем объектам. Тогда их(масштабов) и не будет много. У меня максимум 2 масштаба у объекта.
Цитата:
2.Надо лезть в свойства
Не надо! Вытащи кнопочку на панель. Выделяем вид или план со всем аннотативным содержимым и нажимаем _objectscale. Удаляем или добавляем масштаб. Не так уж это и долго. А удалять предыдущий масштаб не всегда нужно.
__________________
14 Ибо если вы будете прощать людям согрешения их, то простит и вам Отец ваш Небесный (Мф 6, 14)
wetr вне форума  
 
Автор темы   Непрочитано 10.03.2009, 13:24
#11
Red Nova

ՃԱՐՏԱՐԱԳԵՏ, Տ.Գ.Թ.
 
Регистрация: 23.10.2007
Торонто
Сообщений: 1,980
Отправить сообщение для Red Nova с помощью Skype™


Krieger,
Кхе, ровно год прошел с моего предыдущего поста. Чтож, лучше поздно чем никогда. Спасибо за лисп, именно то что надо.
И за SELECTIONANNODISPLAY тоже спасибо, не знал.
wetr,
Цитата:
Цитата:
2.Надо лезть в свойства
Не надо! Вытащи кнопочку на панель. Выделяем вид или план со всем аннотативным содержимым и нажимаем _objectscale. Удаляем или добавляем масштаб. Не так уж это и долго. А удалять предыдущий масштаб не всегда нужно.
С лиспом от Krieger это теперь излишне.
__________________
Блог
Red Nova вне форума  
 
Непрочитано 10.03.2009, 14:15
#12
wetr

инженер
 
Регистрация: 09.08.2006
Владивосток
Сообщений: 1,535
<phrase 1= Отправить сообщение для wetr с помощью Skype™


Цитата:
С лиспом от Krieger это теперь излишне.
Лисп наверное хороший, но ОЧЕНЬ долгий если работать через вьюпорт. А было бы очень удобно...

Код:
[Выделить все]
Select objects:

20 objects updated to support annotation scale <1:75>.
20 objects scale removed.
0 objects scale removed.
20 objects don't support annotation scale <1:2>.
0 objects scale removed.
20 objects don't support annotation scale <1:4>.
0 objects scale removed.
20 objects don't support annotation scale <1:5>.
0 objects scale removed.
20 objects don't support annotation scale <1:8>.
0 objects scale removed.
20 objects don't support annotation scale <1:10>.
0 objects scale removed.
20 objects don't support annotation scale <1:16>.
0 objects scale removed.
20 objects don't support annotation scale <1:20>.
0 objects scale removed.
20 objects don't support annotation scale <1:30>.
0 objects scale removed.
20 objects don't support annotation scale <1:40>.
0 objects scale removed.
20 objects don't support annotation scale <1:50>.
20 objects scale removed.
0 objects scale removed.
20 objects don't support annotation scale <1:150>.
20 objects cannot remove scale.
0 objects scale removed.
20 objects don't support annotation scale <1:200>.
20 objects cannot remove scale.
0 objects scale removed.
20 objects don't support annotation scale <2:1>.
20 objects cannot remove scale.
0 objects scale removed.
20 objects don't support annotation scale <4:1>.
20 objects cannot remove scale.
0 objects scale removed.
20 objects don't support annotation scale <8:1>.
20 objects cannot remove scale.
0 objects scale removed.
20 objects don't support annotation scale <10:1>.
20 objects cannot remove scale.
0 objects scale removed.
20 objects don't support annotation scale <100:1>.
20 objects cannot remove scale.
Это у меня еще почищен scale list. А если туда зачешутся масштабы x-ref??? В 2008 нет галочки "Скрывать масштабы внешних ссылок". Хотя лиспу может быть пофигу, что они скрыты и он будет их проходить все равно. Это предположение - проверить пока не могу.

Цитата:
удалять предыдущий масштаб не всегда нужно
Нужно именно то что ЕСТЬ в автокаде)
__________________
14 Ибо если вы будете прощать людям согрешения их, то простит и вам Отец ваш Небесный (Мф 6, 14)

Последний раз редактировалось wetr, 12.03.2009 в 04:01.
wetr вне форума  
 
Непрочитано 15.03.2009, 10:30 Вот так масштабирую без анотаций
#13
Cosinus

Белая и черная магия в строительстве
 
Регистрация: 02.02.2007
Воронеж
Сообщений: 168
Отправить сообщение для Cosinus с помощью Skype™


http://dwg.ru/dnl/5481
__________________
Грызи гранит науки. Не можешь грызть - соси!
Cosinus вне форума  
 
Непрочитано 16.03.2009, 01:49
#14
Кулик Алексей aka kpblc
Moderator

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


Cosinus, это у тебя реклама? Вопрос? Предложение?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 16.03.2009, 13:39
#15
Cosinus

Белая и черная магия в строительстве
 
Регистрация: 02.02.2007
Воронеж
Сообщений: 168
Отправить сообщение для Cosinus с помощью Skype™


Кулик Алексей
Цитата:
Cosinus, это у тебя реклама? Вопрос? Предложение?
Это ты о чем? Предлагаю вариант блоков, че не так? Раньше работал в Vetcade, но в нем, если решил поменять масштаб, задолбаешься scalить.
Вот и сделал такое. Выделяешь все масштабируемые блоки фрагмента чертежа, у них в свойствах у всех есть свойство масштаб, и разом все меняешь
Если ты о граните науки, так это я всем своим придуркам-студентам говорю, которые не хотят учить сопромат.
__________________
Грызи гранит науки. Не можешь грызть - соси!
Cosinus вне форума  
 
Непрочитано 16.03.2009, 13:58
#16
Кулик Алексей aka kpblc
Moderator

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


Я именно о ссылке. Пока не пройдешь и не скачаешь - хрен поймешь чего автор хотел сказать (далеко не каждый смотрит все темы независимо ни от чего Добавлено: Другую тему, в которой ты ссылку на эти же блоки давал, не каждый участник этой темы увидит). Написал бы нечто типа "Вот вариант дин.блоков с маштабами <и здесь ссылка>" - вопросов бы не было.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 18.03.2009, 08:39 Аннотативные масштабы
#17
hiddenevi1

Инженерные сети
 
Регистрация: 03.12.2008
Сообщений: 43


Привет, all!
Не подскажите как избавиться от "левых" масштабов вроде 1:100_1, 1:10_3_2 ну и т.п. в выпадающих списках в свойствах аннотативности, масштаба видового экрана, в выпадающем списке Annotation scales на статус-баре. Offtop: В принципе, и с ними проживу но раздражает необходимость скролить довольно длинный список :-(
Вроде бы на форуме мелькала подобная тема, но, к сожалению, линк потерялся, а поиском что-то не находиться.
hiddenevi1 вне форума  
 
Непрочитано 18.03.2009, 08:55
#18
wetr

инженер
 
Регистрация: 09.08.2006
Владивосток
Сообщений: 1,535
<phrase 1= Отправить сообщение для wetr с помощью Skype™


hiddenevi1, насколько я помню проблема была у Декстрона и ему посоветовали удалить SPDS и Project...
__________________
14 Ибо если вы будете прощать людям согрешения их, то простит и вам Отец ваш Небесный (Мф 6, 14)
wetr вне форума  
 
Непрочитано 18.03.2009, 08:59
#19
Солидворкер
Moderator

Конструктор (машиностроение)
 
Регистрация: 23.10.2006
Россия
Сообщений: 22,989
<phrase 1=


Цитата:
Сообщение от wetr Посмотреть сообщение
hiddenevi1, насколько я помню проблема была у Декстрона и ему посоветовали удалить SPDS и Project...
И Windows
Солидворкер вне форума  
 
Непрочитано 18.03.2009, 12:44
#20
hiddenevi1

Инженерные сети
 
Регистрация: 03.12.2008
Сообщений: 43


2Солидворкер: не смешно
2wetr: эти программы я не использую и они не установлены, правда чертежи были получены от генпроектировщика, а что у них там - черт их знает. Есть ли иные способы почистить чертежи?
hiddenevi1 вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Дополнительные команды для Аннотативных масштабов. Удаление лишних масштабов, копирование масштабов между объектами и т.п.

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как задать масштаб и чертить в сантиметрах? ACAD AutoCAD 60 24.12.2011 17:56
Юмор 2007 Огурец Разное 1172 29.12.2007 11:16
Как изменять горизонтальный масштаб, не трогая вертикальный? Grishanovich_din AutoCAD 13 23.07.2007 19:39
Как поменять кнопку по-умолчанию в DCL? Pilot Программирование 7 14.09.2003 04:18