|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Фракталы в AutoLISP
Регистрация: 13.11.2010
Сообщений: 15
|
||
Просмотров: 9458
|
|
||||
Инженер Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692
|
Цитата:
__________________
...Не пытайся гнуть ты ложку, Не вяжи её узлом. Ложка - ложка понарошку, А по правде, - это лом! |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Регистрация: 13.11.2010
Сообщений: 15
|
Код:
Выдает ошибку: неверный тип аргумента: 2D/3D точка: T Скорее всего я неправильно присваиваю ей значение, но кучу всего перепробовал, что-то не выходит нормально... Помогите, пожалуйста. |
|||
![]() |
|
||||
Программист-энтузиаст Регистрация: 17.07.2009
Воронеж
Сообщений: 575
|
Нельзя в качестве имени переменной использовать символ T - это зарезервированный символ логических операций (T - true; nil - false)
__________________
cadtools |
|||
![]() |
|
||||
Регистрация: 13.11.2010
Сообщений: 15
|
Исправил название точки и сделал как написано: (setq R (1+ (fix (* 6 (Rng))))), но все равно ошибка, только теперь чуть-чуть другая:
; ошибка: неверный тип аргумента: 2D/3D точка: nil Сама по себе конструкция (Setq Ptt C) должна работать? То есть точка Ptt примет координаты '(200 250) ? |
|||
![]() |
|
||||
Регистрация: 13.11.2010
Сообщений: 15
|
gomer, спасибо большое, произвольные числа вроде заработали, но отрисовки точек все равно нет, значение одной вычисленной точки он выводит в командной строке и успокаивается, добавил строку, чтобы проверить сколько точек он ищет и выяснил, что находит только первую точку, цикл не работает:
Код:
|
|||
![]() |
|
||||
Регистрация: 13.11.2010
Сообщений: 15
|
Поменял название и пошло дело! Но...
Блин, AutoCAD2007 запускает эту прогу, выполняет, точки появляются, но теперь начал горланить что-то про сетевые лицензии, хотя сам нигде не предлагал зарегестрировать продукт, и в настройках когда пытаюсь обновить ошибка вылезает. В AutoCAD2010 точки не появляются... Буду разбираться с этим. Но все же пару раз он успел запуститься в 2007, Странно(а может и не очень), но почему то рандомные вершины почти всегда выбираются 2, 3 или 4, рандом не рандомный... В точке (50.0000, 150.0000, 0.0000) создана линия нулевой длины -пишет AutoCAD2010 и нет точки на экране! Они оказывается и работают по-разному... Последний раз редактировалось Seregarival, 14.11.2010 в 15:52. |
|||
![]() |
|
||||
Регистрация: 03.05.2009
Сообщений: 112
|
Для шестиугольника Серпинского текущая точка P должна находиться
на отрезке, соединяющего случайную вершину шестиугольника Ptt и предыдущую точку O. При этом расстояние между вершиной и текущей точкой - 1/3 длины отрезка. Если будет середина отрезка, то красивой фигуры не получится! Середина - это для треугольника Серпинского. То есть надо исправить: (polar Ptt (angle Ptt O) (/ (DISTANCE Ptt O) 23)). Чтобы из алгоритма не выпала 6-ая вершина F надо исправить: (fix (* 56 (Rng)). Начальную точку внутри шестиугольника и число точек фрактала можно задать через getpoint и getint. Точки фрактала можно нарисовать окружностями радиуса 0.1, а не отрезками нулевой длины. Чтобы была видна начальная точка ее лучше нарисовать с помощью point и если она не выделяется среди точек фрактала - изменить формат отображения точек. Последний раз редактировалось Li6-D, 14.11.2010 в 18:36. |
|||
![]() |
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
Цитата:
Вообще, шестиугольник Серпинского как фрактал строится рекурсивно и мне непонятно зачем здесь rng и где собственно рекурсия Последний раз редактировалось gomer, 14.11.2010 в 18:04. |
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
передача данных из AutoLisp в Excel | Victorovich | LISP | 2 | 03.12.2011 22:28 |
Реализация алгоритма шифрования AES средствами AutoLisp | gomer | LISP | 20 | 09.09.2010 11:55 |
Как отладить нейтив и менеджед код в COM объекте который используется из AutoLISP? | lexluther | LISP | 1 | 12.08.2009 08:37 |
Как выделить примитивы в AutoLISP? | RastaMANNN | LISP | 3 | 10.06.2008 00:37 |
Как из Delphi запустить программу на AutoLISP | Valery | LISP | 1 | 23.09.2005 20:51 |