1. ВНИМАНИЕ! В течении пары дней +- будет переезд форума на более защищённый сервер. Возможны перебои в работе.
    Скрыть объявление

Вопрос по динамическим блокам

Тема в разделе "Autodesk", создана пользователем VITALY874, 23 фев 2013.

  1. VITALY874

    VITALY874 Форумчанин

    Создал динамический блок и теперь нужно сделать так чтобы при вставки он автоматически нумеровался от начально заданного значения. Может кто подскажет как это сделать?
     
  2. pashuha

    pashuha Форумчанин

    Это делаеться через лисп, для блоков с 1м текстовым атрибутом такой:

    (defun C:KAN ( / ass ats cmd pca dn n)
    (setq adoc (vla-get-ActiveDocument (vlax-get-acad-object))
    cmd (getvar "CMDECHO") pca (getvar "PICKAUTO") n 0);setq
    (setvar "CMDECHO" 0)
    (initget "Number Renumber")
    (setq kw (getkword "\n[Number/Renumber]? <N>"))
    (if (null kw) (setq kw "Number"))
    (if (= kw "Number") (setvar "PICKAUTO" 0))
    (setq dn (getint "\nInput Start or Offset Number: <1>"))
    (if (null dn) (setq dn 1))
    (prompt (strcat "\nSelect Blocks for " kw "ing: "))
    (ssget)
    (setq ass (vla-get-ActiveSelectionSet adoc))
    (vlax-for sb ass
    (if (= (vla-get-objectname sb) "AcDbBlockReference")
    (progn
    (setq ats (vlax-safearray->list (vlax-variant-value (vla-getattributes sb))))
    (vla-put-TextString (car ats)
    (if (= kw "Number") (itoa (+ n dn))
    (itoa (+ (atoi (vla-get-TextString (car ats)) dn)))));vla-put
    (setq n (1+ n)));progn
    (alert "Oops! It's not a Block!"));if
    );vlax-for
    (setvar "CMDECHO" cmd)
    (setvar "PICKAUTO" pca)
    );end
    загружаем в автокад, команда kan, выбираем нумерация/перенумерация, начальный номер, выделяем блоки нажимаем ввод.
     
    VITALY874 и Qvinto нравится это.
  3. VITALY874

    VITALY874 Форумчанин

    Большое спасибо, завтра буду пробовать:-)
     
  4. VITALY874

    VITALY874 Форумчанин

    а как задать этот 1м текстовый атрибут
     
  5. pashuha

    pashuha Форумчанин

    "1м" это я сокращенно написал слово "одним", извиняюсь. Просто к вашему блоку добавьте атрибут, можно ничем его не заполнять.
     
  1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление
  1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление