1
$\begingroup$

In a 3D-space there is a random number of objects ($X$s) of which their exact position is known.

These objects can be observed through a "screen" which has a certain dimension, position and orientation.

Its position and orientation is related to point $P$. The "screen" can be moved around this point with a fixed distance.

(I'm imagining the "screen" moving on the hull of a sphere around $P$ and the line of touching point and $P$ is always orthogonal to the plane).

Then, there is the observer point ($O$) which is on the opposite side of $P$ related to the plane, maybe with the same distance or less.

The observer now looks "through" the "screen" into the 3D world and sees some of the $X$s.

My questions is, what approach should I follow to calculate where the line between $O$ and one of the $X$ touches the "screen"? What variables do I have to calculate?

My math-lessons date and I'm a little bit rusty when it comes to terms and ideas. Please bear with me and do not hesitate to ask for more details.

Also, I'm aware that this is a quite complete problem-question, but I prefer to ask one big question and maybe get a new idea of how to get along rather than thinking about it on my own and asking only detail-questions and missing out the genius idea.

$\endgroup$
5
  • $\begingroup$ Seems like a problem of "line-plane intersection". Check out this math.stackexchange.com/questions/83990/… to see if it helps $\endgroup$
    – fang
    Commented Aug 21, 2018 at 1:47
  • $\begingroup$ Should we assume that the points $O$ and $P$ and the positions of the objects are all described by Cartesian coordinates? Is it sufficient to use the same kind of 3D coordinates to describe where each line from $O$ to an object intersects the screen, or should we give the screen its own set of 2D coordinates and use those? (Doing everything in one 3D coordinate system actually leads to a relatively simple solution, but if the end goal is to show on a computer screen what the observer would see, you probably want distances up/down or left/right on the computer screen.) $\endgroup$
    – David K
    Commented Aug 21, 2018 at 2:47
  • $\begingroup$ Looking at the page the first comment linked to, it has an answer showing a version of my "simple solution." It assumes some knowledge of vectors, which is very handy to have for problems like this. $\endgroup$
    – David K
    Commented Aug 21, 2018 at 2:55
  • $\begingroup$ Thanks for your comments: O and P are 3D points with x, y, z. Yes, line-plane-intersection is what's needed to find the point on the 2D screen. Yes, I'd need the relative coordinated on the 2D-screen in the end. The link describes "only" how to get the intersection-point, but not how to create the plane based on the "point of the hull", or does it? $\endgroup$
    – Patrick B.
    Commented Aug 21, 2018 at 6:00
  • $\begingroup$ Coming up with an equation for the image plane to use for the intersection is pretty simple, but you’ve still got a degree of freedom left for expressing that point in “relative coordinates.” Namely, which way is “up” on the screen in the 3-D world? $\endgroup$
    – amd
    Commented Aug 21, 2018 at 20:30

1 Answer 1

1
$\begingroup$

Finally I got to the point to advance and I found Geogebra. Which helped me to understand and simply my problem.

Here's what I'm doing to get the point the screen's intersecting point of $O$ and any $X$: $B$:

Given are $X$ (Object), $P$ (Position) and $O$ (Observer position, derived from two given angles).

  1. Calculate the center point of the screen, which is also located the plane $$A = \frac{P+O}{2}$$
  2. Get the perpendicular plane from $$A, \overrightarrow{OP}$$
  3. now we can get $B$ from the intersection of the line $OX$ and the plane found in 2.

That does not yet give me the relative coordinates of $B$ on the screen. But this is out of scope of this question.

enter image description here

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .