com.sun.pdfview.function
Class FunctionType3
java.lang.Object
com.sun.pdfview.function.PDFFunction
com.sun.pdfview.function.FunctionType3
public class FunctionType3
- extends PDFFunction
3.9.3 - A stitching function define a stitching of the subdomains of
several 1-input functions to produce a single new 1-input function.
Since the resulting stitching function is a 1-input function, the
domain is given by a two-element array, [ Domain0 Domain1 ].
Example 4.25
5 0 obj % Shading dictionary
<< /ShadingType 3
/ColorSpace /DeviceCMYK
/Coords [ 0.0 0.0 0.096 0.0 0.0 1.0 00]% Concentric circles
/Function 10 0 R
/Extend [ true true ]
>>
endobj
10 0 obj % Color function
<< /FunctionType 3
/Domain [ 0.0 1.0 ]
/Functions [ 11 0 R 12 0 R ]
/Bounds [ 0.708 ]
/Encode [ 1.0 0.0 0.0 1.0 ]
>>
endobj
11 0 obj % First subfunction
<< /FunctionType 2
/Domain [ 0.0 1.0 ]
/C0 [ 0.929 0.357 1.000 0.298 ]
/C1 [ 0.631 0.278 1.000 0.027 ]
/N 1.048
>>
endobj
12 0 obj % Second subfunction
<< /FunctionType 2
/Domain [ 0.0 1.0 ]
/C0 [ 0.929 0.357 1.000 0.298 ]
/C1 [ 0.941 0.400 1.000 0.102 ]
/N 1.374
>>
endobj
Constructor Summary |
protected |
FunctionType3()
Creates a new instance of FunctionType3 |
Method Summary |
protected void |
doFunction(float[] inputs,
int inputOffset,
float[] outputs,
int outputOffset)
Map from m input values to n output values. |
protected void |
parse(PDFObject obj)
Read the function information from a PDF Object. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
FunctionType3
protected FunctionType3()
- Creates a new instance of FunctionType3
parse
protected void parse(PDFObject obj)
throws java.io.IOException
Read the function information from a PDF Object.
Required entries ( Table 3.38) (3200-1:2008:7.10.4, table: 41)
are:
-
Functions array (Required) An array of k 1-input functions making up
the stitching function. The output dimensionality of all functions
must be the same, and compatible with the value of Range
if Range is present.
-
Domainarray (Required) A 2 element array where
Domain0 is less than Domain1. This is read by the
PDFFunction
superclass. -
Bounds array (Required) An array of k-1 numbers that,
in combination with Domain, define the intervals to which each
function from the Functions array applies. Bounds elements
must be in order of increasing value, and each value must be within
the domain defined by >b>Domain.
-
Encode array (Required) An array of 2 * k numbers that,
taken in pairs, map each subset of the domain defined by
and the Bounds array to the domain of the corresponding function.
- Specified by:
parse
in class PDFFunction
- Throws:
java.io.IOException
doFunction
protected void doFunction(float[] inputs,
int inputOffset,
float[] outputs,
int outputOffset)
- Map from m input values to n output values.
The number of inputs m must be exactly one half the size of the
domain. The number of outputs should match one half the size of the
range.
- Specified by:
doFunction
in class PDFFunction
- Parameters:
inputs
- an array of m input valuesoutputs
- an array of size n which will be filled
with the output values, or null to return a new arrayinputOffset
- the offset into the inputs array to read fromoutputOffset
- the offset into the output array to write to