Chart - Построить прямую по двум точкам

Простейшие вопросы в области инженерной разработки

Chart - Построить прямую по двум точкам

Postby jane_wild on 11 Jan 2020, 05:23

Всем здравствуйте. Ребята помогите построить прямую на Chart, проходящую через две точки, которые "ставятся щелчками мышки".
Т.е. На Chart (именно Chart, а не Graph) юзер щелкает мышкой раз, запоминаются координаты первой точки, щелкает второй раз - второй. И через указанные точки строится прямая линия. Не знаю как координаты в пикселях переконвертировать в значения соответствующие X(time) и Y(amplitude), а затем построить массив, добавить его к двум существующим и отобразить его на Chart. Посмотрите вложеный :vi: , а также картинку, что бы было более понятно чего хочу добится в итоге. Этот :vi: только для демонстрации и понимания, и ничего общего с реальным проектом не имеет, поэтому не судите строго за его бессмысленность. Заранее спасибо.
Build Line.png
Attachments
Build Line.vi
(19.64 KiB) Downloaded 21 times
User avatar
jane_wild
advanced
advanced
 
Posts: 173
Joined: 30 Jun 2016, 02:11
LabVIEW Version: 2016
Karma: 8

Re: Chart - Построить прямую по двум точкам

Postby Artem.spb on 11 Jan 2020, 18:21

Метод-конвертор, как и в случае с другими графиками
chart.png
Artem.spb
expert
expert
 
Posts: 1729
Joined: 31 Jul 2011, 23:05
Medals: 2
Activity (1) Автор (1)
LabVIEW Version: 12,14,15
Karma: 269
CLD hardware I/O VIP freelance

Re: Chart - Построить прямую по двум точкам

Postby taras_33 on 13 Jan 2020, 00:11

Например вот так. Лучше использовать событие mouse down? вместо mouse up, тогда можно проверить, что юзер кликнул в plot area и игнорировать, если мышиный клик произошел за её пределами.
Math.jpg
Attachments
Build Line2.vi
(24.01 KiB) Downloaded 23 times
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots.
So far, the Universe is winning!
User avatar
taras_33
professional
professional
 
Posts: 323
Joined: 31 Oct 2009, 18:25
Medals: 1
Activity (1)
LabVIEW Version: 2019
Karma: 139
CLD VIP

Re: Chart - Построить прямую по двум точкам

Postby jane_wild on 14 Jan 2020, 14:34

Например вот так.

Спасибо большое, то что нужно. Буду пытаться внедрить в свой проект. Скажите а можно каки то образом отобразить точкой или маленьким кружочком место, где щелкнул поьзователь?
User avatar
jane_wild
advanced
advanced
 
Posts: 173
Joined: 30 Jun 2016, 02:11
LabVIEW Version: 2016
Karma: 8

Re: Chart - Построить прямую по двум точкам

Postby Artem.spb on 14 Jan 2020, 17:50

[quote=="jane_wild"] можно каки то образом отобразить точкой или маленьким кружочком место, где щелкнул поьзователь?[/quote]
был бы это не чарт, можно было бы картинку нарисовать.
или курсор запустить. Или ещё много чего...
А тут мне на ум приходит один вариант а двух исполнениях.
Взять доп. плот, который будет состоять из nan-ов. И только одна точка будет осмысленной. Этот плот, соответственно, отображается только точками, без соединительных линий.
Потом его можно оставить в качестве индикаторов двух точек.
Второй вариант этого же - использовать тот плот, что отвечает за прямую - временно поменять его настройки отображения.
А потом вернуть обратно - когда прямая готова
chart.png
chart.png (23.62 KiB) Viewed 454 times
Artem.spb
expert
expert
 
Posts: 1729
Joined: 31 Jul 2011, 23:05
Medals: 2
Activity (1) Автор (1)
LabVIEW Version: 12,14,15
Karma: 269
CLD hardware I/O VIP freelance

Re: Chart - Построить прямую по двум точкам

Postby kiparym on 14 Jan 2020, 20:11

Похожая тема обсуждалась здесь.
viewtopic.php?f=106&t=8268#p65958
User avatar
kiparym
advanced
advanced
 
Posts: 161
Joined: 06 Sep 2011, 08:52
Location: г. Саров
LabVIEW Version: 8.2 & 2011
Karma: 28

Re: Chart - Построить прямую по двум точкам

Postby jane_wild on 15 Jan 2020, 02:05

Взять доп. плот, который будет состоять из nan-ов. И только одна точка будет осмысленной. Этот плот, соответственно, отображается только точками, без соединительных линий.
Потом его можно оставить в качестве индикаторов двух точек.


Пожалуй этот вариант предпочтительноей, можно будет созерцать две точки и проходящую через них прямую. Спасибо
User avatar
jane_wild
advanced
advanced
 
Posts: 173
Joined: 30 Jun 2016, 02:11
LabVIEW Version: 2016
Karma: 8


Return to Для чайников

Who is online

Users browsing this forum: No registered users and 2 guests

cron