Тема: РЕДАКТИРОВАНИЕ СТАНДАРТНОГО СПИСКА МАСШТАБОВ

Здравствуйте! Нужен совет.
AutoCAD2008,
Как Вы знаете - есть список масштабов - в нем можно забить любые необходимые масштабы.
Работать приходится с разными чертежами и, как следствие,
список масштабов постоянно увеличивается дополняясь новыми "экземплярами".
Лечится хаос возвращением к ИСХОДНОМУ СТАНДАРТНОМУ СПИСКУ МАСШТАБОВ спец_кнопкой.
Но ИСХОДНЫЙ СПИСОК не идеален - хотелось бы выкинуть из него (на всегда) некоторые не родные масштабы, что-то добавить.
ВОПРОС ЗНАТОКАМ!
(Быть может кто знает)
Где хранится ИСХОДНЫЙ СПИСОК МАСШТАБОВ?
Как этот список можно изменить?
, дабы возвращать порядок одной кнопкой - к своему, ИСХОДНОМУ списку масштабов.
Буду признателен за совет.

Re: РЕДАКТИРОВАНИЕ СТАНДАРТНОГО СПИСКА МАСШТАБОВ

Tools -> Options -> User Preferences -> Edit Scale List

Re: РЕДАКТИРОВАНИЕ СТАНДАРТНОГО СПИСКА МАСШТАБОВ

В переводе на великий и могучий предыдущая фраза звучит так:
Сервис->Настройка->Пользовательские->Изменить список масштабов
То же самое в Формат->Список масштабов
К сожалению это работает только в уже открытом чертеже. Во всех новых чертежах, и неоткорректированных старых, изменение масштаба придется повторить.

Re: РЕДАКТИРОВАНИЕ СТАНДАРТНОГО СПИСКА МАСШТАБОВ

так открой шаблон, который по умолчанию используется (например acadiso.dwt) , забей масштабы и сохрани.  во всех новых чертежах они будут.

Re: РЕДАКТИРОВАНИЕ СТАНДАРТНОГО СПИСКА МАСШТАБОВ

> Ferero
А после этого попробуй:
Format->Scale List->Reset

Re: РЕДАКТИРОВАНИЕ СТАНДАРТНОГО СПИСКА МАСШТАБОВ

LeonidSN,
спасибо - ключевой момент,
масштабы забиваются, какие нужно,
и с каждым новым "объектом" этот список есть,
НО список меняется!
У "Нас" список выростает до вертикальной стороны монитора! - ВО ВЕСЬ ЭКРАН :)
появляются артифакты типа
1_1000
1_100_2
пичём характеристики их идентичны уже забитым - это дубликаты!
лечится дело граф. кнопкой reset - справа от списка.
НО после reset опять "дюймовые" масштабы и список не мой.
(!?) Может есть возможность подредактировать что, дабы после reset список привращался в мой?
(!?) Или может переменную какую переключить чтоб список ТАК не рос.. ?
Как Вы думаете?

(изменено: Дмитрий Голиков, 13 мая 2009г. 09:47:49)

Re: РЕДАКТИРОВАНИЕ СТАНДАРТНОГО СПИСКА МАСШТАБОВ

А я вообще не могу зайти в "редактирование списка масштабов" - жму на эту кнопку и ничего не происходит. В самом списке присутствуют такие бредовые записи типа 1:20_1_2_HREF_HREF_HREF и такого бреда много (смежники постарались видать). Как это лечится, непонятно, может можно как-то вручную зайти и удалить эти дурацкие масштабы? Не сталктвался ли кто? (2008 ADT)

Урааааа!!! Зашел в 2009 ADT в этот чертеж, прога ругнулась, дескать слишком много масштабов и предложила очистить список. Все заработало - в 2008 кнопка редактирования масштабов работает!

Re: РЕДАКТИРОВАНИЕ СТАНДАРТНОГО СПИСКА МАСШТАБОВ

Дмитрий Голиков пишет:

Как это лечится, непонятно,

Command: -scalelistedit
Enter option [?/Add/Delete/Reset/Exit] <Add>: r
Reset scale list to defaults? [Yes/No] <No>: y
Scale list reset to default entries.

Re: РЕДАКТИРОВАНИЕ СТАНДАРТНОГО СПИСКА МАСШТАБОВ

Или -списмасштред в русифицированном автокаде...

Re: РЕДАКТИРОВАНИЕ СТАНДАРТНОГО СПИСКА МАСШТАБОВ

Может есть возможность подредактировать что, дабы после reset список привращался в мой?

Возможность есть

Re: РЕДАКТИРОВАНИЕ СТАНДАРТНОГО СПИСКА МАСШТАБОВ

Владимир Азарко пишет:

ЦитатаМожет есть возможность подредактировать что, дабы после reset список привращался в мой?

Возможность есть

ВОТ ЭТО очень интересно,
8) надо попробовать..
СПАСИБО Владимир Азарко

Re: РЕДАКТИРОВАНИЕ СТАНДАРТНОГО СПИСКА МАСШТАБОВ

Не ставит масштабы вида 1:25, ну или 1:13.

Re: РЕДАКТИРОВАНИЕ СТАНДАРТНОГО СПИСКА МАСШТАБОВ

ARX, Это ты к чему? Кто и где не ставит?

Re: РЕДАКТИРОВАНИЕ СТАНДАРТНОГО СПИСКА МАСШТАБОВ

Цитата
Может есть возможность подредактировать что, дабы после reset список привращался в мой?

Возможность есть

По ссылке лежит лисп, который изменяет список масштабов на свой, заранее составленный список.
Вот этот:

("1:1" "1:2" "1:10" "1:50" "1:100" "2:1") ;_Здесь перечисляем нужные масштабы

Если здесь поставить масштабы вида 1:25, ну или 1:13 или другой, то они не будут выполнены. В меню Формат/Список масштабов их не будет.

Re: РЕДАКТИРОВАНИЕ СТАНДАРТНОГО СПИСКА МАСШТАБОВ

А вот еще о списке масштабов. АС-2010. Хочется, допустим, использовать команду pasteorigin или pasteblock, a на контекстном меню правой кнопки эти строки неактивны. Оказалось, виноват чистый список масштабов, в котором ничего лишнего нет. Стоит вызвать его и сказать ОК, ничего не изменяя, как строки в меню становятся активными

Re: РЕДАКТИРОВАНИЕ СТАНДАРТНОГО СПИСКА МАСШТАБОВ

ARX, Ты не внимательно читал. Цитата по ссылке

;;Удаляем  все масштабы (scalelist) не перечисленные в списке-шаблоне

Там ничего не говорится про добавление

Re: РЕДАКТИРОВАНИЕ СТАНДАРТНОГО СПИСКА МАСШТАБОВ

У меня масштабы начали плодиться, как кролики, после установки Project Studio и SPDS. Кто из них конкретно балуется, не знаю..

Re: РЕДАКТИРОВАНИЕ СТАНДАРТНОГО СПИСКА МАСШТАБОВ

Владимир, вот лисп:

;;;Удаляем  все масштабы (scalelist) не перечисленные в списке-шаблоне
(defun restore-scale-list ()
  (vl-load-com)
  (foreach sc (dictsearch (namedobjdict) "acad_scalelist")
    (if (and (= (car sc) 350)
             (not (member (cdr (assoc 300 (entget (cdr sc))))
                          '("1:1" "1:2" "1:10" "1:50" "1:100" "2:1") ;_Здесь перечисляем нужные масштабы
                  ) ;_ end of member
             ) ;_ end of not
        ) ;_ end of and
      (vl-catch-all-apply
        'vla-delete
        (list (vlax-ename->vla-object (cdr sc)))
      ) ;_ end of vl-catch-all-apply
    ) ;_ end of if
  ) ;_ end of foreach
) ;_ end of defun
(restore-scale-list)

строку

'("1:1" "1:2" "1:10" "1:50" "1:100" "2:1") ;_Здесь перечисляем нужные масштабы

меняю на строку

'("1:1" "1:13" "1:2" "1:5" "1:10" "1:25" "1:50" "1:100" "1:1000") ;_Здесь перечисляем нужные масштабы

В результате по команде Формат/Список масштабов получаю следующее:
1:1, 1:2, 1:5, 1:10, 1:50, 1:100
Что делаю не так?

----

AlexV,
со страшно длинным списком масштабов боротся нужно следующим лиспом:

(defun restore-scale-list ()
  (command "_.-scalelistedit" "_r" "_y" "_e")
  ) ;_ end of defun

(restore-scale-list)

сам лисп закидывай в автозагрузку автокада и все, проблема решена.
Сам лисп не мой, к стыду своему автора не помню, но кто-то из гуру автокада, КРЫС или VK.

Re: РЕДАКТИРОВАНИЕ СТАНДАРТНОГО СПИСКА МАСШТАБОВ

ARX, Все делаешь правильно. Если 1:13 не было в исходном списке масштабов, то его и не будет. Еще раз повторю

Удаляем (и только !) все масштабы (scalelist) не перечисленные в списке-шаблоне

Приведенный код так же можно закинуть в автозагрузку, тогда из длинного списка масштабов останутся только перечисленные в шаблоне.
Ссылки на осуждение scalelistedit здесь

Re: РЕДАКТИРОВАНИЕ СТАНДАРТНОГО СПИСКА МАСШТАБОВ

Написал небольшую программу на основе VVA для анализа и автоматического удаления длинного списка масштабов. Если список масштабов больше 50, то запускается очистка-это попытка воспроизвести реакцию на длинные списки масштабов реализованную в ACAD 2009. Может кому пригодится.

;;; Удаляем  все масштабы, если их больше 50
;;; Moltasov AI 21.10.2008
(defun c:scalelist_del ( / n sc sc1)
  (setq n 0);счетчик кол-ва масштабов
  (foreach sc (dictsearch (namedobjdict) "acad_scalelist")
    (if (= (car sc) 350)
        (foreach  sc1 (entget (cdr sc))
     (if (= (car sc1) 300)
        (setq n (+ n 1))
     );if
        );for
    );if
  ) ;end of foreach
(textscr)
(princ "\nTotal:")(princ n)
(if (> n 50)
    (progn 
      (princ "\n\nСлишком много масштабов (")
      (princ n)
      (princ ")-запускаем процедуру уменьшения количества\n\n")
      (command "-scalelistedit" "_R" "_Y" "_E")
    )
    (princ "\nВсе в порядке")
)
(princ)
)

Для автоматического запуска найти и вставить в файл acad2008doc.lsp следующие строки

(load "scalelist_del")
(c:scalelist_del)

сохранив приведенный код программы под именем scalelist_del.lsp в acad'овскую папку Support.
Теперь при открытии любого чертежа будет выполнятся данная программа.

(изменено: Евгений Толстов, 22 октября 2009г. 15:44:42)

Re: РЕДАКТИРОВАНИЕ СТАНДАРТНОГО СПИСКА МАСШТАБОВ

Можно попробовать сделать намного примитивнее и проще
Например как писал выше Александр Молтасов - добавить в файл .. .\Support\acad****doc.lsp несколько строк с макрокомандами вместо написания-вызова лисп-програмки:
(command "-списмасштред" "с" "д" "в") - сброс-выход
(command "-списмасштред" "д" "1-13" "1:13" "в")- добавление-выход
(command "-списмасштред" "д" "1-25" "1:25" "в")
....
(command "-списмасштред" "д" "1-1000" "1:1000" "в")

или в одну строку:
(command "-списмасштред"  "с" "д" "д" "1-13" "1:13" "д" "1-25" "1:15" ... "д" "1-1000" "1:1000" "в")