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

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

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

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

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

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

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

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


Привязка блока к линии с ориентацией



(defun ru-block-insert-align (block_lib_name block_name
                              x              y
                              is_ask_rotate  is_break_line
                              /              lst_break
                             )
;;; привязка блока к линии с ориентацией
;;; привязывает block_name из макроблока block_lib_name с масштабом X
;;; Y
;;; Если is_ask_rotate -  дополнительный запрос на переворот на 180
;;; Если is_break_line - по размерам блока делается разрыв линии
;;; Блок должен быть единичной длины с точкой вставки по центру!
;;; возвращает  lst_break
;;; (ru-block-insert-align "ru-lib-common" "ru_circle_and_cross_unit"
;;; 5
;;; 2 nil
;;; nil)
;;; (ru-block-insert-align "ru-lib-common" "ru_box_unit"  5 2 T T)
  (if (ru-block-lib-insert block_lib_name block_name)
      (while
        (setq
          lst_break (ru-pline-break-length
                      "Точка вставки на линии"
                      ;; если 0 - только привязка, не 0 - разрыв
                      (if is_break_line
                        (ru-conv-millimeter-in-paper-to-unit x)
                        0
                      ) ;_ end of if
                    ) ;_ end of ru-pline-break-length
        ) ;_ end of setq
         (ru-block-insert-obj
           block_name
           (car lst_break)
           (ru-conv-millimeter-in-paper-to-unit x)
           (ru-conv-millimeter-in-paper-to-unit y)
           1
           (cadr lst_break)
         ) ;_ end of ru-block-insert-obj
         ;; запрос ориентации
         (if
           (and
             is_ask_rotate
             (not (ru-dlg-no-cml "Перевернуть"))
           ) ;_ end of and
            (ru-obj-ent-ss-rotate
              (entlast)
              (car lst_break)
              pi
            ) ;_ end of ru-obj-ent-ss-rotate
         ) ;_ end of if
      ) ;_ end of while
  ) ;_ end of if
  lst_break
) ;_ end of defun

24-07-2004 23:34:12