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

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

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

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

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

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

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

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


Диалог ввода строки


Иллюстрация к функции
(defun ru-dlg-get-string (caption       default       disable_empty
                          /             command_line  continue
                          ini_file      reason        result
                          user_dic_file tmp_str
                         )
  (setq
    user_dic_file
     (ru-file-current-user "userstr.txt")
    ;; фиктивный параметр
    command_line
     (strcat (ru-file-bin "ruGetStr.exe") " ru")
    result default
    continue t
  ) ;_ end of setq

  (if (not (findfile user_dic_file))
    (vl-file-copy
      (ru-file-template "userstr.txt")
      user_dic_file
    ) ;_ end ofvl-file-copy
  ) ;_ end ofif
  (ru-reg-delete-tmp-sub-key "GetString")
  (ru-reg-write-tmp-string "GetString" "Caption" caption)
  (ru-reg-write-tmp-string "GetString" "DicFileName" user_dic_file)
  (ru-reg-write-tmp-string "GetString" "StartFromAcad" "1")
  (ru-reg-write-tmp-string
    "GetString"
    "DisableEmpty"
    (ru-conv-bool-to-str disable_empty)
  ) ;_ end of ru-reg-write-tmp-string
  (while continue
    (ru-reg-write-tmp-string "GetString" "String" result)
    (ru-app-run command_line t)
;;; (ru-reg-read-tmp-string "xml_menu" "attrib" "")


    (setq result (ru-reg-read-tmp-string "GetString" "String" "")
          reason (atoi
                   (ru-reg-read-tmp-string "GetString" "ResultDial" "1")
                 ) ;_ end of ru-conv-str-to-bool
    ) ;_ end of setq
    (cond
      ((= reason 3)
       ;;Выбор из Acad
       (if (setq tmp_str
                  (ru-get-txt-from-dwg
                    "Выбери надпись из рисунка"
                  ) ;_ end ofru-get-txt-from-dwg
           ) ;_ end of setq
         (setq result tmp_str)

       ) ;_ end of if
      )
      ((= reason 1)
       ;;OK
       (setq continue nil)
       ;; вернуть строку
      )
      (t
       ;; Отмена
       (setq continue nil
             result nil
       ) ;_ end of setq
      )
    ) ;_ end of cond
  ) ;_ end of while
  (ru-reg-delete-tmp-sub-key "GetString")

  result
) ;_ end of defun

24-07-2004 23:34:12