| Index: experimental/Intersection/LineParameterization.cpp
|
| diff --git a/experimental/Intersection/LineParameterization.cpp b/experimental/Intersection/LineParameterization.cpp
|
| deleted file mode 100644
|
| index 197394530bcf455c51b94e6a39688851bf313062..0000000000000000000000000000000000000000
|
| --- a/experimental/Intersection/LineParameterization.cpp
|
| +++ /dev/null
|
| @@ -1,63 +0,0 @@
|
| -/*
|
| - * Copyright 2012 Google Inc.
|
| - *
|
| - * Use of this source code is governed by a BSD-style license that can be
|
| - * found in the LICENSE file.
|
| - */
|
| -#include "CurveIntersection.h"
|
| -
|
| -/* This rejects coincidence with two muls, two adds, and one cmp.
|
| - Coincident candidates will take another four muls and two adds, but may still
|
| - fail if they don't overlap. (The overlap test isn't performed here.)
|
| - */
|
| -bool implicit_matches(const _Line& one, const _Line& two) {
|
| - _Point oneD, twoD;
|
| - tangent(one, oneD);
|
| - tangent(two, twoD);
|
| - /* See if the slopes match, i.e.
|
| - dx1 / dy1 == dx2 / dy2
|
| - (dy1 * dy2) * dx1 / dy1 == (dy1 * dy2) * dx2 / dy2
|
| - dy2 * dx1 == dy1 * dx2
|
| - */
|
| - if (!AlmostEqualUlps(oneD.x * twoD.y, twoD.x * oneD.y)) {
|
| - return false;
|
| - }
|
| - /* See if the axis intercepts match, i.e.
|
| - y0 - x0 * dy / dx == y1 - x1 * dy / dx
|
| - dx * (y0 - x0 * dy / dx) == dx * (y1 - x1 * dy / dx)
|
| - dx * y0 - x0 * dy == dx * y1 - x1 * dy
|
| - */
|
| - if (!AlmostEqualUlps(oneD.x * one[0].y - oneD.y * one[0].x,
|
| - oneD.x * two[0].y - oneD.y * two[0].x)) {
|
| - return false;
|
| - }
|
| - return true;
|
| -}
|
| -
|
| -bool implicit_matches_ulps(const _Line& one, const _Line& two, int ulps) {
|
| - _Point oneD, twoD;
|
| - tangent(one, oneD);
|
| - tangent(two, twoD);
|
| - /* See if the slopes match, i.e.
|
| - dx1 / dy1 == dx2 / dy2
|
| - (dy1 * dy2) * dx1 / dy1 == (dy1 * dy2) * dx2 / dy2
|
| - dy2 * dx1 == dy1 * dx2
|
| - */
|
| - int diff = UlpsDiff((float) (oneD.x * twoD.y), (float) (twoD.x * oneD.y));
|
| - if (diff < 0 || diff > ulps) {
|
| - return false;
|
| - }
|
| - /* See if the axis intercepts match, i.e.
|
| - y0 - x0 * dy / dx == y1 - x1 * dy / dx
|
| - dx * (y0 - x0 * dy / dx) == dx * (y1 - x1 * dy / dx)
|
| - dx * y0 - x0 * dy == dx * y1 - x1 * dy
|
| - */
|
| - diff = UlpsDiff((float) (oneD.x * one[0].y - oneD.y * one[0].x),
|
| - (float) (oneD.x * two[0].y - oneD.y * two[0].x));
|
| - return diff >= 0 && diff <= ulps;
|
| -}
|
| -
|
| -void tangent(const _Line& line, _Point& result) {
|
| - result.x = line[0].x - line[1].x;
|
| - result.y = line[0].y - line[1].y;
|
| -}
|
|
|