0
$\begingroup$

Giving a 3D circle (Not a sphere) whose radius and data points at the boundary are known, how can such circle be parameterized such that the set of possible points within the bounded circle can be calculated?

Examples of such circle are given in Figure 1. Each circle has its center and connected-boundary with the same color. I have Included 3 circles to show that such circle is not a sphere.

My question again is how to determine the cartesian coordinates of all points bounded within each circle given the coordinates of its centre and a point on its boundary (or coordinates of all data points on the boundary)?

  • 0
    Think of this area as an intersection of a sphere and a plane where the radios of all possible circle is given as an inequality.2017-01-06
  • 0
    I finally solved the problem using the coordinate transformation equation2017-01-14

1 Answers 1

1

What exactly are you given? If you are just given the center of such a circle and a point on the circle, that doesn't uniquely define the circle.

Assuming you are given the center and the boundary of the circle, here's an idea, but there might be an easier way. (I don't know how much you already know First change coordinate systems so that the circle is in the $x-y$ plane; if your current system is $(x,y,z)$ coordinates, then change to $(x',y',z')$ coordinates, defined by $$ \begin{pmatrix} x' \\ y' \\ z' \end{pmatrix} = R \begin{pmatrix} x \\ y \\ z \end{pmatrix}, $$ where $R$ is an appropriate rotation matrix. One way to calculate $R$ would be to view it as a composition of "simple" rotations, namely, rotations about each of the axes, and think about what the rotation would need to do to get the normal vector to the circle coinciding with the $z$ axis.

For example, if the normal vector was $(-1, 0, 1)$, $R$ would be the rotation matrix that rotates vectors in space $\pi/4$ radians clockwise, so that the new normal vector would be $(0,0,\sqrt{2})$, so that the circle lies in the $x-y$ plane.

Then parameterize the interior like normal ($(x')^2 + (y')^2 \leq r$), then transform back to $(x,y,z)$ coordinates.

One more thing: if the center isn't at the origin, you'll have to shift so that it is at the origin, since linear algebra likes things to be at the origin.