| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Почему программа работает неправильно?

Почему программа работает неправильно?

Ответ
Поиск в этой теме
Непрочитано 26.08.2011, 12:12
Почему программа работает неправильно?
FSergio
 
Регистрация: 26.08.2011
Сообщений: 20

Пытаюсь написать программу котороя дожна рисовать "box" на определённую величину меньше чем указанный точками.

(setq
p1 (getpoint)
p2 (getpoint)
)
(setq
u1 (list (+ (nth 0 p1) 200.0) (+ (nth 1 p1) 200.0) (+ (nth 2 p1) 200.0))
)

(command "_.box" u1 p2)

в разных ситуациях программа работает по разному но практически всегда уменьшает бокс лишь по оси z хотя при отладке видно что переменные которые задают координаты точек вычисляются правильно.
В чём ошибка?
Просмотров: 5844
 
Непрочитано 26.08.2011, 16:12
#21
mamuk


 
Регистрация: 06.05.2010
Сургут
Сообщений: 248


сейчас проверил с включенными и отключенными привязками
1.(command "_box" p1 p2) срабатывает если одна из точек имеет трехмерные координаты
2. несрабатывает если указаны только координаты где z 0 у первой и второй точки т.к. _box не может иметь нулевой высоты предполагаю!
заключение а привязка не влияет на отрисовку _box-a по двум точкам,влияет только трехмерное положение указаных точек хотябы одна z/=0
действительно _box неможет иметь нулевой высоты
ервый угол или [Центр]:
Другой угол или [Куб/Длина]:
Высота или [2Точки] <10.0000>: 0
Значение должно быть ненулевым.

скорее всего и OSNAPZ не оказивает влияние т.к. скорее всего отвечает за работу команндых привязок.

Последний раз редактировалось mamuk, 26.08.2011 в 16:20.
mamuk вне форума  
 
Непрочитано 26.08.2011, 16:18
#22
Makson


 
Регистрация: 24.04.2008
Сообщений: 1,131


Вот блин и не проверить.
у меня звсад стоит и в нем нет osnapz.
Makson вне форума  
 
Автор темы   Непрочитано 26.08.2011, 16:19
#23
FSergio


 
Регистрация: 26.08.2011
Сообщений: 20


Это я понял естественно разница между координатами z указывается не нулевая. Проблема в osnapz как ты и сказал mamuk получается что когда я убираю osnap то osnapz устанавливается "1" и вместо коорлинаты по z я получаю координату проекции т.е. "0". Из за этого всё и не работает. Теперь вопрос как сделать чтобы она не устанавливалась "1"

Кстати до выполнения программы osnapz "0" почему она слетает когда запускается программа?

Последний раз редактировалось FSergio, 26.08.2011 в 16:26.
FSergio вне форума  
 
Непрочитано 26.08.2011, 16:32
#24
mamuk


 
Регистрация: 06.05.2010
Сургут
Сообщений: 248


в начале кода (setvar "osnapz" 0)
или лучше проверять включена или выключена
и в зависимости от этого выключать или не выключать.
а так же возвращать значение значение до этого ранее установленное
(setq a (getvar "osnapz"));здесь в переменную а записываем значение привязки текущее
(setvar "osnapz" 0);устанавливаем необходимое значение
(здесь рисуем что надо
)
(setvar "osnapz" а) после всех выполненых операций восстанавливаем изначальное значение (у меня буква а русская в посте кода)
mamuk вне форума  
 
Автор темы   Непрочитано 26.08.2011, 16:42
#25
FSergio


 
Регистрация: 26.08.2011
Сообщений: 20


mamuk Ты однозначно прав с координатой z
Но (setvar "osnapz" 0) не помогает, уже попоробовал
И установлена она изначально "0" как я уже говорил.
Но после
(setq old_osmode (getvar "osmode"))
(setvar "osmode" 0)
что то не даёт ввести ненулевую координату z
а если этого кода нет, то всё работает.


Все дело было в OSNAPCOORD
И можно даже не отключать привязки програмно всё работает так как надо.
Всем большое спасибо что направили меня на верный путь.

Последний раз редактировалось FSergio, 27.08.2011 в 11:17.
FSergio вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Почему программа работает неправильно?

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Расчет монтажной башни с растяжками в MicroFE 2005 (почему программа не считает?) giparshik Расчетные программы 1 20.07.2011 18:46
Программа AlxdDike под а2004 работает? LLEXA AutoCAD 8 03.05.2011 21:41
Объясните почему такая разница в подобранной арматуре МишаИнженер Расчетные программы 14 26.02.2010 23:15
Фундамент с динамическими нагрузками в Scad Tlelaxu SCAD 9 31.08.2007 10:44
_mpedit неправильно работает? Elfirel AutoCAD 8 05.08.2004 12:14