59d5a0e3f5
This reverts commit d2eb581ebc
.
Reason for revert: broke Google3 MSAN run of dm
Original change's description:
> offset angle check edge in common
>
> When curves cross, their intersection points may be nearby, but not exactly the same.
> Sort the angles formed by the crossing curves when all angles don't have the same
> origin.
>
> This sets up the framework to solve test case that currently fail (e.g., joel6) but
> does not fix all related test cases (e.g., joel9).
>
> All older existing test cases, including extended tests, pass.
>
> Rework the test framework to better report when tests expected to produce failing
> results now pass.
>
> Add new point and vector operations to support offset angles.
>
> TBR=reed@google.com
> BUG=skia:6041
>
> Change-Id: I67c651ded0a25e99ad93d55d6a35109b3ee3698e
> Reviewed-on: https://skia-review.googlesource.com/6624
> Commit-Queue: Cary Clark <caryclark@google.com>
> Reviewed-by: Cary Clark <caryclark@google.com>
>
TBR=caryclark@google.com,reviews@skia.org
# Not skipping CQ checks because original CL landed > 1 day ago.
BUG=skia:6041
Change-Id: I43db0808522ac44aceeb4f70e296167ea84a3663
Reviewed-on: https://skia-review.googlesource.com/7373
Commit-Queue: Cary Clark <caryclark@google.com>
Reviewed-by: Cary Clark <caryclark@google.com>
63 lines
2.8 KiB
C
63 lines
2.8 KiB
C
/*
|
|
* Copyright 2012 Google Inc.
|
|
*
|
|
* Use of this source code is governed by a BSD-style license that can be
|
|
* found in the LICENSE file.
|
|
*/
|
|
#ifndef PathOpsExtendedTest_DEFINED
|
|
#define PathOpsExtendedTest_DEFINED
|
|
|
|
#include "SkBitmap.h"
|
|
#include "SkPath.h"
|
|
#include "SkPathOpsTypes.h"
|
|
#include "SkStream.h"
|
|
#include "Test.h"
|
|
|
|
struct PathOpsThreadState;
|
|
|
|
struct TestDesc {
|
|
void (*fun)(skiatest::Reporter*, const char* filename);
|
|
const char* str;
|
|
};
|
|
|
|
//extern int comparePaths(const SkPath& one, const SkPath& two);
|
|
extern int comparePaths(skiatest::Reporter* reporter, const char* filename,
|
|
const SkPath& one, const SkPath& two, SkBitmap& bitmap);
|
|
|
|
inline int comparePaths(skiatest::Reporter* reporter, const char* filename,
|
|
const SkPath& one, const SkPath& two) {
|
|
SkBitmap bitmap;
|
|
return comparePaths(reporter, filename, one, two, bitmap);
|
|
}
|
|
|
|
extern bool drawAsciiPaths(const SkPath& one, const SkPath& two, bool drawPaths);
|
|
extern void showOp(const SkPathOp op);
|
|
extern bool testPathOp(skiatest::Reporter* reporter, const SkPath& a, const SkPath& b,
|
|
const SkPathOp , const char* testName);
|
|
extern bool testPathOpCheck(skiatest::Reporter* reporter, const SkPath& a, const SkPath& b,
|
|
const SkPathOp , const char* testName, bool checkFail);
|
|
extern bool testPathOpFail(skiatest::Reporter* reporter, const SkPath& a, const SkPath& b,
|
|
const SkPathOp, const char* testName);
|
|
extern bool testPathOpFuzz(skiatest::Reporter* reporter, const SkPath& a,
|
|
const SkPath& b, const SkPathOp , const char* testName);
|
|
extern bool testSimplify(SkPath& path, bool useXor, SkPath& out, PathOpsThreadState& state,
|
|
const char* pathStr);
|
|
extern bool testSimplify(skiatest::Reporter* reporter, const SkPath& path, const char* filename);
|
|
extern bool testSimplifyCheck(skiatest::Reporter* reporter, const SkPath& path,
|
|
const char* filename, bool checkFail);
|
|
extern bool testSimplifyFuzz(skiatest::Reporter* reporter, const SkPath& path,
|
|
const char* filename);
|
|
|
|
void initializeTests(skiatest::Reporter* reporter, const char* testName);
|
|
|
|
void RunTestSet(skiatest::Reporter* reporter, TestDesc tests[], size_t count,
|
|
void (*firstTest)(skiatest::Reporter* , const char* filename),
|
|
void (*skipTest)(skiatest::Reporter* , const char* filename),
|
|
void (*stopTest)(skiatest::Reporter* , const char* filename), bool reverse);
|
|
void ShowTestName(PathOpsThreadState* data, int a, int b, int c, int d);
|
|
void ShowFunctionHeader(const char* name);
|
|
void ShowPath(const SkPath& path, const char* pathName);
|
|
void ShowOp(SkPathOp op, const char* pathOne, const char* pathTwo);
|
|
|
|
#endif
|