Ticket #1284 (closed defect: fixed)

Opened 7 years ago

Last modified 7 years ago

To RGB stack may display wrong

Reported by: bdezonia Owned by: bdezonia
Priority: major Milestone: imagej2-b5-scripting
Component: Display API Version:
Severity: serious Keywords:
Cc: Blocked By:
Blocking: #1513

Description

Open clown and convert Type to RGB stack. Cycle through the channels and notice that the image looks exactly the same grayscale in each view. This might point out a display code flaw.

If you run Type >> RGB it will again look correct so backing data is okay.

Change History

comment:1 Changed 7 years ago by bdezonia

Maybe the display/dataset thinks it is still merged data. Debugging shows Dataset is not merged. But perhaps display/view has composite channel count > 1.

Last edited 7 years ago by bdezonia (previous) (diff)

comment:2 Changed 7 years ago by bdezonia

Dataset composite chan count correct too. There is nobody tracking DatasetRGBChangedEvents that get hatched by dataset.setMerged(bool) though. (Wrong - DefaultDatasetView tracks those events and looks correct - I might just be on the wrong track here).

Last edited 7 years ago by bdezonia (previous) (diff)

comment:3 Changed 7 years ago by bdezonia

  • Blocking 1244 added

comment:4 Changed 7 years ago by curtis

  • Milestone changed from imagej-2.0.0-beta4 to imagej-2.0.0-beta5

This ticket does not fit the beta4 theme of plugin work. It will fit in marginally better with the beta5 theme of flexible data handling.

comment:5 Changed 7 years ago by bdezonia

Note that using the channels tool to set color mode one can see the data is correct. The initial incorrect display does not match any of the color modes.

comment:6 Changed 7 years ago by bdezonia

  • Status changed from new to closed
  • Resolution set to fixed

Fixed with commit 1a02c720dfd18c14b97224cf3d6f04d0939d4f24

comment:7 follow-up: ↓ 8 Changed 7 years ago by bdezonia

Cannot follow the commit link which described changes.

Anyhow what was happening was that DefaultDataset::setRGBMerged() was generating a rgb change event before changing its internal status. The event was getting handled immediately and interested parties who queried the dataset got the wrong information back.

comment:8 in reply to: ↑ 7 Changed 7 years ago by curtis

Replying to bdezonia:

Cannot follow the commit link which described changes.

The synchronization job between GitHub and code.imagej.net runs once every 5 minutes. So if you push to GitHub and then immediately update a ticket with the commit hash, it will not be active for a short time.

comment:9 Changed 7 years ago by curtis

  • Milestone changed from imagej-2.0.0-beta6 to imagej-2.0.0-beta5-new

comment:10 Changed 7 years ago by bdezonia

  • Blocking 1513 added; 1244 removed
Note: See TracTickets for help on using tickets.