Темы сайта
Интегрированная система ruCAD - приложение к базовой системе AutoCAD.

Система ruCAD - это приложение строительного профиля в широком понимании, то есть предназначенная для автоматизации строительного проектирования, реконструкции и технического перевооружения любых зданий и сооружений.В отличие от других систем, ориентированных на конкретную область применения, в ruCAD включены средства для комплексной разработки проектной документации наиболее распространенных разделов проекта, выполняемых во всех проектных организациях.
Система управления контентом MODx
Ограничения
В соответствии с Договором между издательством и авторами мы не имеем права полностью публиковать в Интернет материалы книги.

Но, в пределах установленной квоты, будут публиковаться отдельные главы. Кроме того, на сайте будут размещаться материалы, не вошедшие в книгу и полные версии сокращенных по техническим причинам глав.

Так помечены материалы, не опубликованные на сайте!

Новинки
Книга была выпущена в 2004 году. С тех пор многое изменилось - появились версии AutoCAD 2005, 2006, 2007, 2008.

Система ruCAD была выпущена в свет, появились замечания и предложения пользователей. Да и у нас появились новые представления по некоторым вопросам.

Поэтому в материалы книги, публикуемые на сайте, мы вносим дополнительные замечания, выделяемые так:
Так выделяются дополнительные замечания, комментарии, указания!
Где спросить
На нашем сайте было уже несколько форумов. На них было зарегистрировано более 400 посетителей, а многие заходили просто так, в гости. Но сейчас мы вывели форумы из открытого режима. Подробнее о наших форумах
Если очень нужно что-то узнать о ruCAD именно в форумном формате, заходите на Форум сайта
AutoCAD и проектирование
Внимание!
Технические решения и исходные тексты, публикуемые на сайте, могут быть устаревшими!

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


Пакетное переименование блоков и примечаний



(defun ru-block-rename-with-descr (names_descr_file_name
                                   replace_file_name
                                   /
                                   block_descr
                                   block_lst
                                   block_new_name
                                   block_old_name
                                   replacer_list
                                   str_list
                                   err_list
                                  )
;;;Пакетное переименование блоков и примечаний
    ;|
Файл имен создается программой ru_block_names_file.lsp в формате
Формат строк файла:
имя_блока|Примечание к блоку, а если его нет, имя_блока|имя блока

В конце строки повторяем имя_блока, чтобы из него удобнее было сделать
новое имя. Этот же файл может использоваться для переименования блоков
и для пакетного создания примечаний Результаты переименований
записываются в файл, который может использоваться программой
ru_replacer для пакетной замены в XML и меню в формате:
старое_имя_блока=новое_имя_блока
|;
    (if (setq str_list (ru-list-read-from-file names_descr_file_name))
        (progn
            (ru-splash-show "Переименовываю блоки...")
            (foreach str str_list
                (setq block_lst      (ru-string-to-list str "|")
                      block_old_name (nth 0 block_lst)
                      block_descr    (nth 1 block_lst)
                      block_new_name (nth 2 block_lst)
                ) ;_ end of setq
                (if (/= block_old_name block_new_name)
                    ;;Переименование блока
                    (progn
                        (ru-splash-set-text
                            (strcat block_old_name
                                    "
 в "
                                    block_new_name
                            ) ;_ end of strcat
                        ) ;_ end of ru-splash-set-text
                        (if (and (/= block_old_name "")
                                 (/= block_new_name "")
                                 (tblobjname "block" block_old_name)
                                 (not (tblobjname "block" block_new_name)
                                 ) ;_ end of not
                            ) ;_ end of and
                               (progn
                                   (ru-block-set-description
                                       block_old_name
                                       block_descr
                                   ) ;_ end of ru-block-set-description
                                   (vla-put-name
                                       (vla-item
                                           (vla-get-blocks
                                               (ru-obj-get-active-document)
                                           ) ;_ end of vla-get-blocks
                                           block_old_name
                                       ) ;_ end of vla-item
                                       block_new_name
                                   ) ;_ end of vla-put-name
                                   (setq replacer_list
                                            (cons
                                                (strcat
                                                    block_old_name
                                                    "="
                                                    block_new_name
                                                ) ;_ end of strcat
                                                replacer_list
                                            ) ;_ end of cons
                                   ) ;_ end of setq
                               ) ;_ end of progn
                               (setq err_list
                                        (cons
                                            (strcat
                                                "ОШИБКА переименования "
                                                block_old_name
                                                " в "
                                                block_new_name
                                            ) ;_ end of strcat
                                            err_list
                                        ) ;_ end of cons
                               ) ;_ end of setq
                        ) ;_ end of if
                    ) ;_ end of progn
                ) ;_ end of if
            ) ;_ end of foreach
            (ru-list-write-to-file replace_file_name replacer_list)
            ;; запись списка замен
            (ru-splash-hide)
        ) ;_ end of progn
        (ru-msg-alert
            (strcat "Не могу прочитать 
" names_descr_file_name)
        ) ;_ end of ru-msg-alert
    ) ;_ end of if
    err_list
) ;_ end of defun


24-07-2004 23:34:12