Каким образом построить точки и/или сразу полилинию по координатам X, Y?
Здравствуйте, уважаемые форумчане.
У меня вопрос, в принципе, такой же, как и название самой темы. Но вот, к сожалению, так и не нашел на него ответ. Сформулирую его ещё раз. Каким образом построить точки и/или сразу полилинию по координатам X, Y?
Подробнее…
AutoCAD 2008. Есть таблица координат точек (их очень много). Необходимо просто их нанести на чертеж, а затем соединить полилинией. Это будут участки отвода земель под строительство. Так вот хочу у вас поинтересоваться: возможно осуществить данное действие, не прибегая к «топорному» методу – вбивая координаты одну за одной? А что-то сотворить, затратив минимум энергии. Я готов к трудностям, но когда не знаешь до конца возможностей AutoCAD и тупо прёшь в гору, когда можно (наверняка) обойти, тогда, я считаю, необходимо найти правильное решение, руководствуясь советами опытных людей. Заранее благодарен за помощь или просто совет.
Просмотров: 24923
| Homo(v)sapiens |
| Посмотреть профиль |
| Найти ещё сообщения от Homo(v)sapiens |
Регистрация: 11.05.2005
Сообщений: 6,986
Сообщение от Homo(v)sapiens
Есть таблица координат точек (их очень много).
В каком виде таблица? xls файл, txt файл, таблица Автокада, что-то еще?
__________________
Как использовать код на Лиспе читаем здесь
LISP, C# (ACAD 200[9,12,13,14])
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,667
Homo(v)sapiens, во-первых, у тебя AutoCAD, а раздел — Вертикальные решения. Во-вторых, займись поиском.
__________________
Моя библиотека lisp-функций
—
Обращение ко мне — на «ты».
Все, что сказано — личное мнение.
| Кулик Алексей aka kpblc |
| Посмотреть профиль |
| Посетить домашнюю страницу Кулик Алексей aka kpblc |
| Найти ещё сообщения от Кулик Алексей aka kpblc |
Регистрация: 24.10.2007
Сообщений: 151
Сообщение от Homo(v)sapiens
Здравствуйте, уважаемые форумчане.
У меня вопрос, в принципе, такой же, как и название самой темы. Но вот, к сожалению, так и не нашел на него ответ. Сформулирую его ещё раз. Каким образом построить точки и/или сразу полилинию по координатам X, Y?
Подробнее…
AutoCAD 2008. Есть таблица координат точек (их очень много). Необходимо просто их нанести на чертеж, а затем соединить полилинией. Это будут участки отвода земель под строительство. Так вот хочу у вас поинтересоваться: возможно осуществить данное действие, не прибегая к «топорному» методу – вбивая координаты одну за одной? А что-то сотворить, затратив минимум энергии. Я готов к трудностям, но когда не знаешь до конца возможностей AutoCAD и тупо прёшь в гору, когда можно (наверняка) обойти, тогда, я считаю, необходимо найти правильное решение, руководствуясь советами опытных людей. Заранее благодарен за помощь или просто совет.
в екселе скомпонуй данные так что бы в одной! ячейке получилось вот такое: x,y (без пробелов), распространяешь по всем строкам, копируешь в буфер всё что получилось, затем в автокаде вводишь команду _pline и при запросе координат вставляешь в командную строку всё скопированное. если из области геодезии задача то поменяй местами x и y (ну это ты наверное в курсе. )
| Igor’ Kulikov |
| Посмотреть профиль |
| Найти ещё сообщения от Igor’ Kulikov |
Регистрация: 16.12.2004
Сообщений: 5
В дополнение к преддиущему посту
Сохранить файл как csv(COMMA DELIMITED)
Открыть фаил в notepad
должно быть что-то типа
Скопировать все в буфер(Ctrl+C)
Так как массив трехмерный то В автокаде —
3dpoly
в ответ на Specify start point of polyline:
Вставить буфер в цоммандную строку (Ctrl+V)
LISP, C# (ACAD 200[9,12,13,14])
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,667
Вот блин. Тема отделена.
__________________
Моя библиотека lisp-функций
—
Обращение ко мне — на «ты».
Все, что сказано — личное мнение.
| Кулик Алексей aka kpblc |
| Посмотреть профиль |
| Посетить домашнюю страницу Кулик Алексей aka kpblc |
| Найти ещё сообщения от Кулик Алексей aka kpblc |
Регистрация: 10.02.2009
Сообщений: 164
VVA, у меня таблица Автокада.
Дальше советы идут по Excel. Я попробовал предложенную манипуляцию (спасибо Igor’ Kulikov и cadhelp), всё получилось. Нанес таким образом один участок, состоящий из 6 точек. Но есть участки из 80 и более точек. Поэтому вопрос второй: можно ли из таблицы Автокада данные перенести в Excel?
Раз уж мой вопрос выделили в отдельную тему, то просьба помочь мне. Вопрос решен наполовину. Да, и за это огромное спасибо участникам.
__________________
«Если хочешь иметь то, чего никогда не имел, делай то, чего никогда не делал»
| Homo(v)sapiens |
| Посмотреть профиль |
| Найти ещё сообщения от Homo(v)sapiens |
Регистрация: 24.10.2007
Сообщений: 151
а как таблицу автокада заполнял? откуда данные? набивали что ли вручную?
| Igor’ Kulikov |
| Посмотреть профиль |
| Найти ещё сообщения от Igor’ Kulikov |
Регистрация: 11.05.2005
Сообщений: 6,986
Сообщение от Igor’ Kulikov
можно ли из таблицы Автокада данные перенести в Excel?
Выдели таблицу, щелкни на ней правой клавишей мыши и выбери «Экспорт»
Дальше можешь делать как советовали или посмотреть еще здесь:
Import xyz coords from practically any type of file.
*** Добавлено
Тот код будет работать только с английским Автокадом
Во вложении должен с любым
| IMPORTXYZ.zip (15.3 Кб, 418 просмотров) |
__________________
Как использовать код на Лиспе читаем здесь
Регистрация: 10.02.2009
Сообщений: 164
Igor’ Kulikov, вероятнее всего данные в таблицу просто тупо вбивали. Мне уже готовая таблица поступила. То что вбивали вручную уверен на 100 %, поскольку баклажиков у нас хватает, чертящих всё либо на одном слое, либо игнорирующих привязки – так просто «на глаз» строят: попала значит попала точка, а если нет, то и не заморачиваются. Потом приходится с такими «чертежами» работать и накапливать негативную энергию.
А поэтому поводу у меня параллельный вопрос. Подскажите, как правильно поступить, имея следующую задачу (это было уже в моей практике). Наращиваю очередной ярус хвостохранилища. Необходимо закоординировать ось дамбы. Я с помощью команды ‘_id Точка (у меня русский ACAD) узнаю координаты точек оси. Затем через текстовое окно (F2) копирую координаты и вставляю в таблицу. Благо, их было не так уж и много. Но всё равно чувствовал, что делаю «мартышкин труд». Хотел ещё тогда найти альтернативное решение, которое будет единственно верным, с точки зрения рациональной траты рабочего времени и своих сил. Подскажите это решение, чтобы я в очередной раз не наступил, как здесь уже было сказано, на «возможные грабли». Оно есть?
VVA, спасибо. Несколько телодвижений и таблица координат уже в Excel’е. Красота. Скачал твои вложения. Но что дальше делать, так ничего и не понял. Я просто ещё очень далек от вопросов LISP’а и как эти коды использовать. Буду искать ответы на форуме и дальше совершенствовать свои навыки работы в AutoCAD, да и просто саморазвиваться. Благодарю за помощь .
P.S. Не хочу показаться навязчивым, но вопрос мучает сознание. Как в Excel’е осуществить следующее действие (кроме как «копировать-вставить):
| в екселе скомпонуй данные так что бы в одной! ячейке получилось вот такое: x,y (без пробелов) |
__________________
«Если хочешь иметь то, чего никогда не имел, делай то, чего никогда не делал»
| Homo(v)sapiens |
| Посмотреть профиль |
| Найти ещё сообщения от Homo(v)sapiens |
Как построить линию по координатам из Excel?
Форумы CADUser → Программирование → LISP → Как построить линию по координатам из Excel?
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Сообщения 12
#1 Тема от JokerJek 30 марта 2004г. 20:15:29
Тема: Как построить линию по координатам из Excel?
Помогите построить линию (диплом горит из универа выгоняют)
Как построить линию(полилинию) по координатам (например из exel).
По возможности пришлите файл.
#2 Ответ от VK 30 марта 2004г. 23:04:51
Re: Как построить линию по координатам из Excel?
А через год увидим постинг
«Помогите построить окружность (проект горит, с работы увольняют)»?
Вы с Лиспом-то и COM-технологией (чтоб к Экселю обратиться) знакомы хоть немного?
#3 Ответ от JokerJek 31 марта 2004г. 02:20:55
Re: Как построить линию по координатам из Excel?
Я понимаю, что для Вас вопрос кажется глупым. Я не знаком с AutoLisp. Купил книгу (Основы программирования а AutoCad 2000). В связи с отсутствием времени не смог решить мою проблему своими силами? Я программу скачал, которая из txt график строит. Работа облегчилась, но хотелось бы узнать, как напрямую из Excel данные использовать.
Построение отрезков

- Выберите вкладку «Главная» > панель «Рисование» > «Отрезок» . найти
- Укажите начальную и конечную точки прямолинейных сегментов, щелкнув в области рисования.
- При необходимости укажите дополнительные линейные сегменты. Чтобы отменить выбор предыдущего сегмента, введите о в командной строке. Чтобы отменить выбор всех сегментов, нажмите «Отменить» на панели «Быстрый доступ».

Использование заданных координат

- Выберите вкладку «Главная» > панель «Рисование» > «Отрезок» . найти
- Задайте значение координаты для первой точки. Для этого введите значение по оси X, запятую, затем значение по оси Y. Пример: 1.65,4.25.
- Нажмите клавишу пробела или ENTER.
- Выполните одно из следующих действий:
- Если включен динамический ввод, введите знак решетки (#), затем значение по оси X, запятую, значение по оси Y. Пример: #4.0,6.75.
- Если динамический ввод отключен, введите значение по оси X, запятую, значение по оси Y. Пример: 4.0,6.75.
- Нажмите клавишу пробела или ENTER.
Прим.: Когда динамический ввод включен, по умолчанию используются относительные координаты. Когда динамический ввод отключен, по умолчанию используются абсолютные координаты. Нажмите клавишу F12, чтобы включить или отключить динамический ввод.
Использование относительных координат

- Выберите вкладку «Главная» > панель «Рисование» > «Отрезок» . найти
- Укажите первую точку.
- Чтобы задать вторую точку относительно первой, выполните одно из указанных ниже действий.
- Если динамический ввод включен, введите значение по оси X, запятую, значение по оси Y. Пример: 4.0,6.75.
- Если динамический ввод отключен, введите знак @, затем значение по оси X, запятую, значение по оси Y. Пример: @4.0,6.75.
- Нажмите клавишу пробела или ENTER.
Определенная длина

- Выберите вкладку «Главная» > панель «Рисование» > «Отрезок» . найти
- Укажите начальную точку.
- Выполните одно из следующих действий, чтобы задать длину.
- Переместите указатель мыши, чтобы задать направление и угол, и введите значение длины, например 6.5.
- Введите символ @ и значение длины, а затем левую угловую скобку ( <) и значение угла, например @6.5<45.
- Нажмите клавишу пробела или ENTER.
Под определенным углом

- Выберите вкладку «Главная» > панель «Рисование» > «Отрезок» . найти
- Укажите начальную точку.
- Выполните одно из следующих действий, чтобы задать угол.
- Введите символ знака меньше ( <) и значение угла, например <45, и переместите курсор в нужном направлении.
- Введите полярные координаты, например 2.5
- Нажмите клавишу F8, чтобы включить режим «Орто» для блокировки угла по горизонтали и вертикали. Кроме того, можно нажать клавишу SHIFT при определении следующей точки для горизонтального или вертикального направления.
- Нажмите клавишу F10 для включения режима полярного отслеживания. Может потребоваться использовать команду РЕЖИМРИС на вкладке полярного отслеживания, чтобы задать дополнительные полярные углы и выбрать отслеживание всех параметров полярных углов.
- Переместите указатель мыши, чтобы указать приблизительный угол.
- Выполните одно из следующих действий, чтобы задать длину.
- Задайте конечную точку с использованием объектной привязки или без нее, щелкнув точку в нужном месте. При необходимости обрежьте или удлините получившийся отрезок.
- Укажите длину отрезка, например 2,5.
- Нажмите клавишу пробела или ENTER.
Под определенным углом к отрезку
Временное выравнивание значка ПСК относительно существующего отрезка упрощает процедуру рисования отрезка под определенным углом к другому отрезку.
- В командной строке введите ПСК.
- Введите об (Объект) и выберите существующую линию. Начало ПСК (0,0,0) определено заново.


- Введите символ знака меньше ( <) и значение угла, например <45, и переместите курсор в нужном направлении.
- Переместите указатель мыши, чтобы задать приблизительный угол.
Понятия, связанные с данным
- Полилинии
- Линии
- Ввод координат
- Полярные отслеживание и привязка
- Ортогональное рисование (режим «Орто»)
Задачи, связанные с данной
- Задание точного расположения точки
- Построение полилиний
- Построение прямоугольника
- Построение эскизов от руки
Строим полилинию в AutoCAD по координатам из таблицы Excel
Возникла недавно простая задача: построить в AutoCAD полилинию по координатам из таблицы Excel .
Знаю, что можно написать программу на AutoLISP (или найти готовую), но дело осложнялось тем, что создать полилинию надо было в AutoCAD LT, который, как известно, не поддерживает программирование. После недолгого изучения вопроса решение было найдено. Делюсь.
Задача: в таблице Excel содержатся координаты точек. Необходимо по этим точкам создать полилинию в AutoCAD. При этом, формат файла Excel может быть разным в зависимости от того, откуда получены данные (результат лазерного сканирования, топосъемка, таблица координат от контрольно-измерительной машины и пр.)
Решение: сначала штатными функциями Excel преобразовать координаты в вид X.X,Y.Y, скопировать массив координат в буфер обмена, затем в AutoCAD запустить команду ПЛИНИЯ (_PLINE) и подставить значения координат из буфера.
Предлагаю пошаговую инструкцию.
Подготовка данных в Excel
Открываем таблицу Excel.
В нашем случае в таблице каждая координата точки записана в отдельной ячейке
ВАЖНО! В AutoCAD координаты вводятся в формате X.X,Y.Y — т.е. дробные части координат отделяются друг от друга точкой, а сами координаты — запятой!
Т.к. в нашем случае в таблице Excel дробные части отделены запятой, то необходимо заменить их на точки. Для этого на ленте перейдем на вкладку Главная ➤ панель Редактирование ➤ Заменить .
В появившемся окне Найти и заменить в качестве параметра Найти вводим запятую, в качестве Заменить на — точку и нажимаем кнопку Заменить все
В результате все числа в таблице будут приведены к нужному нам формату
Обратите внимание, что если в вашем исходном файле в качестве разделителя используется точка, то дополнительно преобразовывать ничего не нужно.
Движемся дальше. Теперь необходимо разрозненные координаты X и Y объединить в одну запись в ячейке. Для этого можно использовать стандартные функции Excel, например, СЦЕПИТЬ или ОБЪЕДИНИТЬ .
В соседнем столбце вводим формулу =СЦЕПИТЬ(A1;»,»;B1)
В этой форуме A1 и B1 — адреса ячеек с координатами, «,» — символ, который будет вставлен между ними
Перетаскиваем маркер заполнения ячеек для того, чтобы скопировать формулу во все ячейки столбца. В итоге получаем готовую таблицу координат
Если для объединения вы будете использовать функцию ОБЪЕДИНИТЬ, то формула будет следующая =ОБЪЕДИНИТЬ(«,»;ИСТИНА;A1;B1)
Главное, на что нужно обратить внимание: в результате преобразований мы должны получить в ячейке запись вида X.X,Y.Y.
Выделяем все полученные ячейки с координатами и копируем их содержимое в буфер обмена
Строим полилинию в AutoCAD
Запускаем AutoCAD или AutoCAD LT.
Запускаем команду ПЛИНИЯ (_PLINE) и в командную строку вставляем содержимое буфера обмена