[OpenJDK 2D-Dev] Provide access to data offset in WritableRaster in Java 9
Phil Race
philip.race at oracle.com
Thu Jul 13 19:18:14 UTC 2017
Hello,
Yes this is the right list, and my reply on jigsaw-dev stands :-
Sounds like you were accessing jdk internals and found that you
mostly can do away with that except for sub-images.
What you should really do is file an issue at bugs.java.com as
client-libs/2d for cat/subcat.
If this had been raised earlier in JDK 9 development - we could have
looked into
it in time. Now it will have to wait for a follow on release.
-phil.
On 7/13/2017 12:13 PM, Peter A wrote:
> Apologies since this probably not the correct list, but I was
> referenced here from another Java list. I've actually been getting
> bounced around to a few mailing lists. I'm hopeful that this is the
> right now!
>
> Background:
> The high level API in a BufferedImage is very very very slow. To get
> around that problem, in previous versions of Java, the internal
> rasters which were defined in sun.awt.image were accessed. Doing so
> enabled real-time computer vision in Java.
>
> Problem:
> Accessing the low level Rasters is no longer practical in Java 9.
> After this problem was reported by one of my users I looked into it
> and *almost* found a work around Unfortunately the higher level
> WritableRaster does not provide access to the offset inside its
> internal data array. This makes processing of subimages impossible.
> My suspicion is that it is most likely an oversight because it
> provides access to every other piece of information needed and the raw
> data. It would be great if getDataOffset() could be moved into
> WritableRaster or one of its parents instead of being hidden in
> children of WritableRaster which are no longer accessible.
>
> Just to clarify the raw arrays are stored inside of a DataBuffer and
> that data structure contains an offset. This offset is always set to
> zero and the offset inside of WritableRaster is what is needed,
> e.g. IntegerInterleavedRaster.getDataOffsets().
>
> Thanks,
> - Peter
>
> --
> "Now, now my good man, this is no time for making enemies." —
> Voltaire (1694-1778), on his deathbed in response to a priest asking
> that he renounce Satan.
More information about the 2d-dev
mailing list