scenerygraphics / sciview

sciview is a tool for visualization and interaction with ND image and mesh data
BSD 2-Clause "Simplified" License
67 stars 17 forks source link

Modularize inspector #596

Closed skalarproduktraum closed 3 months ago

skalarproduktraum commented 3 months ago

This PR modularises the code for the inspector:

smlpt commented 3 months ago

I tested this and I think I found a bug: when you scroll down the inspector and change a value in any of the spinner fields, it will move to the top of the panel, requiring you to scroll down again to change the value again.

skalarproduktraum commented 3 months ago

@smlpt 🧲😂

I'll check that and fix it, thanks for the report 👍

skalarproduktraum commented 3 months ago

@smlpt This should be fixed now. Can you confirm?

smlpt commented 3 months ago

@smlpt This should be fixed now. Can you confirm? Yes, editing values works properly now.

@kephale atmosphere works on my side, both in this branch and on main. Although I also noticed that something about the blend mode or depth test must be wrong, since it is visible in front of geometrical objects (which is not the case with the AtmosphereExample in scenery), also observed by @moreApi.

I also noticed a bug in my Atmosphere input: the azimuth is supposed to go from 0 to 360° according to the properties parameter. But setSunPositionFromTime returns values in range -180-180°. So line 108 should be changed to be + PI instead. Should I create a branch + PR for this one line? Or do we want to fix it in this branch?

kephale commented 3 months ago

@smlpt i'm verifying that the atmosphere is working after a gradle clean 😊 I'd suggest doing the azimuth fix in a separate PR

Otherwise the other requested changes still seem to be needed.

smlpt commented 3 months ago

Atmosphere range has been fixed in this PR

skalarproduktraum commented 3 months ago

@kephale Known issues should be fixed, good to go from my side 👍

kephale commented 3 months ago

When there is a single timepoint volume but the inspector is collapsed i get:

[INFO] Input field timepoint of type Integer not found, therefore it can't be removed.
[INFO] Input field playPause of type Button not found, therefore it can't be removed.
[INFO] Input field playSpeed of type Integer not found, therefore it can't be removed.