Package org.sunflow.core.renderer
Class BucketRenderer
- java.lang.Object
-
- org.sunflow.core.renderer.BucketRenderer
-
- All Implemented Interfaces:
ImageSampler
public class BucketRenderer extends java.lang.Object implements ImageSampler
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private classBucketRenderer.BucketThreadprivate static classBucketRenderer.ImageSample
-
Field Summary
Fields Modifier and Type Field Description private int[]bucketCoordsprivate intbucketCounterprivate BucketOrderbucketOrderprivate java.lang.StringbucketOrderNameprivate intbucketSizeprivate floatcontrastThresholdprivate Displaydisplayprivate booleandisplayAAprivate booleandumpBucketsprivate floatfhsprivate Filterfilterprivate java.lang.StringfilterNameprivate intfsprivate intimageHeightprivate intimageWidthprivate doubleinvSuperSamplingprivate booleanjitterprivate intmaxAADepthprivate intmaxStepSizeprivate intminAADepthprivate intminStepSizeprivate Scenesceneprivate intsigmaLengthprivate intsigmaOrderprivate intsubPixelSizeprivate intsuperSamplingprivate floatthreshprivate booleanuseJitter
-
Constructor Summary
Constructors Constructor Description BucketRenderer()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private java.lang.StringaaDepthToString(int depth)private voidcomputeSubPixel(BucketRenderer.ImageSample sample, IntersectionState istate)booleanprepare(Options options, Scene scene, int w, int h)Prepare the sampler for rendering an image of w x h pixelsprivate voidrefineSamples(BucketRenderer.ImageSample[] samples, int sbw, int x, int y, int stepSize, float thresh, IntersectionState istate)voidrender(Display display)Render the image to the specified display.private voidrenderBucket(Display display, int bx, int by, int threadID, IntersectionState istate)
-
-
-
Field Detail
-
scene
private Scene scene
-
display
private Display display
-
imageWidth
private int imageWidth
-
imageHeight
private int imageHeight
-
bucketOrderName
private java.lang.String bucketOrderName
-
bucketOrder
private BucketOrder bucketOrder
-
bucketSize
private int bucketSize
-
bucketCounter
private int bucketCounter
-
bucketCoords
private int[] bucketCoords
-
dumpBuckets
private boolean dumpBuckets
-
minAADepth
private int minAADepth
-
maxAADepth
private int maxAADepth
-
superSampling
private int superSampling
-
contrastThreshold
private float contrastThreshold
-
jitter
private boolean jitter
-
displayAA
private boolean displayAA
-
invSuperSampling
private double invSuperSampling
-
subPixelSize
private int subPixelSize
-
minStepSize
private int minStepSize
-
maxStepSize
private int maxStepSize
-
sigmaOrder
private int sigmaOrder
-
sigmaLength
private int sigmaLength
-
thresh
private float thresh
-
useJitter
private boolean useJitter
-
filterName
private java.lang.String filterName
-
filter
private Filter filter
-
fs
private int fs
-
fhs
private float fhs
-
-
Method Detail
-
prepare
public boolean prepare(Options options, Scene scene, int w, int h)
Description copied from interface:ImageSamplerPrepare the sampler for rendering an image of w x h pixels- Specified by:
preparein interfaceImageSamplerw- width of the imageh- height of the image
-
aaDepthToString
private java.lang.String aaDepthToString(int depth)
-
render
public void render(Display display)
Description copied from interface:ImageSamplerRender the image to the specified display. The sampler can assume the display has been opened and that it will be closed after the method returns.- Specified by:
renderin interfaceImageSampler- Parameters:
display- Display driver to send image data to
-
renderBucket
private void renderBucket(Display display, int bx, int by, int threadID, IntersectionState istate)
-
computeSubPixel
private void computeSubPixel(BucketRenderer.ImageSample sample, IntersectionState istate)
-
refineSamples
private void refineSamples(BucketRenderer.ImageSample[] samples, int sbw, int x, int y, int stepSize, float thresh, IntersectionState istate)
-
-