|
-14 / 0 / 0
Регистрация: 28.03.2023
Сообщений: 28
|
||||||
[AutoCAD] Построение 2D сетки по координатам из эксель06.04.2023, 06:19. Показов 1566. Ответов 13
Люди добрые, такой вопрос, есть код в теории создающий 2D сетку по координатам из эксель, а на практике выдаёт полную чушь. Начинаю только работать в VBA, поэтому многое не понимаю, помогите пожалуйста!
0
|
||||||
| 06.04.2023, 06:19 | |
|
Ответы с готовыми решениями:
13
Почему при открытии файла эксель, появляется из фонового скрытого режима мой файл эксель |
|
Динохромный
1636 / 774 / 287
Регистрация: 22.12.2015
Сообщений: 2,411
|
|
| 06.04.2023, 08:57 | |
|
Babidjon, пк под рукой нет, насколько я вижу по коду - если вы выбрали размерность 3х3, то и точек у вас должно быть 9, и соответственно координат в Экселе - 27 штук, причем уложены они должны быть рядами по размерности М, а не в произвольном порядке - отрисовка происходит последователтно рядами.
Нужно ваши координаты увидеть, скорее всего проблемы с ними.
0
|
|
|
-14 / 0 / 0
Регистрация: 28.03.2023
Сообщений: 28
|
|
| 06.04.2023, 08:59 [ТС] | |
|
Вот координаты
0
|
|
|
Динохромный
1636 / 774 / 287
Регистрация: 22.12.2015
Сообщений: 2,411
|
|
| 06.04.2023, 09:15 | |
|
Babidjon, у вас 960 точек, значит размерность MxN может быть 240х4, 120х8, 60х16 и т.п., быть 3х3 она не может. Ну и координаты вроде бы сетке не соответствуют - они не рядами уложены.
А зачем вам именно сетка? Я не сильно знаю 3д акада, но вроде бы там есть поверхность, которая из произвольного набора точек формирует 3д-поверхность, это не то, что вам нужно? В сетке координаты нужно отсортировать в правильном порядке - сначала первый ряд, затем второй и тд, иначе не заработает.
0
|
|
|
-14 / 0 / 0
Регистрация: 28.03.2023
Сообщений: 28
|
|
| 06.04.2023, 09:32 [ТС] | |
|
Да у меня задача на работе на уровне циркового представления, сделать из классических комманд автокада, программу на VBA. Вот, сижу велосипед собираю. Сейчас попробую уложить координаты рядами спасибо вам!
0
|
|
|
-14 / 0 / 0
Регистрация: 28.03.2023
Сообщений: 28
|
|
| 06.04.2023, 10:44 [ТС] | |
|
212
0
|
|
|
|
|||||||
| 06.04.2023, 16:03 | |||||||
|
Что такое mSize = 3: nSize = 3? У меня ощущение, что на вход процедуры должен поступить двумерный массив. Вот два варианта с чтением координат из таблицы Excel в массив: двумерный (намного быстрее!) и одномерный
xldown необходимо заменить на -4121
0
|
|||||||
|
Динохромный
1636 / 774 / 287
Регистрация: 22.12.2015
Сообщений: 2,411
|
||||
| 06.04.2023, 17:04 | ||||
|
А1, А2, А3, А4, А5, А6, А7, А8, А9. Если в метод точки отправить в порядке скажем {А1, А7, А2, А9, А3, А4, А8, А7}, то вершины он соединит в этом порядке, т.к. примитив строится построчно в порядке очередности внесенных координат, вместо ортогональной сетки получится ломаная в соответствии с порядком координат. Соответственно, если в одномерном массиве количество координат равно K, а размерность элемента MxN точек, то должно соблюдаться условие M*N=K/3, иначе автокад будет ругаться на неправильное количество координат.
0
|
||||
|
Динохромный
1636 / 774 / 287
Регистрация: 22.12.2015
Сообщений: 2,411
|
|
| 06.04.2023, 17:13 | |
|
Результат работы кода для размерности 4х4 (красный), а также для 2х8 и 8х2 с одинаковыми координатами (просто сместил начерченное вбок, чтобы было видно).
1
|
|
|
|
||
| 06.04.2023, 17:26 | ||
|
Разве что подправить ReDim points(i0 To icol - 1) As Double
1
|
||
|
Динохромный
1636 / 774 / 287
Регистрация: 22.12.2015
Сообщений: 2,411
|
||
| 06.04.2023, 18:21 | ||
|
Нужно чтобы в экселе координаты были введены в порядке, который диктует метод. На скрине результат работы кода для координат из экселевского файла для размерностей 192х5, 96х10, 48х20, 24х40, 12х80, 6х160, 3х320. Что-то мне подсказывает, что порядок координат в файле не сильно правильный (вершины все на своих местах, а вот порядок их соединения - ну как бы размерностей не так много, У акада civil 3d есть возможность отрисовки по точкам, абсолютно не важно в каком порядке они висят. А AcadPolygonMesh мне видится неподходящим инструментом для реализации хотелок, но ТС виднее.
0
|
||
|
Динохромный
1636 / 774 / 287
Регистрация: 22.12.2015
Сообщений: 2,411
|
|
| 06.04.2023, 18:23 | |
|
Вот как это вблизи выглядит, и они все такие:
0
|
|
|
-14 / 0 / 0
Регистрация: 28.03.2023
Сообщений: 28
|
||
| 07.04.2023, 05:40 [ТС] | ||
|
Нет на этой недели возможности поставить Civil на рабочий пк, в понедельник поставят. Можно вас попросить для наглядности прогнать координаты через него? Буду крайне благодарен
Добавлено через 1 минуту Спасибо за ответ!!! подогнал под себя, но всё равно всё строится криво косо. Дело видать действительно в координатах эксель
0
|
||
|
Динохромный
1636 / 774 / 287
Регистрация: 22.12.2015
Сообщений: 2,411
|
|||
| 07.04.2023, 08:16 | |||
|
С задачами, подобными вашей, таких проблем нет, но нужно себе и другую сторону представлять - перенести координаты из экселя прямо в код VBA - задача минут на 5, решается условным форматированием или текстовыми функциями, плюс - поиск и замена "," на ".". VBA доступ предпочтителен, но если нужно допустим залить координаты в GPS трекер, то приходится прописывать теги, а там порядок не всегда математический, и тогда - работать с экселем несколько удобнее, чем с VBA (ну или приходится комбинировать, что чаще). Короче, желательно уметь и так и эдак. В приложенном файле достаточно скопировать желтые ячейки прямо в VBA редактор, оформление заняло минут 5.
0
|
|||
| 07.04.2023, 08:16 | |
|
Помогаю со студенческими работами здесь
14
Построить графики функций (на одной координатной сетке) Построить график функций на одной координатной сетке
Нарисовать схему по координатам на сетке и получить их значения отдельно для расчетов Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|
Фото: Daniel Greenwood
kumehtar 13.11.2025
|
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга,
Ты же видел моря и метели.
Как сменялись короны и стяги,
Как эпохи стрелою летели.
- Этот мир — это крылья и горы,
Снег и пламя, любовь и тревоги,
И бескрайние. . .
|