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




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

программу. Теперь мы проверим функцию ввода данных и убедимся, что она
работает. Вызовите функцию, набрав:

     Command: (gpuser)
    /Kоманда: (gpuser)/

Введите на запросы следующее:

     Start point of path: 2,2
     End point of path: 9,8
     Half width of path: 2
     Radius of tiles: .2
     Spacing between tiles: .1

    /Hачальная точка дорожки: 2,2
     Kонечная точка дорожки: 9,8
     Полуширина дорожки: 2
     Радиус плитки: .2
     Расстояние между плитками: .1/

	Функция  GPUSER  воспользуется  Вашими  ответами  для  вычисления
необходимых ей дополнительных переменных и высветит  на экране дисплея
результат последнего вычисления (в данном случае  -0.862169 - значение
ANGM90  в радианах).  Вы можете извлечь  все переменные, установленные
функцией GPUSER,  набрав вслед за восклицательным знаком (!) их имена.
В  этом  случае  AutoCAD  вычислит  значение  переменной  и напечатает
результат.  Если Вы введете следующие команды, Вы получите результаты,
показанные ниже:

     Command:  !sp
     (2.000000 2.000000)
     Command:  !ep
     (9.000000 8.000000)
     Command:  !hwidth
     2.000000
     Command:  !width
     4.000000
     Command:  !trad
     0.200000
     Command:  !tspac
     0.100000
     Command:  !pangle
     0.708626
     Command:  !plength
     9.219544
     Command:  !angp90
     2.279423
     Command:  !angm90
     -0.862169

	Заметим,  что PANGLE,  ANGP90 и ANGM90 выражены в радианах. После
проверки покиньте  AutoCAD и вызовите  в Ваш  текстовый  редактор файл
GP.LSP.




                           - 15 -

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



     3.5 Сориентируем Дорожку

	Теперь, когда мы запросили у пользователя местоположение дорожки,
мы можем нарисовать ее контур.  Добавьте отмеченные строки в  Ваш файл
GP.LSP.

     ; Convert angle in degrees to radians

     (defun dtr (a)
         (* pi (/ a 180.0))
     )

     ; Acquire information for garden path

     (defun gpuser ()
          (setq sp (getpoint "\nStart point of path: "))
          (setq ep (getpoint "\nEnd point of path: "))
          (setq hwidth (getdist "\nHalf width of path: " sp))
          (setq trad (getdist "\nRadius of tiles: " sp))
          (setq tspac (getdist "\nSpacing between tiles: " sp))

          (setq pangle (angle sp ep))
          (setq plength (distance sp ep))
          (setq width (* 2 hwidth))
          (setq angp90 (+ pangle (dtr 90)))   ;Path angle + 90 deg
          (setq angm90 (- pangle (dtr 90)))   ;Path angle - 90 deg
     )

 |   ; Draw outline of path
 |
 |   (defun drawout ()
 |        (command "pline"
 |           (setq p (polar sp angm90 hwidth))
 |           (setq p (polar p pangle plength))





| (setq p (polar p angp90 width)) | (polar p (+ pangle (dtr 180)) plength) | "close" | ) | ) В добавленом тексте определена функция с именем DRAWOUT. Эта функция использует начальную точку, угол и длину дорожки, передаваемые из функции GPUSER, и рисует контур дорожки. Kонтур рисуется полилинией. Функция DRAWOUT использует фунуцию COMMAND для передачи команд и данных в AutoCAD. Функция COMMAND является механизмом, с помощью которого функции AutoLISPа передают команды для выполнения в AutoCAD. Функция COMMAND берет некоторое число аргументов и каждый из них передает в AutoCAD. Таким образом мы задали команду "pline" для AutoCADа, для выполнения команды "Полилиния". Далее мы задали четыре угла дорожки. Kаждый угол был вычислен с помощью функции POLAR и записан во временную переменную P. Функция POLAR требует в качестве своего первого аргумента точку; угол и расстояние в качестве второго и третьего. Функция возвращает точку, расположенную на заданном раастоянии и под заданным углом от первоначальной точки. Таким образом мы вычислили четыре точки на границах дорожки, используя в качестве - 16 - Руководство пользователя по АВТОЛИСПу исходного данного начальную точку дорожки. Мы завершили команду PLINE строкой "close". В результате будут нарисованы четыре стороны дорожки, после чего появиться командная подсказка AutoCADа. Для проверки работы функции, запишите обновленный файл GP.LSP на диск, войдите в AutoCAD, начните новый рисунок и загрузите LISP-файл так же, как Вы делали это раньше. Вызовите функцию ввода данных: Command: (gpuser) и эадайте переменным те же значения, что и раньше. Теперь проверим созданную функцию DRAWOUT, вызвав ее: Command: (drawout) Вы увидите, что Ваша функция обращается к командам AutoCADа, чтобы отрисовать контур дорожки, который появляется на экране. После проверки покиньте AutoCAD. 3.6 Рисуем Плитки Теперь, после того, как мы сконструировали и проверили функции ввода данных и отрисовки контура, все готово для заполнения дорожки круглыми плитками. Для этого вспомним геометрию. Вызовите Ваш текстовый редактор и добавьте отмеченные строки в программу: ; Convert angle in degrees to radians (defun dtr (a) (* pi (/ a 180.0)) ) ; Acquire information for garden path (defun gpuser () (setq sp (getpoint "\nStart point of path: ")) (setq ep (getpoint "\nEnd point of path: ")) (setq hwidth (getdist "\nHalf width of path: " sp)) (setq trad (getdist "\nRadius of tiles: " sp)) (setq tspac (getdist "\nSpacing between tiles: " sp)) (setq pangle (angle sp ep)) (setq plength (distance sp ep)) (setq width (* 2 hwidth)) (setq angp90 (+ pangle (dtr 90))) ;Path angle + 90 deg (setq angm90 (- pangle (dtr 90))) ;Path angle - 90 deg ) ; Draw outline of path (defun drawout () (command "pline" (setq p (polar sp angm90 hwidth)) (setq p (polar p pangle plength)) (setq p (polar p angp90 width)) (polar p (+ pangle (dtr 180)) plength) - 17 - Руководство пользователя по АВТОЛИСПу "close" ) ) | ; Place one row of tiles given distance along path | ; and possibly offset it | | (defun drow (pd offset)


Страницы : 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
Форумы политика, лучшие анекдоты
знакомства.