Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/координаты ячеек, закрытых произвольной фигурой - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
координаты ячеек, закрытых произвольной фигурой
logger Дата: Среда, 30.04.2025, 08:41 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 11
Репутация: 0 ±
Замечаний: 0% ±

Добрый день. На лист EXCEL вставлено изображение из файла (несколько пересекающихся линий, цвет не важен). Необходимо перечислить все ячейки листа, полностью закрытые рисунком или даже частично затронутые краем рисунка. Есть ли возможность сделать это на уровне VBA? Спасибо!
К сообщению приложен файл: koordinaty_jacheek_zakrytykh_p.xlsx (9.9 Kb)
 
Ответить
СообщениеДобрый день. На лист EXCEL вставлено изображение из файла (несколько пересекающихся линий, цвет не важен). Необходимо перечислить все ячейки листа, полностью закрытые рисунком или даже частично затронутые краем рисунка. Есть ли возможность сделать это на уровне VBA? Спасибо!

Автор - logger
Дата добавления - 30.04.2025 в 08:41
Апострофф Дата: Среда, 30.04.2025, 10:39 | Сообщение № 2
Группа: Проверенные
Ранг: Обитатель
Сообщений: 467
Репутация: 129 ±
Замечаний: 0% ±

Excel 1997
logger, на листе нет изображения, рисунка. Есть Полилиния: фигура 2
Поэтому уточните задачу.
К сообщению приложен файл: 8691579.jpg (33.3 Kb)


Сообщение отредактировал Апострофф - Среда, 30.04.2025, 10:41
 
Ответить
Сообщениеlogger, на листе нет изображения, рисунка. Есть Полилиния: фигура 2
Поэтому уточните задачу.

Автор - Апострофф
Дата добавления - 30.04.2025 в 10:39
logger Дата: Четверг, 01.05.2025, 21:05 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 11
Репутация: 0 ±
Замечаний: 0% ±

Добрый вечер, Апострофф. Спасибо, что пробуете разобраться в моём проекте.
Рисунки, с которыми нужно работать, не являются графиками, соответственно я не могу применить математические методы изначально и пытаюсь, таким образом "оцифровать" изображение.
Сделал рисунок в формате JPG и внёс его на лист: "Вставка - Иллюстрации - Рисунки - Это устройство". Во вложении.
Ячейки листа уменьшены до квадрата с минимальным размером стороны, таким образом получилась координатная сетка.
В толщину линии рисунка укладывается 2-3 ячейки и этого достаточно для точного позиционирования относительных смещений, расчёта наклона касательных и т.п..
Но с VBA я немного знаком, а с предложенным в инете вариантом написать "позиционирование указателя мыши на Питоне" разобраться точно не смогу.
Если у меня будет список в варианте: "на уровне строки 55: линии1 принадлежат столбцы АА,АВ,АС; линии2 принадлежат столбцы ВА,ВВ,ВС;..." или что-то подобное, то дальше я смогу сделать нужные мне оценки.
И да, Вы правы, полилиния, выбранная мною как пример - это плохой пример. Так как рисунок вносится вместе с его холстом, а это, если я правильно понимаю, усложняет задачу?
Конечно же, если есть более простой способ "оцифровать" линии произвольного изображения - буду рад ликбезу!
К сообщению приложен файл: koordinaty_2.xlsx (28.9 Kb)


Сообщение отредактировал logger - Пятница, 02.05.2025, 04:52
 
Ответить
СообщениеДобрый вечер, Апострофф. Спасибо, что пробуете разобраться в моём проекте.
Рисунки, с которыми нужно работать, не являются графиками, соответственно я не могу применить математические методы изначально и пытаюсь, таким образом "оцифровать" изображение.
Сделал рисунок в формате JPG и внёс его на лист: "Вставка - Иллюстрации - Рисунки - Это устройство". Во вложении.
Ячейки листа уменьшены до квадрата с минимальным размером стороны, таким образом получилась координатная сетка.
В толщину линии рисунка укладывается 2-3 ячейки и этого достаточно для точного позиционирования относительных смещений, расчёта наклона касательных и т.п..
Но с VBA я немного знаком, а с предложенным в инете вариантом написать "позиционирование указателя мыши на Питоне" разобраться точно не смогу.
Если у меня будет список в варианте: "на уровне строки 55: линии1 принадлежат столбцы АА,АВ,АС; линии2 принадлежат столбцы ВА,ВВ,ВС;..." или что-то подобное, то дальше я смогу сделать нужные мне оценки.
И да, Вы правы, полилиния, выбранная мною как пример - это плохой пример. Так как рисунок вносится вместе с его холстом, а это, если я правильно понимаю, усложняет задачу?
Конечно же, если есть более простой способ "оцифровать" линии произвольного изображения - буду рад ликбезу!

Автор - logger
Дата добавления - 01.05.2025 в 21:05
testuser2 Дата: Пятница, 02.05.2025, 11:41 | Сообщение № 4
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 4 ±
Замечаний: 0% ±

2019
logger, здравствйте, похожйий вопрос был здесь
 
Ответить
Сообщениеlogger, здравствйте, похожйий вопрос был здесь

Автор - testuser2
Дата добавления - 02.05.2025 в 11:41
logger Дата: Пятница, 02.05.2025, 19:11 | Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 11
Репутация: 0 ±
Замечаний: 0% ±

Здравствуйте, testuser2. Спасибо Вам. Разобрался. Уже интересный результат.
Внёс свой рисунок на лист, "закрыл" его (вручную) сверху сплайном, напустил на сплайн тот макрос, который Вы предложили в прошлой теме - получил нужные мне координаты!
Единственная проблема - много ручной работы и, соответственно, непозволительное замедление процесса обработки рисунка. Хотя отклонения координат, насколько я вижу, совершенно в пределах разумных погрешностей.

То есть хаотичный рисунок, не принадлежащий семейству стандартных иллюстраций EXCEL, никак нельзя считать с листа?
 
Ответить
СообщениеЗдравствуйте, testuser2. Спасибо Вам. Разобрался. Уже интересный результат.
Внёс свой рисунок на лист, "закрыл" его (вручную) сверху сплайном, напустил на сплайн тот макрос, который Вы предложили в прошлой теме - получил нужные мне координаты!
Единственная проблема - много ручной работы и, соответственно, непозволительное замедление процесса обработки рисунка. Хотя отклонения координат, насколько я вижу, совершенно в пределах разумных погрешностей.

То есть хаотичный рисунок, не принадлежащий семейству стандартных иллюстраций EXCEL, никак нельзя считать с листа?

Автор - logger
Дата добавления - 02.05.2025 в 19:11
testuser2 Дата: Суббота, 03.05.2025, 05:43 | Сообщение № 6
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 4 ±
Замечаний: 0% ±

2019
То есть хаотичный рисунок, не принадлежащий семейству стандартных иллюстраций EXCEL, никак нельзя считать с листа?

Рисунок можно считать в массив байтов. На сколько я знаю в VB6 есть стандартные (или полустандартные) способы это сделать, в VBA не знаю. Но имею специальной цели рекламировать какой-то внешний ресурс, но в данном случае, думаю, вам бы больше помогли в разделе Visual Basic (не VBA, а именно VB) форума, на который я уже здесь ссылался, а уже инструкции из VB6 в свою очередь можно будет "телепортировать" в VBA, какими-нибудь способами (здесь уже могу помочь я).


Сообщение отредактировал testuser2 - Суббота, 03.05.2025, 05:44
 
Ответить
Сообщение
То есть хаотичный рисунок, не принадлежащий семейству стандартных иллюстраций EXCEL, никак нельзя считать с листа?

Рисунок можно считать в массив байтов. На сколько я знаю в VB6 есть стандартные (или полустандартные) способы это сделать, в VBA не знаю. Но имею специальной цели рекламировать какой-то внешний ресурс, но в данном случае, думаю, вам бы больше помогли в разделе Visual Basic (не VBA, а именно VB) форума, на который я уже здесь ссылался, а уже инструкции из VB6 в свою очередь можно будет "телепортировать" в VBA, какими-нибудь способами (здесь уже могу помочь я).

Автор - testuser2
Дата добавления - 03.05.2025 в 05:43
testuser2 Дата: Суббота, 03.05.2025, 07:18 | Сообщение № 7
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 4 ±
Замечаний: 0% ±

2019
Еще вот что скажу, вот, допустим, получили вы массив пикселей, черные, белые, какие-нибудь серые и т.д., чтобы получить линию, наверное, надо будет применить какое-то интерполлирование. Но тут еще проблемма в виде пересекающихся линий, как определить к какой кривой принадлежит та или иная линия, и , возможно еще какие-то подводные камни.
Есть специальные программы для векторизации изображений, скорее всего вам лучше прибегнуть к их помощи, а уже результат работы этих программ каким-то образчиком перегонять в Эксель.


Сообщение отредактировал testuser2 - Суббота, 03.05.2025, 07:19
 
Ответить
СообщениеЕще вот что скажу, вот, допустим, получили вы массив пикселей, черные, белые, какие-нибудь серые и т.д., чтобы получить линию, наверное, надо будет применить какое-то интерполлирование. Но тут еще проблемма в виде пересекающихся линий, как определить к какой кривой принадлежит та или иная линия, и , возможно еще какие-то подводные камни.
Есть специальные программы для векторизации изображений, скорее всего вам лучше прибегнуть к их помощи, а уже результат работы этих программ каким-то образчиком перегонять в Эксель.

Автор - testuser2
Дата добавления - 03.05.2025 в 07:18
logger Дата: Суббота, 03.05.2025, 17:31 | Сообщение № 8
Группа: Пользователи
Ранг: Новичок
Сообщений: 11
Репутация: 0 ±
Замечаний: 0% ±

Добрый вечер, testuser2.
Спасибо Вам большое за развёрнутые ответы!
На счёт программы векторной графики я думал - она действительно оцифрует точечный рисунок, но представит результат в виде чертежа. А как выделить в таблицу данные тысячи небольших векторов - мне снова непонятно.
Буду дальше пробовать копать инет. И да, попробую разобраться что есть VB6 :-)
Вам - всего самого доброго!
 
Ответить
СообщениеДобрый вечер, testuser2.
Спасибо Вам большое за развёрнутые ответы!
На счёт программы векторной графики я думал - она действительно оцифрует точечный рисунок, но представит результат в виде чертежа. А как выделить в таблицу данные тысячи небольших векторов - мне снова непонятно.
Буду дальше пробовать копать инет. И да, попробую разобраться что есть VB6 :-)
Вам - всего самого доброго!

Автор - logger
Дата добавления - 03.05.2025 в 17:31
testuser2 Дата: Воскресенье, 04.05.2025, 02:27 | Сообщение № 9
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 4 ±
Замечаний: 0% ±

2019
А как выделить в таблицу данные тысячи небольших векторов - мне снова непонятно.

Если оцифрует в тысячи векторов рисунок из вашего примера, то наверное это плохой векторизатор. Если ситуация получше, то можно попробовать разобраться в структуре файла векторной графики, чтобы извлечь от туда информацию об объектах и их точках.


Сообщение отредактировал testuser2 - Воскресенье, 04.05.2025, 02:28
 
Ответить
Сообщение
А как выделить в таблицу данные тысячи небольших векторов - мне снова непонятно.

Если оцифрует в тысячи векторов рисунок из вашего примера, то наверное это плохой векторизатор. Если ситуация получше, то можно попробовать разобраться в структуре файла векторной графики, чтобы извлечь от туда информацию об объектах и их точках.

Автор - testuser2
Дата добавления - 04.05.2025 в 02:27
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2025 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!