Тема: Построение равностороннего треугольника по одной вершине и стороне; по вершине и центру описанной окружности

Здравствуйте умелые и начинающие программисты! Помогите, пожалуйста, с лабораторными работами по LISP.
Необходимо написать программу вычерчивания полилинией равностороннего треугольника, если пользователь вводит:
а)одну вершину и сторону;
б)вершину и центр описанной окружности.
Большое спасибо за внимание.
Сама попыталась сделать но одни сплошные ошибки  :cry: а программирование на LISP приходится самой проходить с нуля  :cry:
Если не сложно напишите еще полезную литературу и пояснения к программам.

Re: Построение равностороннего треугольника по одной вершине и стороне; по вершине и центру описанной окружности

А чем не-нравится стандартная команда _.polygon

Re: Построение равностороннего треугольника по одной вершине и стороне; по вершине и центру описанной окружности

Да я вообще в принципе не знаю как написать программу. Команда полигон думаю очень даже ничего. Но задание конкретно звучит что нужно программу написать и какие параметры должен задавать пользователь.

Re: Построение равностороннего треугольника по одной вершине и стороне; по вершине и центру описанной окружности

если лисп должен работать в автокаде то простейший вариант -


(defun c:111 () (princ "\nУкажите центр равностороннего треугольника ")  (command "._polygon" 3 pause "_I"))


(defun c:222 () (princ "\nУкажите 1ю вершину стороны равностороннего треугольника ")  (command "._polygon" 3 "_E" pause))

Re: Построение равностороннего треугольника по одной вершине и стороне; по вершине и центру описанной окружности

Спасибо большое, но задача состоит именно в том чтобы сначала задать вершину треугольника, потом его сторону и чтобы это все соединилось полилинией и получился равносторонний треугольник.
А вторая часть работы, так же задаем одну вершину и центр описанной окружности и строится равносторонний треугольник

(изменено: Yuriy, 21 ноября 2011г. 12:35:36)

Re: Построение равностороннего треугольника по одной вершине и стороне; по вершине и центру описанной окружности

а если так  :)

(defun c:111 ()
  (setq _v (getpoint "\nУкажите вершину "))
  (setq _s (getpoint _v "\nУкажите точку стороны "))
  (command "._polygon" 3 "_E" _v _s))


(defun c:222 ()
  (setq _v (getpoint "\nУкажите вершину "))
  (setq _s (getpoint _v "\nУкажите центр описанной окружности "))
  (command "._polygon" 3 _s "_I" _v))

Re: Построение равностороннего треугольника по одной вершине и стороне; по вершине и центру описанной окружности

Полина Осипенко пишет:

напишите еще полезную литературу

http://www.private.peterlink.ru/poleshc … index.html

http://www.private.peterlink.ru/poleshc … sp2006.htm

Re: Построение равностороннего треугольника по одной вершине и стороне; по вершине и центру описанной окружности

Программа построения произвольного треугольника (в том числе и равностороннего) по трем сторонам.
https://www.caduser.ru/forum/post108884.html#p108884
При желании можно упростить до 3-х запросов.

Re: Построение равностороннего треугольника по одной вершине и стороне; по вершине и центру описанной окружности

a) треугольник строится неоднозначно
b)

(defun pt_cen (/ pt cen)
  (setq pt
         (getpoint
           "\nУкажите 1ю вершину стороны равностороннего треугольника:"
         ) ;_ end of getpoint
  ) ;_ end of setq
  (setq
    cen
     (getpoint
       "\nУкажите центр описанной окружности равностороннего треугольника "
     ) ;_ end of getpoint
  ) ;_ end of setq
  (command "_pline"
           pt
           (polar cen
                  (+ (angle cen pt) (/ (* pi 2.) 3.))
                  (distance cen pt)
           ) ;_ end of polar
           (polar cen
                  (+ (angle cen pt) (/ (* pi 4.) 3.))
                  (distance cen pt)
           ) ;_ end of polar
           "_c"
  ) ;_ end of command
  (princ)
) ;_ end of defun

Re: Построение равностороннего треугольника по одной вершине и стороне; по вершине и центру описанной окружности

До кучи DwgRuLispLib: Геометрия. Треугольник