BIGLIB
  большущая библиотека (9812 книг), можно не только прочитать но и скачать бесплатно
 
АСТРОЛОГИЯ
  книги по астрологии
 
КРИМИНАЛ
  книги про криминал
 
ДЕТЕКТИВЫ
  детективы известных
   писателей
 
ФАНТАСТИКА
  фентези, фантастика,   фантастические повести
 
ПРИКЛЮЧЕНИЯ
  книги про приключения,   путешествия
 
ПОЛИТИКА
  книги про политиков,   репрессии
 
ПСИХОЛОГИЯ
  разнообразная литература   по психологии
 
КЛАССИКА
  классическая литература
 
КОМПЬЮТЕРНАЯ
  ЛИТЕРАТУРА
  про компютерное железо,   документация, языки   программирования
 
РЕЛИГИЯ, АТЕИЗМ
  книги про религию
 
ФИЛОСОФИЯ
  книги, которые заставляют   задуматься над   окружающим тебя миром.
 
ЭНЦИКЛОПЕДИИ
  самые интересные   энциклопедии на
   разные темы
 
МЕДИЦИНА
  медицинские книги,   методички,
   народные лечебники
 
КУЛИНАРИЯ
  рецепты тортов,   консервирование,
  все о спиртных
  напитках.
 
СТИХИ
  стихи популярных и не   очень авторов
 
ТВОРЧЕСТВО
  народное творчество,   стихи, песни и т.д.
 
ЮМОР
  анекдоты, приколы,   смешные истории
 
ЛЮБОВНЫЙ РОМАН
  мир высоких чувств и   любовных грез
 
ЭРОТИКА
  эротические рассказы,   книги о технике секса,   кама-сутра и др.




adfun.ru
Rambler's Top100 Rambler's Top100
    НА ГЛАВНУЮ
    РЕФЕРАТЫ
    ТОСТЫ
    ТЕСТЫ
    АВТО
    ДЛЯ СТУДЕНТА
    КНИГИ
    КОНТАКТ
 
Руководство пользователя по АвтоЛиспу
Автор ""
Размер 218625 Байт
Страница 25 из 30
СКАЧАТЬ КНИГУ ЦЕЛИКОМ

щий цвет, тип линии, возвышение или толщину этих специфицируемых объе-  :
ктов.                                                                   :
                                                                        :
                                                                        :
       5. 8. 3.   Изменение уровня примитива

       Это вариации команды SETLAYER , приведенной выше. Лучше, чем ус- :
тановление текущего уровня , эта команда изменяет выбранные объекты,    :
для того чтобы иметь тот же самый уровень , как и у другого выбранного  :
объекта.                                                                :
                                                                        :
       (defun C:CHGLAYER (/ ss e n)                                     :
          (princ "Select objects to be change ...\n")                   :




                           - 79 -

            Руководство пользователя по АВТОЛИСПу


                                                                        :
       ; Основной набор выбора (selection-set)                          :
          (setq ss(ssget))                                              :
                                                                        :
                                                                        :
                                                                        :
       ;Если любые выбранные объекты....                                :
          (if ss (progn                                                 :
             (setq e (car (entsel "Pick an object on the desired        :
    layer: ")))                                                         :
                                                                        :
       ; Если объект был выбран...                                      :
           (if e (progn                                                 :
                                                                        :
       ; Перейди на эту группу данных                                   :
              (setq e (entget e))                                       :
                                                                        :
       ; Группа 8 - это имя уровня                                      :
              (setq n (cdr (assoc 8 e)))                                :
              (command "CHANGE" SS "" "PROP" "LAYER" n "")                :
           ))                                                           :
        ))                                                              :
      )                                                                 :
                                                                        :
       В этом примере наборы выбора ( selection - set)  объектов , кото-:
рые можно изменить , устанавливаются символом SS. Можно применять однаж-:
ды установленное имя уровня ( из 8 группы выбранного объекта), выбор    :
набора ( selection - set ) SS проходит к команде "CHANGE Properties"             :
( изменение собственности) , чтобы вызвать эффект желаемого изменения.  :
                                                                        :

       5. 8. 4.  Текстовый редактор

       Программа, приведенная ниже , выполняет команду CHGTEXT для ос-
новного редактирования  текстов. Она допускает, что вы обозначаете
"new string" (новая строка), чтобы ею заменить  в каждом случае ста-
рую строку ("old string"), которая обнаружена в выбранном тексте.
Вы можете легко расширять это , чтобы любой текст по вашему желанию ре-
дактировался .

      ; Изменение подстроки в выбранном текстовом примитиве

      (defun C:CHGTEXT (/ p l n e os as ns s nsl osl sl si chf chm)
         (setq p (ssget))        ; Выберите объекты
         (if p (progn            ; Если любые объекты выбраны...
            (setq osl (strlen (setq os (getstring "\nOld string: "t))))
            (setq nsl (strlen (setq ns (getstring "\nNew string: "t))))
            (setq l 0 chm 0 n (sslength p))
            (while (< l n)       ; Для каждого выбранного объекта...
            (if (= "TEXT"        ; Смотри тип примитива ТЕКСТ (группа 0)
                   (cdr (assoc 0 (setq e (entget (ssname p l))))))
               (progn            ; Обнаружен один... смотри старую строку
                  (setq chf nil si 1)
                  (setq s (cdr (setq as (assoc 1 e))))
                  (while (= osl (setq sl (strlen
                                (setq st (substr s si osl)))))




                           - 80 -

            Руководство пользователя по АВТОЛИСПу


                     (if (= st os) (progn
                        (setq s (strcat (substr s 1 (1 si)) ns
                                        (substr s (+ si ost))))
                        (setq chf t)  ; Обнаружена старая строка
                     ))
                     (setq si (1+ si))
                 )
                 (if chf (progn       ; Заменитель новой строки на старую
                    (setq e (subst (cons 1 s) as e))
                    (entmod e)        ; Текстовый примитив





(setq chm (1+ chm)) )) ) ) (setq l (1+ l)) ) )) (princ "Changed") ; Печать полностью измененных линий (princ chm) (princ " text lines.") (terpri) ) Здесь, набор выбора Р (selесtion -set P) исследуется для примити- вов текста , содержащих в себе специфицируемую старую строку( "old string"). Для каждого подобранного примитива текста, функции STRCAT и SUBSTR обычно формируют новую текстовую строку, которая во всех случаях заменяет старую строку (old string) на новую строку ( new string). Испо- льзуя SUBST,вы построите новую строку, заменяющую группу 1 в текстовом примитиве, и затем обычно ENTMOD откорректирует примитив в базе данных чертежа и на экране. 5. 8. 5. Обновление данных Считайте, по соглашению ,что вы вставляете блок, называемый "TITLE", в каждый чертеж и , что этот блок имеет аттрибуты , называемые "REVDATE",которые означают данные последней ревизии. Следующая программа выполняет команду REVISE, которая обнаруживает этот блок и корректирует его аттрибуты. Сначала определяется пара функциональных утилит. ; Ввод текущих данных в формате MM/DD/YY (defun mmddyy (/ x) (setq x (getvar "CDATE")) ; Текущие данные (setq x (rtos x 2 0)) ; Обращение к строке (setq date (strcat (substr x 5 2) "/" ;MM (substr x 7 2) "/" ;DD (substr x 3 2))) ;YY ) ; Возврат содержания примитива поля "num" (defun fld (num) (cdr (assoc num d)) ) - 81 - Руководство пользователя по АВТОЛИСПу ; Поиск аттрибутов REVDATE в блоке TITLE и обновление (defun C:REVISE (/ e d date done) (setq done nil) (setq e (entnext) ; Первый объект в чертеже (while e (setq d (entget e) ; Получение групп данных ; примитива (if (and (= (fld 0) "INSERT") ; Имеется ли INSERT ? (= (fld 2) "TITLE") ; ... имя TITLE? (= (fld 66) 1)) ; ... АТТРИбУТЫ? (progn (setq e (entnext e)) ; Получение подпримитива (аттрибута) (while e (setq d (entget e)) ; Получение подпримитивов ; групп данных (cond ((and (= (fld 0) "ATTRIB") ; Искать (= (fld 2) "REVDATE")) ; Аттрибуты ; REVDATE (mmddyy) (setq d (subst (cons 1 date) (assoc 1 d)) ; Новые данные (entmod d) ; Изменение аттрибутов ; переменных (entupd e) ; Регенерация блока (setq e nil done T)) ; Были выполнены ((= (fld 0) "ENDSEQ") (setq e nil)) ; Нет аттрибутов REVDATE; ; останов сканирования (T (setq e (entnext e))) ; Ввод следующего ; подпримитива ) ) ) (setq e (entnext e)) ;Нет блока TITLE, вход ; следующего примитива ) ) (if done "Revision date updated" "No REVDATE attribute found") ) Команда REVISE проверяет группу 0 ( тип примитива) каждого прими- тива в чертеже , просматривая упоминаемый блок ( фцнкция INSERT), кото- рый назван " TITLE". Затем она сканирует подпримитивы этого блока (его


Страницы : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 [25] 26 27 28 29 30


adfun.ru









Форум раскрутка сайта и интернет-реклама
реклама - рекламное агентство -
Интернет PR агентство чат и форум
волчат знакомства - сайт знакомств
бесплатные компьютерные игры
фото знакомства
новые стеклопакеты -
качественное остекление балконов
портал - пластиковые окна -
закажите окна пвх в Москве

частная стоматология в Москве:
надежная стоматологическая клиника
протезирование зубов и
отбеливание зубов в стоматологии
Музыка - скачать mp3 музыка
каталог партнерские программы
ручной бесплатный обмен ссылками цифровые камеры цифровые фотоаппараты -
цифровые видеокамеры

театры - заказ билетов в театр -
магазин - продажа компьютеров
в Москве форум Испания - жилье -
недвижимость в испании

турфирма - испания туры
Переводы - бюро переводов
Законы - закон о товарных знаках,
Грузовые перевозки. АсМАП. Дальнобой закон о рекламе
Интернет казино
реклама на форуме и контекстная реклама
на Яндексе Баннерная сеть и
интернет каталог сайтов Holiday.Ru
Форумы политика, лучшие анекдоты
знакомства.