Skip to content

Conversation

gselzer
Copy link
Collaborator

@gselzer gselzer commented Oct 3, 2025

This PR adds in a Mesh node type.

Builds atop #28 (since I added logic necessary for events, bounding boxes, etc.) - that PR really should be merged first!

gselzer added 30 commits July 10, 2025 16:57
Defines how 2D view NDC are mapped to vectors in 3D space
In the pursuit of a single source of truth, let's resort to the
projection matrix (when/if possible?) for this.
For some reason, if I don't do this, the Matrix3D constructor RESURRECTS
some previous matrix I used in a previous test
Thanks to @tlambert03 for the suggestion. Could probably be cleaned up
further, but at least this is a step in the right direction!
Eventually, we'll want to compute grids ourselves on the model side, I
think, but for now this works
...man, this feels so good
Notably, this limits the type of pygfx-specific interaction available.
But we need a scenex version of this anyways - planning to implement the
beginnings of this with events
Still need to add that functionality to child nodes...somehow :)
The main thing to avoid here is a View layout larger than a canvas, as
that can cause problems in Pygfx
Some airport fixes coming around from me using my laptop screen for once
:)
Let's just keep wx out of the CI linting...
I just want the tests passing man
Currently being hit by not having this with wxPython
This is a clean solution for implementing "on-leave" behavior. In NDV's
case, it's needed to clear the hover info when the cursor leaves the
image.
scenex image/volume nodes have pixel centers at integer coordinates. Our
math needs to reflect that
Tried my best to explain via comments why I think it's the right choice
Also needed for ndv :)
Not much is supported...YET!
I don't really understand it though :)
@gselzer gselzer marked this pull request as draft October 3, 2025 19:37
Copy link

codecov bot commented Oct 3, 2025

Codecov Report

❌ Patch coverage is 80.19452% with 224 lines in your changes missing coverage. Please review.
✅ Project coverage is 71.82%. Comparing base (4e431fb) to head (5e22dca).

Files with missing lines Patch % Lines
src/scenex/app/_qt.py 66.66% 43 Missing ⚠️
src/scenex/app/_wx.py 73.60% 33 Missing ⚠️
src/scenex/adaptors/_vispy/_mesh.py 0.00% 21 Missing ⚠️
src/scenex/adaptors/_vispy/_camera.py 0.00% 20 Missing ⚠️
src/scenex/model/_canvas.py 83.33% 16 Missing ⚠️
src/scenex/adaptors/_vispy/_canvas.py 0.00% 13 Missing ⚠️
src/scenex/app/_jupyter.py 88.67% 12 Missing ⚠️
src/scenex/adaptors/_vispy/_view.py 0.00% 10 Missing ⚠️
src/scenex/app/_auto.py 86.66% 10 Missing ⚠️
src/scenex/adaptors/_vispy/_node.py 0.00% 8 Missing ⚠️
... and 15 more

❌ Your patch check has failed because the patch coverage (80.19%) is below the target coverage (85.00%). You can increase the patch coverage or adjust the target coverage.

❗ There is a different number of reports uploaded between BASE (4e431fb) and HEAD (5e22dca). Click for more details.

HEAD has 4 uploads less than BASE
Flag BASE (4e431fb) HEAD (5e22dca)
5 1
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #32      +/-   ##
==========================================
- Coverage   80.72%   71.82%   -8.91%     
==========================================
  Files          42       54      +12     
  Lines        1520     2509     +989     
==========================================
+ Hits         1227     1802     +575     
- Misses        293      707     +414     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@gselzer gselzer mentioned this pull request Oct 7, 2025
@gselzer gselzer mentioned this pull request Oct 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant