NOTICE! This is a static HTML version of a legacy ImageJ Trac ticket.

The ImageJ project now uses GitHub Issues for issue tracking.

Please file all new issues there.

Ticket #825 (closed defect: fixed)

Opened 2011-10-13T12:38:16-05:00

Last modified 2012-05-18T12:26:44-05:00

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 2011-10-13T12:53:33-05:00 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 2011-10-13T15:15:53-05:00 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 2011-10-13T16:21:15-05:00 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 2011-10-13T16:24:04-05:00 by bdezonia

I think fractional scaling is fine.

comment:5 Changed 2011-10-24T12:03:45-05:00 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 2011-11-21T11:24:39-06:00 by bdezonia

  • Owner changed from gharris to bdezonia

comment:7 Changed 2011-11-21T11:26:15-06:00 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 2012-05-18T12:26:44-05:00 by bdezonia

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