вы можете использовать CurrentPoint
свойство фигуры или оси делать то, что вы хотите. в осях объект: Местоположение последнего щелчка мыши, указанного как массив 2 на 3 в системе координат осей. Свойство содержит координаты двух точек, определяемых местоположением указателя при последнем щелчке мыши, относительно запрошенных осей.
Если щелчок находится внутри осей в ортогональной проекции, то две точки лежат на линии, перпендикулярной плоскости экрана и которая проходит через указатель. Это верно как для двухмерных, так и для трехмерных представлений.
3-D координаты - это точки в системе координат осей, где эта линия пересекает переднюю и заднюю поверхности объема осей (которая определяется осями x, y и z пределов).
Возвращенный матрица имеет вид:
[xfront yfront zfront
xback yback zback]
Первая строка определяет точку ближайшей к позиции камеры. Вторая строка указала точку, наиболее удаленную от положения камеры.
Если щелчок находится за пределами осей в ортогональной проекции, но в пределах фигуры, возвращенные значения:
Back point
- точка в плоскости мишени камеры (которая является перпендикулярной к оси просмотра).
Front point
- Точка в плоскости положения камеры (которая перпендикулярна оси обзора).
Эти точки лежат на линии, проходящей через указатель и перпендикулярной объектам камеры и камерам.
Значения текущей точки при использовании перспективной проекции могут отличаться от одной и той же точки в орфографической проекции, поскольку форма объема осей может быть разной.
Щелчок вне объема осей в перспективной проекции всегда возвращает переднюю точку в качестве текущего положения камеры. Только задняя точка обновляется с координатами точки, лежащей на линии, проходящей от положения камеры через указатель и пересекающей цель камеры в этой точке.
и для фигурного объекта: Расположение последней кнопки на этой фигуре, возвращенной в виде двухэлементного вектора. Значение свойства измеряется из нижнего левого угла окна рисунка, в единицах, определяемых свойством единиц. MATLAB обновляет это свойство всякий раз, когда пользователь нажимает кнопку мыши, пока указатель находится в окне рисунка.
Если пользователь выбирает точку на рисунке, и вы используете значения, возвращаемые свойством CurrentPoint
, чтобы построить эту точку, могут быть различия в позиции из-за ошибок округления.
, например
a=figure
plot(1:100)
location=a.CurrentPoint
Покажите нам код, который вы написали. Мы не знаем, в чем проблема, если мы не увидим, что вы написали. – rayryeng
Я обновил сообщение с двумя картинами, которые вы можете видеть, что –
Эти изображения не показывают, какие getpts дают вам ...... –