Lines and circles #121

Open
opened 2025-10-07 05:02:09 +00:00 by glen · 2 comments
Owner

This issue is an expansion of the commentary in notes/inversive.md (our expository/explanatory text is sadly fragmented among notes files in the repo, the wiki of the repo, and issues in the repo) on lines and circles. From a design perspective, as soon as we want to allow the manipulation of lines and circles in dyna3, they will need representations. It seems at the moment we are leaning toward a sort of derived representation, i.e., that they are represented by some collection of our directly-representable entities, presumably with some automatic constraints between them.

Already in the notes file, we have some proposals:

  • to represent a circle by its concentric sphere and its containing plane, which must be at right angles, and any such pair of sphere and perpendicular plane represents the circle where they intersect.
  • to represent a line by the plane containing it and the origin, and the perpendicular plane that contains it. Any such pair of a plane containing the origin and another plane perpendicular to it represents the line where they intersect. This representation is the limit of some representations of circles that approach the line, but there are many families of circles approaching the line whose limit of representations is not this. Moreover, for a generic circle, neither the concentric sphere nor the containing plane will go through the origin, so the constraints are different for circle and line representations.
  • to represent a line by the perpendicular plane to it through the origin, and a point on it. Any such pair of plane through the origin and a point on it represents the perpendicular line through that point. This compares well to Plücker coordinates, in that the perpendicular plane corresponds to the direction part and the point on the line is in bijection with the moment part (note the moment part lies in the perpendicular plane), roughly by a 90° rotation. However, this representation doesn't seem to be the limit of circle representations.
  • to represent a line by a bag of (at least two? at least three? exactly three?) collinear points. In the at least or exactly three cases, the same representation could be used for circles. However, this representation is highly non-canonical and seems computationally awkward.
This issue is an expansion of the commentary in notes/inversive.md (our expository/explanatory text is sadly fragmented among notes files in the repo, the wiki of the repo, and issues in the repo) on lines and circles. From a design perspective, as soon as we want to allow the manipulation of lines and circles in dyna3, they will need representations. It seems at the moment we are leaning toward a sort of derived representation, i.e., that they are represented by some collection of our directly-representable entities, presumably with some automatic constraints between them. Already in the notes file, we have some proposals: * to represent a circle by its concentric sphere and its containing plane, which must be at right angles, and any such pair of sphere and perpendicular plane represents the circle where they intersect. * to represent a line by the plane containing it and the origin, and the perpendicular plane that contains it. Any such pair of a plane containing the origin and another plane perpendicular to it represents the line where they intersect. This representation is the limit of some representations of circles that approach the line, but there are many families of circles approaching the line whose limit of representations is not this. Moreover, for a generic circle, neither the concentric sphere nor the containing plane will go through the origin, so the constraints are different for circle and line representations. * to represent a line by the _perpendicular_ plane to it through the origin, and a point on it. Any such pair of plane through the origin and a point on it represents the perpendicular line through that point. This compares well to Plücker coordinates, in that the perpendicular plane corresponds to the direction part and the point on the line is in bijection with the moment part (note the moment part lies in the perpendicular plane), roughly by a 90° rotation. However, this representation doesn't seem to be the limit of circle representations. * to represent a line by a bag of (at least two? at least three? exactly three?) collinear points. In the at least or exactly three cases, the same representation could be used for circles. However, this representation is highly non-canonical and seems computationally awkward.
glen added the
design
label 2025-10-07 05:02:09 +00:00
Author
Owner

In this comment, I want to think about another similar representation for lines. We represent a line by the perpendicular plane through the origin, and a plane containing the line that is perpendicular to the shortest segment from the origin to the line. Sadly, this is not uniquely determined for lines through the origin; perhaps there is a way to patch that up. For all other lines, the two planes are uniquely determined. Further, given two such planes, we know the line: if the containing plane goes through the origin, it is the line perpendicular to the perpendicular plane through the origin. If the containing plane does not, it is the line perpendicular to the perpendicular plane, through the point on the containing plane closest to the origin.

This representation sort of extends to circles, at least to some extent. Every circle has a perpendicular plane through the origin, but unfortunately this plane is not unique for circles whose axis goes through the origin. Its concentric containing circle is perpendicular to any such plane. However, it doesn't seem that you can recover the circle from a plane through the origin and its concentric containing sphere: there seem to be a family of great circles in that sphere perpendicular to the given plane, naturally parameterized by [0, \tau/2).

So not sure that this style of representation is going anywhere. I guess any circle or line E could be represented by a plane P through the origin perpendicular to E, a sphere or plane S containing E, and a point in the intersection of P, S, and E. With all that data, the circle or line can be recovered uniquely. But (a) that's a lot of entities, with a fair amount of redundancy, to represent a line or circle, and (b) for many lines and circles, the choice of P,S,E are far from unique.

So I guess the "ideal" representation of lines and circles remains elusive.

In this comment, I want to think about another similar representation for lines. We represent a line by the perpendicular plane through the origin, and a plane containing the line that is perpendicular to the shortest segment from the origin to the line. Sadly, this is not uniquely determined for lines through the origin; perhaps there is a way to patch that up. For all other lines, the two planes are uniquely determined. Further, given two such planes, we know the line: if the containing plane goes through the origin, it is the line perpendicular to the perpendicular plane through the origin. If the containing plane does not, it is the line perpendicular to the perpendicular plane, through the point on the containing plane closest to the origin. This representation sort of extends to circles, at least to some extent. Every circle has a perpendicular plane through the origin, but unfortunately this plane is not unique for circles whose axis goes through the origin. Its concentric containing circle is perpendicular to any such plane. However, it doesn't seem that you can recover the circle from a plane through the origin and its concentric containing sphere: there seem to be a family of great circles in that sphere perpendicular to the given plane, naturally parameterized by $[0, \tau/2)$. So not sure that this style of representation is going anywhere. I guess any circle or line E could be represented by a plane P through the origin perpendicular to E, a sphere or plane S containing E, and a point in the intersection of P, S, and E. With all that data, the circle or line can be recovered uniquely. But (a) that's a lot of entities, with a fair amount of redundancy, to represent a line or circle, and (b) for many lines and circles, the choice of P,S,E are far from unique. So I guess the "ideal" representation of lines and circles remains elusive.
Author
Owner

One other representation I will mention: a circle could be represented by a plane perpendicular to it through the origin, and the two points of intersection between the plane and circle (again, this representation is not unique for circles whose axis goes through the origin). This extends to line when the second point is allowed to go to infinity. But we're not really dealing with points at infinity directly in the current dyna3, even though they are admitted in the engine coordinates... This representation is was the source in my mind of the representation in the previous comment, in which I was just trying to get rid of the second point and the need for it to go to infinity by replacing it with a sph/ane.

One other representation I will mention: a circle could be represented by a plane perpendicular to it through the origin, and the two points of intersection between the plane and circle (again, this representation is not unique for circles whose axis goes through the origin). This extends to line when the second point is allowed to go to infinity. But we're not really dealing with points at infinity directly in the current dyna3, even though they are admitted in the engine coordinates... This representation is was the source in my mind of the representation in the previous comment, in which I was just trying to get rid of the second point and the need for it to go to infinity by replacing it with a sph/ane.
Sign in to join this conversation.
No description provided.