|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
|
||||
CNC Регистрация: 07.07.2007
Israel
Сообщений: 302
|
По аналогии
Код:
Потом данные нужно привести к нормальномы виду! вот на своей машине я попробовал работу функции, присвоил результату твои значения и привел их к нужному виду Код:
Код:
|
|||
|
||||
CNC Регистрация: 07.07.2007
Israel
Сообщений: 302
|
Я могу написать , что это тебе даст, лисп который берет координату одной точки из строки в таблице базы
"00001" и "00005" и построит между ними линию, я думаю задача не заключается в этом, она намного шире, здесь только пример работы с базой, опиши конкретную задачу с окончательным результатом |
|||
|
||||
Регистрация: 10.12.2008
Сообщений: 122
|
Дано - БД с таблицей, в которой 5 столбцов: 1 - BUR (номер), 2 - YY (координата по оси Y), 3 - XX (координата по оси X), 4 - дата (этот столбец нам не нужен), 5 - GL (глубина, т.е. расстояние от (XX,YY) до любой произвольной точки T1).
Результат - нужно связаться с БД, взять информацию о 1,2,3,5 , исходя из этой информации построить линию (перпендикуляр) от точки (XX,YY) до точки T1. Но перед построением лисп должен спросить номер (BUR), по которому нужно сделать линию (или несколько номеров). Или - есть карта, на которой отмечены эти все номера. Выбираем на карте эти номера, нажимаем какую-нибудь кнопку, и в другом окне строится эта линия. Вроде бы все. |
|||
|
||||
CNC Регистрация: 07.07.2007
Israel
Сообщений: 302
|
Сложность заключается в том, что на моей машине не установлен сервер MS SQL,
и мне придется все делать вслепую, конечно можно попробовать, тогда тебе придется присылать мне разультаты тестов, для начала изменим вызов функции, добавим в нее аргумент теперь вызов функции в командной строке будет выглядеть так: Код:
Код:
можно было продолжить. |
|||
|
||||
Регистрация: 10.12.2008
Сообщений: 122
|
И еще, ты меня наверно не допонял чуть-чуть. В базе кроме номера, координаты по X и координаты по Y, есть очень важный аргумент GL - 5-й столбец. В нем хранится длина линии, которую нужно нарисовать. От точки с координатами (XX,YY) до точки, которую можно определить, как я понимаю, через функцию POLAR - определение точки путем перемещения от точки (XX,YY) на расстояние GL (это обязательный аргумент). А в скрипте я не вижу его.
|
|||
|
||||
Регистрация: 10.12.2008
Сообщений: 122
|
Заработало, только ты прочитай мое предыдущее сообщение по поводу GL.
Команда: (if(setq bur (getint "Enter a number bur: "))(qqq bur)) Enter a number bur: 1 Connecting to the database using "Provider=SQLOLEDB.1;Data Source=MAXIM;Initial Catalog=basa" Result: succeeded! Inserting a row: "SELECT YY FROM bur31 WHERE ((([BUR]) = 1));SELECT XX FROM bur31 WHERE ((([BUR]) = 1));" Result: Succeeded! Disconnecting from the database (("YY") (8014.5)) (("XX") (16761.0)) |
|||
|
||||
Регистрация: 10.12.2008
Сообщений: 122
|
Запрос по GL возвращает:
Connecting to the database using "Provider=SQLOLEDB.1;Data Source=MAXIM;Initial Catalog=basa" Result: succeeded! Inserting a row: "SELECT YY FROM bur31 WHERE ((([BUR]) = 5));SELECT XX FROM bur31 WHERE ((([BUR]) = 5));SELECT GL FROM bur31 WHERE ((([BUR]) = 5));" Result: Succeeded! Disconnecting from the database LINE Укажите первую точку: Укажите следующую точку или [Undo]: Укажите следующую точку или [Undo]: Команда: (("GL") (15.0)) главное чтобы координаты совпадали, и размер на чертеже. а можно будет вывести систему координат x и y вместе с этой линией? |
|||
|
||||
CNC Регистрация: 07.07.2007
Israel
Сообщений: 302
|
Ну так линию рисует правильно или нет, и куда нужно дорисовать (("GL") (15.0)),
или уже все нормально, только надо вывести на экран текст с координатами точек, тогда сообщи имя стиля, или можно стиль тоже создать програмно, тогда скажи имя используемого "фонта" его высоту, или может быть блок с атрибутами и заполнить его програмно, кстати все можно вынести в отдельные слои и т.д.? |
|||
|
||||
Регистрация: 10.12.2008
Сообщений: 122
|
линию вообще не рисует, в том то и дело. точки XX и YY это одно целое, линия должна идти не от XX до YY, а от точки (XX,YY) до произвольной точки на плоскости на расстоянии GL. Выкладываю рисунок, в котором показано что должно быть на выходе. Стиль можно взять любой, на твое желание, пока это не важно, главное чтобы рисунок выходил, как я понимаю, потом можно будет поменять, на такой какой нужен. (по умолчанию у меня acadiso.dwt)
|
|||
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
База данных Лира | Koker | Лира / Лира-САПР | 4 | 28.08.2006 15:47 |
База данных площадей помещений с привязкой к замкн. контуру. | elena_din | AutoCAD | 19 | 19.08.2005 13:40 |
база данных программы Autodesk Building Systems 2005 | Angel80 | Прочее. Программное обеспечение | 3 | 06.10.2004 06:28 |