|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
21.04.2009, 10:28 | #1 |
Пользователь
Регистрация: 01.02.2009
Сообщений: 52
|
Команда AutoLispa
Если кто-нибудь разбирается в языке AutoLisp-е, помогите плиз) Необходимо сделать сопряжение некоторых углов полилинии. Команду сопряжения я нашел... а как в ней указывать необходимые объекты незнаю
(command "_fillet" 45 ...) //45 - угол сопряжения, ... - надо выбирать необходимые обекты.
Машины должны работать! Люди должны думать!
|
21.04.2009, 11:11 | #2 |
Форумчанин
Регистрация: 06.02.2008
Сообщений: 140
|
Что бы выбрать обьекты надо задать координаты, которые принадлежат каждой из линий.
|
21.04.2009, 14:16 | #3 |
Пользователь
Регистрация: 01.02.2009
Сообщений: 52
|
у меня есть все точки (p1, p2 .... ) углов которых надо сделать сопряжение, как их в команду запихать? Например... отрезок р1-р2 и отрезок р2-р3, с углом между ними надо сделать сопряжение.
Машины должны работать! Люди должны думать!
|
21.04.2009, 21:20 | #4 |
Форумчанин
Регистрация: 06.02.2008
Сообщений: 140
|
Сейчас лень запускать Автокад . Попробуйте что то типа:
(setq a(list (-(car p1) 5) (cadr p1))) (setq b(list (car p2) (-(cadr p2)5))) Это зависит от того откуда линии идут .Тоесть надо взять координаты, которые принадлежат именно этим линиям. потом (command "fillet" a b "") Честно говоря не помню, как там правильно филлет задается, постройте вручную 2 линии и посмотрите что нажимаете при исспользовании филлета. В том что я написал, выбираете 1 линию, потом вторую, потом энтер. Попробуйте. Если не выйдет, пишите, таки запущу автокад . И вопрос. Случайно не умеете пользоватся лямбда функциями и функционалами в MULisp'е? Просто мне тож помощь по лиспу нужна . |
22.04.2009, 17:55 | #5 |
Пользователь
Регистрация: 01.02.2009
Сообщений: 52
|
спс, попробую! Про лямбда функции есть мануалы, примеры... а вот про функционалы ничего сказать не могу :-)
Машины должны работать! Люди должны думать!
|
22.04.2009, 18:06 | #6 |
Пользователь
Регистрация: 01.02.2009
Сообщений: 52
|
(defun c:ept()
(setq p1 (getpoint "\ Точка: ")) (setq b (getdist "\ Длина: ")) (setq p2 (polar p1 (/ PI 2) (* b 3))) (setq p3 (polar p2 0 (* b 4))) (setq p4 (polar p3 (* 1.5 PI) (* b 9))) (setq p5 (polar p4 0 (* b 3))) (command "_pline" p1 p2 p3 p4 p5"_C" "") ) вот так у меня задаются точки, через создание списков что-то не получается :-(
Машины должны работать! Люди должны думать!
|
23.04.2009, 18:04 | #7 |
Форумчанин
Регистрация: 06.02.2008
Сообщений: 140
|
а какая фигура? и где какие точки у нее?
|
23.04.2009, 20:54 | #8 |
Пользователь
Регистрация: 01.02.2009
Сообщений: 52
|
пользователь сам точки тыкает и длину задаёт между ними) фигура там загигулина какая-то... да это всё не суть важно, на любой фигуре был бы пример сопряжения... пусть даже просто на двух отрезках
Машины должны работать! Люди должны думать!
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
команда MOV, проблемы | fermat_c | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 2 | 18.04.2008 19:19 |
команда запущенной программе | Артэс | Общие вопросы C/C++ | 3 | 05.03.2008 18:26 |