Open tlambert03 opened 5 months ago
All modified and coverable lines are covered by tests :white_check_mark:
Project coverage is 74.27%. Comparing base (
4e0c5fe
) to head (d536b59
).
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Hi @tlambert03, thanks for tagging me. I think it's a nice idea to reconsider the class designs at this point. I'll look into this PR in detail little by little, and leave some comments if I found something might be relevant.
I love what I'm seeing at first pass, feels very nice but I need some time to integrate the whole model - need to think a little more on the index/bounds and how this might work/not work with oblique planes... interesting to think about!
this PR is not necessarily for merging, but rather for discussing high level model and control flow. I want to step back and reconsider the model carefully.
ndv
is "doing a thing" somewhat nicely, and it's a good time to step back and clarify exactly what that thing is, with an eye towards building a better foundation to fix some issues (i.e. channel-specific lut persistence) and prepare for some nice features (i.e. chunked loading #22)cc @alisterburt @hanjinliu, inasmuch as you're looking at this repo these days, would love your feedback!
Main players here are:
ArrayDisplayModel
: the model representing instructions for visualizing some data sourceLUT
: instructions for displaying a specific channelArrayViewer
: the view; stubbing out what should be done in response to various eventsDataWrapper
: a place to put all of the things we need from the data (we wrap provided data in a DataWrapper based on the type of data).I'll keep tweaking and updating this flow here, and then actually implement it later