Решил выложить код програмки для LISP'a (подпрогрограмма AutoCAD'a) для конвертации коордианат в линии (отдельное спасибо Олег(jr.) ака Fatty). Формат записи данных
125.111 45.123 25.125
125.111 45.123 25.125
125.111 45.123 25.125
125.111 45.123 25.125
т.е., Х У Z через пробел. Данные конвертирую из G кода бесплатной програмкой "Словогрыз" (можно пакетно), очень быстро и легко. Главное использовать линейный код G00 (ну или типо того если не ошибаюсь)
(defun txt2ac (path / coors fn fname ln)
(if (setq fname
(getfiled "Выбрать файл для чтения координат"
path
"txt"
8))
(progn
(setq fn (open (findfile fname) "r"))
(while (setq ln (read-line fn))
(setq coors (cons (read (strcat "(" ln ")")) coors)))
(close fn)))
coors)
(defun C:tac (/ path points)
(setvar "cmdecho" 0)
(setvar "osmode" 0)
;;задаешь путь поиска текстового файла :
(setq path (getvar "dwgprefix"));измени на свой
;; получили точки из текстового файла :
(setq points (txt2ac path))
;; можно их отрисовать :
(mapcar (function (lambda (x y)
(entmake
(list
(cons 0 "LINE")
(cons 100 "AcDbEntity")
(cons 100 "AcDbLine")
(cons 10 x)
(cons 11 y)
(cons 8 "0")
(cons 62 2)))));цвет — желтый
points
(cdr points)
)
;; или начертить 3d-полилинию и т.д.:
(setvar "osmode" 0)
(setvar "cecolor" "121")
(command "3dpoly")
(mapcar 'command points)
(command "")
(setvar "cmdecho" 1)
(setvar "osmode" 703)
(princ)
)
(prompt "\nВ командной строке набери TAC по-аглицки\n")
(princ)
~'J'~
Быстродействие перегона коордианат просто впечатляет - 2 516 кБ (108 тысяч строк данных перерисовало секунд за 30!
Если кому не понятно могу пояснить в силу своих скромных познаний меню Инструменты->AutoLISP->Редактор AutoLISP->вставить в консоли->Enter->File->Make aplication->.... После этого Инструменты->AutoLISP->Загрузить приложение->выбрать сохраненное ранее приложение->нажать загрузить->в командной строке набрать TAC (eng)->выбрать файл с координатами->получить результат->сохранить dxf-> отправить на обработку->наслождаться результатом
Осталось только чтобы кто-то проверил записывает ли в dxf их в задаваемой последовательности - изготовил небольшую фигурку и посмотрел на пути-трассы инструмента.
ЗЫ:
И еще было бы неплохо раздобыть хорошую, 100% рабочую, печатку со схемой для того, чтобы сделать нормальную электрическую часть. А то у кого не спрошу так все платы неплохо было бы доработать и кое-что кое-где допаять А я , к сожалению в этом несилен /Говорила мама - учи электронику / HELP!
Отредактировано Dunan (2008-06-07 14:23:06)