Массив данных из картинки
-
- assistant
- Сообщения: 105
- Зарегистрирован: 27 фев 2009, 15:00
- Награды: 1
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Массив данных из картинки
А вообще можно сделать так чтобы узлы совпавшие оставались на экране, а те которые не совпали исчезали?
-
mzu2006
- doctor
- Сообщения: 2456
- Зарегистрирован: 16 авг 2008, 02:12
- Награды: 3
- Версия LabVIEW: 7.1 10 11 12
- Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
- Контактная информация:
Re: Массив данных из картинки
как запрограммируешь так и будет.
Поверни. Вычисли совпадающие координаты, нарисуй, как я нарисовал в Mesh.vi .
Матрица поворота - это в курс аналитической геометрии .
Поверни. Вычисли совпадающие координаты, нарисуй, как я нарисовал в Mesh.vi .
Матрица поворота - это в курс аналитической геометрии .
Правила форума (Forum rules in Russian)
rm -rf /mnt/windows
rm -rf /mnt/windows
-
Konstantin Sumenko
- expert
- Сообщения: 1439
- Зарегистрирован: 17 июл 2008, 12:20
- Награды: 2
- Версия LabVIEW: 2010
- Откуда: Moscow
- Поблагодарили: 1 раз
- Контактная информация:
-
- assistant
- Сообщения: 105
- Зарегистрирован: 27 фев 2009, 15:00
- Награды: 1
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Массив данных из картинки
Можешь сохранить в вервии 8.5 а то у меня не открывается.mzu2006 писал(а):Рисвал сетку когда-то. держи.
-
mzu2006
- doctor
- Сообщения: 2456
- Зарегистрирован: 16 авг 2008, 02:12
- Награды: 3
- Версия LabVIEW: 7.1 10 11 12
- Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
- Контактная информация:
Re: Массив данных из картинки
Посмотри на тот пост, где я выкладывал сетку. Там две версии VI. Одна из низ (подписано) для 8.5
Правила форума (Forum rules in Russian)
rm -rf /mnt/windows
rm -rf /mnt/windows
-
- assistant
- Сообщения: 105
- Зарегистрирован: 27 фев 2009, 15:00
- Награды: 1
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Массив данных из картинки
А как можно сделать центр вращения сетки в середине ее? И можно ли сделать Picture прозрачной?
-
mzu2006
- doctor
- Сообщения: 2456
- Зарегистрирован: 16 авг 2008, 02:12
- Награды: 3
- Версия LabVIEW: 7.1 10 11 12
- Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
- Контактная информация:
Re: Массив данных из картинки
это векторная картинка - у неё нет фона - она уже прозрачная. Если сохранишь в растровом формате, то там надо вставлять прозрачность.
Насчёт вращения. В mesh.vi задаются координаты четырёх массивов точек (начало вертикальной сетки, конец сетки, начало горизонтальной сетки, конец горизонтальной сетки). В принципе, если ко всем этим координатам добавить вектор смещения (т.е. сделать центр вращения в середине), умножить на матрицу поворота (т.е. повернуть) и добавить вектор смещения противоположный первому (т.е. вернуть всё к начальным координатам) всё должно получиться так как ты говоришь.
Кстати, вместо матрицы поворота можно превратить пару (x,y) в комплексное число, потом его в полярное представление, добавить угол,и назад в координатное представление. М.б. будет быстрее
Насчёт вращения. В mesh.vi задаются координаты четырёх массивов точек (начало вертикальной сетки, конец сетки, начало горизонтальной сетки, конец горизонтальной сетки). В принципе, если ко всем этим координатам добавить вектор смещения (т.е. сделать центр вращения в середине), умножить на матрицу поворота (т.е. повернуть) и добавить вектор смещения противоположный первому (т.е. вернуть всё к начальным координатам) всё должно получиться так как ты говоришь.
Кстати, вместо матрицы поворота можно превратить пару (x,y) в комплексное число, потом его в полярное представление, добавить угол,и назад в координатное представление. М.б. будет быстрее
Правила форума (Forum rules in Russian)
rm -rf /mnt/windows
rm -rf /mnt/windows
-
- assistant
- Сообщения: 105
- Зарегистрирован: 27 фев 2009, 15:00
- Награды: 1
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Массив данных из картинки
Просто к Х0, У0, Xend, Yend прибавить вектор? он должен быть 2Д или 1Д? Я сделал как ты говоришь у меня просто белая картинка стала, сетка вообще исчезлаmzu2006 писал(а):В принципе, если ко всем этим координатам добавить вектор смещения (т.е. сделать центр вращения в середине), умножить на матрицу поворота (т.е. повернуть) и добавить вектор смещения противоположный первому (т.е. вернуть всё к начальным координатам) всё должно получиться так как ты говоришь.
-
mzu2006
- doctor
- Сообщения: 2456
- Зарегистрирован: 16 авг 2008, 02:12
- Награды: 3
- Версия LabVIEW: 7.1 10 11 12
- Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
- Контактная информация:
Re: Массив данных из картинки
Нет, я имел ввиду вот что:
1. Смещение - это когда к каждой точке (кластеру, который заходит на вход MovePen.vi и DrawLine.vi) ты прибавляешь
кластер, содержащий x0, y0 - вектора смещения.
2. Т.е. вектор 2D.
Если центр твоей решётки (Xc, Yc), то
первое смещение (-Xc, -Yc)
потом поворот
второе смещение (Xc, Yc)
1. Смещение - это когда к каждой точке (кластеру, который заходит на вход MovePen.vi и DrawLine.vi) ты прибавляешь
кластер, содержащий x0, y0 - вектора смещения.
2. Т.е. вектор 2D.
Если центр твоей решётки (Xc, Yc), то
первое смещение (-Xc, -Yc)
потом поворот
второе смещение (Xc, Yc)
Правила форума (Forum rules in Russian)
rm -rf /mnt/windows
rm -rf /mnt/windows
-
mzu2006
- doctor
- Сообщения: 2456
- Зарегистрирован: 16 авг 2008, 02:12
- Награды: 3
- Версия LabVIEW: 7.1 10 11 12
- Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
- Контактная информация:
Re: Массив данных из картинки
В сочетании с темой про нестандартные контролы самому интересно стало. Короче, выглядит как-то так. Правда неоптимально, но работает.
- Вложения
-
- Mesh.vi
- (15.27 КБ) 177 скачиваний
-
- Rotate.vi
- (9.92 КБ) 177 скачиваний
-
- Mesh.vi
- 8.5 version
- (23.88 КБ) 170 скачиваний
-
- Rotate.vi
- 8.5 version
- (19.88 КБ) 173 скачивания
Последний раз редактировалось mzu2006 23 мар 2009, 02:21, всего редактировалось 1 раз.
Правила форума (Forum rules in Russian)
rm -rf /mnt/windows
rm -rf /mnt/windows
-
- assistant
- Сообщения: 105
- Зарегистрирован: 27 фев 2009, 15:00
- Награды: 1
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Массив данных из картинки
Я теперь пытаюсь сравнивать координаты сеток, повернутой и простой. при 0 градусов все работает , сетка рисуется, а при любом другом нет. Перепробовал уже все что знаю, никак не получается. Может кто что посоветует.
- Вложения
-
- Mesh (2) Folder.rar
- (53.56 КБ) 157 скачиваний
-
- assistant
- Сообщения: 105
- Зарегистрирован: 27 фев 2009, 15:00
- Награды: 1
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Массив данных из картинки
Поясню что я хочу получить. Одну картинку крутим на любой угол, другая не крутится ( 0 угол). Далее надо сравнить координаты узлов, если совпали, то эта точка показывается на новом рисунке, на 3 рисунке нада чтобы были только совпавшие точки.
-
mzu2006
- doctor
- Сообщения: 2456
- Зарегистрирован: 16 авг 2008, 02:12
- Награды: 3
- Версия LabVIEW: 7.1 10 11 12
- Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
- Контактная информация:
Re: Массив данных из картинки
Ты сравниваешь концы линий, составляющих сетку. А тебе надо сравнивать точки пересечений. Кроме того, после поворота числа получаются дробные, которые потом приводятся к целым. Т.е. сравнивать их потом иконкой "Equal?" не совсем корректно. Вернее было бы сравнивать абсолютную величину разницы с, скажем, единицей или двойкой.
Правила форума (Forum rules in Russian)
rm -rf /mnt/windows
rm -rf /mnt/windows
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
- 3 Ответы
- 411 Просмотры
-
Последнее сообщение PAG
-
- 6 Ответы
- 1060 Просмотры
-
Последнее сообщение JohnChaban
-
- 3 Ответы
- 870 Просмотры
-
Последнее сообщение IvanLis
-
- 13 Ответы
- 1224 Просмотры
-
Последнее сообщение Boxa
-
- 0 Ответы
- 502 Просмотры
-
Последнее сообщение Juri