Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Segments of straight line flows that are edges of some polygon #309

Open
videlec opened this issue Nov 16, 2024 · 4 comments
Open

Segments of straight line flows that are edges of some polygon #309

videlec opened this issue Nov 16, 2024 · 4 comments

Comments

@videlec
Copy link
Collaborator

videlec commented Nov 16, 2024

The behavior of segment that are edges is a bit confusing at the moment

sage: from flatsurf import *
sage: S = translation_surfaces.mcmullen_L(1,1,1,1)
sage: traj = S.tangent_vector(0, (0, 0), (1, 0)).straight_line_trajectory()
sage: traj.flow(1)
sage: s = traj.segments()[0]
sage: s
Segment in polygon 0 starting at (0, 0) and ending at (1, 1)

Here the string representation is wrong: it is ending at (1, 0). The reason is that (0, 0) implicitly refers to coordinates in polygon 0 while (1, 1) refers to coordinates in polygon 1. This becomes apparent when looking at the start and end of the segment

sage: s.start()
SimilaritySurfaceTangentVector in polygon 0 based at (0, 0) with vector (1, 0)
sage: s.end()
SimilaritySurfaceTangentVector in polygon 1 based at (1, 1) with vector (-1, 0)
@wphooper
Copy link
Collaborator

It is probably not well documented, but this was purposeful. When you create a tangent vector along the common edge of two polygons, it chooses the polygon that lies to the left of the tangent vector.

@videlec
Copy link
Collaborator Author

videlec commented Nov 17, 2024

That is fine, but the string representation is still wrong.

@videlec
Copy link
Collaborator Author

videlec commented Nov 17, 2024

And more dramatically s.end() belongs to a different polygon.

@videlec
Copy link
Collaborator Author

videlec commented Nov 17, 2024

To give some context, my complaint comes from #308 where the case of segments has to be considered separately exactly because of this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

2 participants