Ticket #825 (closed defect: fixed)

Opened 8 years ago

Last modified 8 years ago

Tall images may never display

Reported by: bdezonia Owned by: bdezonia
Priority: major Milestone: imagej2-b2-bugfixes
Component: Display API Version:
Severity: serious Keywords:
Cc: Blocked By:


In IJ2 a 10000x100 image pops up on the screen very quickly. A 100x10000 image may never come up. As designed there is a difference in allocating 100 byte arrays versus 10000. We may not be able to work around this but we should investigate if we can improve creation time.

Change History

comment:1 Changed 8 years ago by bdezonia

The byte array counts might be wrong. It seems in both cases it should just allocate one byte array.

For what its worth IJ1 handles both cases easily.

comment:2 Changed 8 years ago by bdezonia

  • Owner changed from bdezonia to gharris
  • Status changed from new to assigned
  • Component changed from ij-data-model to ij-display
  • Summary changed from Large PlanarImgs suffer from performance issues to Tall images may never display

The problem is that the code for SwingDisplayPanel::sizeAppropriately() gets caught in an infinite loop for the tall image case.

We should really calculate an appropriate panel size and scale without iteration. This code is also tied into special calx for the red cross display and so I don't want to touch it. Grant, you've worked in here. Please take a look.

comment:3 Changed 8 years ago by gharris

Should we we have integer scaling (e.g. 1/2, 1/3, 1/4...) or allow fractional scaling so that the image/canvas is scaled down to just fit on the screen (e.g. 1/3.45 scaling)??

comment:4 Changed 8 years ago by bdezonia

I think fractional scaling is fine.

comment:5 Changed 8 years ago by curtis

As discussed today, it would be good to use the largest integer scaling that fits on screen. This is consistent with IJ1.

comment:6 Changed 8 years ago by bdezonia

  • Owner changed from gharris to bdezonia

comment:7 Changed 8 years ago by bdezonia

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

Some time ago I added code to fix initial scaling. It uses only predefined zoom levels (which range from 432X to 1/432X.

comment:8 Changed 8 years ago by bdezonia

  • Milestone changed from imagej-2.0.0-beta4 to imagej-2.0.0-beta2
Note: See TracTickets for help on using tickets.