summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libs/hwui/Program.cpp2
-rw-r--r--tests/CanvasCompare/src/com/android/test/hwuicompare/DisplayModifier.java35
2 files changed, 32 insertions, 5 deletions
diff --git a/libs/hwui/Program.cpp b/libs/hwui/Program.cpp
index f0b5553..14a2376 100644
--- a/libs/hwui/Program.cpp
+++ b/libs/hwui/Program.cpp
@@ -160,7 +160,7 @@ void Program::set(const mat4& projectionMatrix, const mat4& modelViewMatrix,
// up and to the left.
// This offset value is based on an assumption that some hardware may use as
// little as 12.4 precision, so we offset by slightly more than 1/16.
- p.translate(.375, .375, 0);
+ p.translate(.065, .065, 0);
}
mat4 t(transformMatrix);
diff --git a/tests/CanvasCompare/src/com/android/test/hwuicompare/DisplayModifier.java b/tests/CanvasCompare/src/com/android/test/hwuicompare/DisplayModifier.java
index fb818d4..9939c08 100644
--- a/tests/CanvasCompare/src/com/android/test/hwuicompare/DisplayModifier.java
+++ b/tests/CanvasCompare/src/com/android/test/hwuicompare/DisplayModifier.java
@@ -41,13 +41,40 @@ public abstract class DisplayModifier {
protected int mask() { return 0x0; };
private static final RectF gRect = new RectF(0, 0, 200, 175);
- private static final float[] gLinePts = new float[] {
- 100, 0, 200, 200, 200, 200, 0, 200, 0, 200, 100, 0
- };
private static final float[] gPts = new float[] {
0, 100, 100, 0, 100, 200, 200, 100
};
+ private static final int NUM_PARALLEL_LINES = 24;
+ private static final float[] gTriPts = new float[] {
+ 75, 0, 130, 130, 130, 130, 0, 130, 0, 130, 75, 0
+ };
+ private static final float[] gLinePts = new float[NUM_PARALLEL_LINES * 8 + gTriPts.length];
+ static {
+ int index;
+ for (index = 0; index < gTriPts.length; index++) {
+ gLinePts[index] = gTriPts[index];
+ }
+ float val = 0;
+ for (int i = 0; i < NUM_PARALLEL_LINES; i++) {
+ gLinePts[index + 0] = 150;
+ gLinePts[index + 1] = val;
+ gLinePts[index + 2] = 300;
+ gLinePts[index + 3] = val;
+ index += 4;
+ val += 8 + (2.0f/NUM_PARALLEL_LINES);
+ }
+ val = 0;
+ for (int i = 0; i < NUM_PARALLEL_LINES; i++) {
+ gLinePts[index + 0] = val;
+ gLinePts[index + 1] = 150;
+ gLinePts[index + 2] = val;
+ gLinePts[index + 3] = 300;
+ index += 4;
+ val += 8 + (2.0f/NUM_PARALLEL_LINES);
+ }
+ };
+
@SuppressWarnings("serial")
private static final LinkedHashMap<String, LinkedHashMap<String, DisplayModifier>> gMaps = new LinkedHashMap<String, LinkedHashMap<String, DisplayModifier>>() {
{
@@ -307,7 +334,7 @@ public abstract class DisplayModifier {
canvas.drawOval(gRect, paint);
}
});
- put("triLines", new DisplayModifier() {
+ put("lines", new DisplayModifier() {
@Override
public void modifyDrawing(Paint paint, Canvas canvas) {
canvas.drawLines(gLinePts, paint);