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

Tile Intersection: Use a Rectangle/AABBox for Tile/TileCombined to reduce complexity #10197

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

sgothel
Copy link

@sgothel sgothel commented Oct 9, 2024

Summary

Tile Intersection: Use a Rectangle/AABBox for Tile/TileCombined to reduce complexity

Use consolidated Rectangle Intersection on ChildSession/ClientSession's isTileInsideVisibleArea
Previous implementation left out the tile boundaries intersecting with the _clientVisibleArea, which is now fixed.

Use an AABBox in TileCombined for ChildSession::isTileInsideVisibleArea(), reducing complexity in Document::drainQueue

Checklist

  • I have run make prettier-write and formatted the code.
  • All commits have Change-Id
  • I have run tests with make check
  • I have issued make run and manually verified that everything looks okay
  • Documentation (manuals or wiki) has been updated or is not required

Sven Göthel added 3 commits October 9, 2024 06:46
Use Rectangle::intersects(..), providing a most efficient branch-less intersection test.

This shall be used in TileDesc's intersect methods,
replacing the less efficient branching expression.

Generation of automatic Rectangle instances is (almost) free.
Note: Previous nor this new code checks for int overflows, assuming sane values.

Signed-off-by: Sven Göthel <[email protected]>
Change-Id: I2d4bbe9956c4d86ec08939992175a25e505a2fa8
…ssion/ClientSession's isTileInsideVisibleArea

Previous implementation left out the tile boundaries intersecting with the _clientVisibleArea, which is now fixed.

Signed-off-by: Sven Göthel <[email protected]>
Change-Id: I2d4bbe9956c4d86ec08939992175a25e505a2fa8
…TileInsideVisibleArea(), reducing complexity in Document::drainQueue

Signed-off-by: Sven Göthel <[email protected]>
Change-Id: I2d4bbe9956c4d86ec08939992175a25e505a2fa8
@sgothel
Copy link
Author

sgothel commented Oct 9, 2024

COOL 24.04 unit tests w/o cypress — FAILURE: unit-wopi-save-on-exit

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

Successfully merging this pull request may close these issues.

perf: de-prioritize rendering non-visible tiles
1 participant