|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Почему макрос просчитывает одни координаты, а вырисовывает на чертеже другие?
Регистрация: 04.06.2013
Сообщений: 34
|
||
Просмотров: 4267
|
|
||||
Вот ещё что может влиять:
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
Регистрация: 04.06.2013
Сообщений: 34
|
Sleekka, ведь когда чертишь с включенным "Шагом", все-равно можно вводить координаты с клавиатуры сколько угодно кривые и и все будет нормально отрисовываться, но для достоврености увеличил пример в 100 раз. Ничего не изменилось.
hwd, тоже не помогло. |
|||
![]() |
|
||||
Регистрация: 28.09.2010
Сообщений: 55
|
Недавно начал осваивать функции ActiveX. Например vla-Add... позволяют рисовать примитивы независимо от привязок и полярного отслеживания. Вот пример тестового кода для рисования примитивов 3dface разных цветов:
Код:
Последний раз редактировалось Кулик Алексей aka kpblc, 03.09.2013 в 09:00. |
|||
![]() |
|
||||
Регистрация: 28.09.2010
Сообщений: 55
|
entmake имеет, например, такой вид:
(entmake '( (0 . "3DFACE") (8 . "0") (62 . 1) (10 0.0 0.0 0.0) (11 1.0 0.0 0.841471) (12 1.0 1.0 0.987766) (13 0.0 1.0 0.841471))) Но мои попытки ввести в него данные в виде переменных не увенчались успехом. Например чтобы координаты этого 3dface-а прочитать из переменной вида (setq point_1 (list coord_x coord_y coord_z)). Он даже не воспринимает запись (setq x 0.0), а потом в самом entmake '...(10 x 0.0 0.0)... - ошибка |
|||
![]() |
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
|
|||
![]() |
|
||||
Регистрация: 28.09.2010
Сообщений: 55
|
Теперь получается, но только цвет не работает:
(entmake '( (0 . "3DFACE") (8 . "0") (cons 62 x1) (cons 10 (list x 0.0 0.0)) (11 1.0 0.0 0.841471) (12 1.0 1.0 0.987766) (13 0.0 1.0 0.841471))) Здесь перед этой строкой задано (setq x1 3), а фраза (cons 62 x1) не воспринимается. При этом (62 . 3) - все нормально, объект рисуется зеленым |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,407
|
И не вычислится. Потому что надо (как минимум)
Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 28.09.2010
Сообщений: 55
|
Действительно, entmake очень быстро работает. Та же задача, только с использованием entmake:
(defun c:5 (/ n n1 l col1) (setq n 0 n1 0 l 50) (while (< n l) (setq n1 0) (while (< n1 l) (setq col1 (fix (+ 3 (* 2 (sin (sqrt (+ (expt (+ 1.0 n) 2) (expt (+ 1.0 n1) 2)))))))) (entmake (list '(0 . "3DFACE") '(8 . "0") (cons 62 col1) (cons 10 (list (+ 0.0 n) (+ 0.0 n1) (sin (sqrt (+ (expt (+ 0.0 n) 2) (expt (+ 0.0 n1) 2)))))) (cons 11 (list (+ 1.0 n) (+ 0.0 n1) (sin (sqrt (+ (expt (+ 1.0 n) 2) (expt (+ 0.0 n1) 2)))))) (cons 12 (list (+ 1.0 n) (+ 1.0 n1) (sin (sqrt (+ (expt (+ 1.0 n) 2) (expt (+ 1.0 n1) 2)))))) (cons 13 (list (+ 0.0 n) (+ 1.0 n1) (sin (sqrt (+ (expt (+ 0.0 n) 2) (expt (+ 1.0 n1) 2)))))) )) (setq n1 (1+ n1)) ) (setq n (1+ n)) ) ) 2500 примитивов рисуются в мгновение ока. Если и в брикскаде будет также быстро работать, то это замечательно |
|||
![]() |
|
||||
- Регистрация: 24.07.2005
Москва
Сообщений: 1,335
|
по entmake - да в 4 раза, vl-функции в 10 раз быстрее. (это не только заявления производителя, а проверено на собственном софте). А так как скорость лиспа зависит в основном от vl-sort все остальное не особо важно, то для путячих лиспов средний прирост производительности в 6 раз.
|
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите с макросом -dataextraction | Composter | AutoCAD | 11 | 26.02.2015 11:37 |
Помогите разобраться с макросом | Ubivec81 | Программирование | 3 | 12.04.2011 16:06 |
Помогите с макросом. | Spiteful Berkut | Программирование | 3 | 27.01.2011 11:22 |
Помогите с макросом Размеры на определенном расстоянии | Composter | AutoCAD | 8 | 25.11.2008 16:55 |
Спецы по DIESEL - помогите с макросом | VetalBY | Программирование | 7 | 19.09.2005 17:07 |