Package org.sunflow.core.display
Class FileDisplay
java.lang.Object
org.sunflow.core.display.FileDisplay
- All Implemented Interfaces:
Display
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
imageBegin
(int w, int h, int bucketSize) This is called before an image is rendered to indicate how large the rendered image will be.void
imageEnd()
This call is made after the image has been rendered.void
Update the current image with a region of flat color.void
imagePrepare
(int x, int y, int w, int h, int id) Prepare the specified area to be rendered.void
imageUpdate
(int x, int y, int w, int h, Color[] data, float[] alpha) Update the current image with a bucket of data.
-
Constructor Details
-
FileDisplay
public FileDisplay(boolean saveImage) -
FileDisplay
-
-
Method Details
-
imageBegin
public void imageBegin(int w, int h, int bucketSize) Description copied from interface:Display
This is called before an image is rendered to indicate how large the rendered image will be. This allows the display driver to write out image headers or allocate surfaces. Bucket size will be 0 when called from a non-bucket based source.- Specified by:
imageBegin
in interfaceDisplay
- Parameters:
w
- width of the rendered image in pixelsh
- height of the rendered image in pixelsbucketSize
- size of the buckets in pixels
-
imagePrepare
public void imagePrepare(int x, int y, int w, int h, int id) Description copied from interface:Display
Prepare the specified area to be rendered. This may be used to highlight the work in progress area or simply to setup the display driver to receive the specified portion of the image- Specified by:
imagePrepare
in interfaceDisplay
- Parameters:
x
- x coordinate of the bucket within the imagey
- y coordinate of the bucket within the imagew
- width of the bucket in pixelsh
- height of the bucket in pixelsid
- unique identifier corresponding to the thread which invoked this call
-
imageUpdate
Description copied from interface:Display
Update the current image with a bucket of data. The region is guarenteed to be within the bounds created by the call to imageBegin. No clipping is necessary. Colors are passed in unprocessed. It is up the display driver to do any type of quantization, gamma compensation or tone-mapping needed. The array of colors will be exactlyw * h
long and in row major order.- Specified by:
imageUpdate
in interfaceDisplay
- Parameters:
x
- x coordinate of the bucket within the imagey
- y coordinate of the bucket within the imagew
- width of the bucket in pixelsh
- height of the bucket in pixelsdata
- bucket data, this array will be exactlyw * h
longalpha
- pixel coverage data, this array will be exactlyw * h
long
-
imageFill
Description copied from interface:Display
Update the current image with a region of flat color. This is used by progressive rendering to render progressively smaller regions of the screen which will overlap. The region is guarenteed to be within the bounds created by the call to imageBegin. No clipping is necessary. Colors are passed in unprocessed. It is up the display driver to do any type of quantization , gamma compensation or tone-mapping needed. -
imageEnd
public void imageEnd()Description copied from interface:Display
This call is made after the image has been rendered. This allows the display driver to close any open files, write the image to disk or flush any other type of buffers.
-