Top Description Fields Constructors Methods
org.apache.pdfbox.pdmodel.graphics.shading

pack-priv Class TensorPatch

extends Patch
Class Inheritance
Imports
java.awt.geom.Point2D, java.util.List

This class is used to describe a patch for type 7 shading. This was done as part of GSoC2014, Tilman Hausherr is the mentor.
Author
Shaola Ren

Field Summary

Inherited from org.apache.pdfbox.pdmodel.graphics.shading.Patch:
controlPointscornerColorlevellistOfTriangles

Constructor Summary

AccessConstructor and Description
protected
TensorPatch(Point2D[]
16 control points
tcp
,
float[][]
4 corner colors
color
)

Constructor of a patch for type 7 shading.

Method Summary

Modifier and TypeMethod and Description
private int[]
private double[][]
protected Point2D[]
getFlag1Edge()

Implements abstract org.apache.pdfbox.pdmodel.graphics.shading.Patch.getFlag1Edge.

Get the implicit edge for flag = 1.

protected Point2D[]
getFlag2Edge()

Implements abstract org.apache.pdfbox.pdmodel.graphics.shading.Patch.getFlag2Edge.

Get the implicit edge for flag = 2.

protected Point2D[]
getFlag3Edge()

Implements abstract org.apache.pdfbox.pdmodel.graphics.shading.Patch.getFlag3Edge.

Get the implicit edge for flag = 3.

private CoordinateColorPair[][]
private List<ShadedTriangle>
private boolean
private boolean
private Point2D[][]
Inherited from org.apache.pdfbox.pdmodel.graphics.shading.Patch:
edgeEquationValuegetFlag1ColorgetFlag2ColorgetFlag3ColorgetLengetShadedTrianglesisEdgeALine

Constructor Detail

TensorPatchback to summary
protected TensorPatch(Point2D[] tcp, float[][] color)

Constructor of a patch for type 7 shading.

Parameters
tcp:Point2D[]

16 control points

color:float[][]

4 corner colors

Method Detail

calcLevelback to summary
private int[] calcLevel()
getBernsteinPolynomialsback to summary
private double[][] getBernsteinPolynomials(int lvl)
getFlag1Edgeback to summary
protected Point2D[] getFlag1Edge()

Implements abstract org.apache.pdfbox.pdmodel.graphics.shading.Patch.getFlag1Edge.

Doc from org.apache.pdfbox.pdmodel.graphics.shading.Patch.getFlag1Edge.

Get the implicit edge for flag = 1.

Returns:Point2D[]

implicit control points

Annotations
@Override
getFlag2Edgeback to summary
protected Point2D[] getFlag2Edge()

Implements abstract org.apache.pdfbox.pdmodel.graphics.shading.Patch.getFlag2Edge.

Doc from org.apache.pdfbox.pdmodel.graphics.shading.Patch.getFlag2Edge.

Get the implicit edge for flag = 2.

Returns:Point2D[]

implicit control points

Annotations
@Override
getFlag3Edgeback to summary
protected Point2D[] getFlag3Edge()

Implements abstract org.apache.pdfbox.pdmodel.graphics.shading.Patch.getFlag3Edge.

Doc from org.apache.pdfbox.pdmodel.graphics.shading.Patch.getFlag3Edge.

Get the implicit edge for flag = 3.

Returns:Point2D[]

implicit control points

Annotations
@Override
getPatchCoordinatesColorback to summary
private CoordinateColorPair[][] getPatchCoordinatesColor()
getTrianglesback to summary
private List<ShadedTriangle> getTriangles()
isOnSameSideCCback to summary
private boolean isOnSameSideCC(Point2D p)
isOnSameSideDDback to summary
private boolean isOnSameSideDD(Point2D p)
reshapeControlPointsback to summary
private Point2D[][] reshapeControlPoints(Point2D[] tcp)