САПР для инженера
Блог Михайлова Андрея о приемах работы и хитростях в САПР
Страницы
вторник, 13 февраля 2018 г.
Строим полилинию в 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 — адреса ячеек с координатами, "," — символ, который будет вставлен между ними
UPD: в комментариях предложили еще ввести параметр _none для отключения привязки. В этом случае значение формулы будет таким =СЦЕПИТЬ("_none ";A1;",";A1)
Перетаскиваем маркер заполнения ячеек для того, чтобы скопировать формулу во все ячейки столбца. В итоге получаем готовую таблицу координат
Если для объединения вы будете использовать функцию ОБЪЕДИНИТЬ, то формула будет следующая =ОБЪЕДИНИТЬ(",";ИСТИНА;A1;B1)
Главное, на что нужно обратить внимание: в результате преобразований мы должны получить в ячейке запись вида X.X,Y.Y.
Выделяем все полученные ячейки с координатами и копируем их содержимое в буфер обмена
Строим полилинию в AutoCAD
Запускаем AutoCAD или AutoCAD LT.
Запускаем команду ПЛИНИЯ (_PLINE) и в командную строку вставляем содержимое буфера обмена
Заключение
Как видите, многие задачи можно упростить и автоматизировать даже без программирования, но далеко не все.
Если для вас привычней формат видеоурока, то он уже доступен
С остальными приемами работы в AutoCAD можно познакомиться на этой странице блога.
Строим полилинию в 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) и в командную строку вставляем содержимое буфера обмена