DatasetView initialization


I have noticed that DatasetViews are uninitialized (i.e. no projector set, colorTable array null) until they are bound to Display, and the DatasetView.rebuild() is called from DefaultImageDisplay.display() and DefaultImageDisplay.rebuild(). Is this an intended behavior? If so, I guess we would need to make a

if (!isInitialized()) return;

call within DatasetView.setColorTable. Otherwise, attempt to set colorTable on uninitialized DatasetView causes null pointer exception (because defaultLUTs is null and setColorTable tries to call set on it.)

Otherwise, it might we worthwhile to call DatasetView.rebuild() from within DefaultImageDisplayService.createDataView.

What do you think?

Happy to make a PR with both.