Plot point from screen/ui position.
(&self, pos: Pos2)
| 516 | |
| 517 | /// Plot point from screen/ui position. |
| 518 | pub fn value_from_position(&self, pos: Pos2) -> PlotPoint { |
| 519 | let x = remap( |
| 520 | pos.x as f64, |
| 521 | if self.inverted_axis[0] { |
| 522 | (self.frame.right() as f64)..=(self.frame.left() as f64) |
| 523 | } else { |
| 524 | (self.frame.left() as f64)..=(self.frame.right() as f64) |
| 525 | }, |
| 526 | self.bounds.range_x(), |
| 527 | ); |
| 528 | let y = remap( |
| 529 | pos.y as f64, |
| 530 | // negated y axis by default |
| 531 | if self.inverted_axis[1] { |
| 532 | (self.frame.top() as f64)..=(self.frame.bottom() as f64) |
| 533 | } else { |
| 534 | (self.frame.bottom() as f64)..=(self.frame.top() as f64) |
| 535 | }, |
| 536 | self.bounds.range_y(), |
| 537 | ); |
| 538 | |
| 539 | PlotPoint::new(x, y) |
| 540 | } |
| 541 | |
| 542 | /// Transform a rectangle of plot values to a screen-coordinate rectangle. |
| 543 | /// |
no test coverage detected