chromium/third_party/skia/src/pathops/SkPathOpsAsWinding.cpp

/*
 * Copyright 2018 Google Inc.
 *
 * Use of this source code is governed by a BSD-style license that can be
 * found in the LICENSE file.
 */
#include "include/core/SkPath.h"
#include "include/core/SkPathBuilder.h"
#include "include/core/SkPathTypes.h"
#include "include/core/SkPoint.h"
#include "include/core/SkRect.h"
#include "include/core/SkScalar.h"
#include "include/core/SkTypes.h"
#include "include/pathops/SkPathOps.h"
#include "include/private/base/SkMacros.h"
#include "src/core/SkPathPriv.h"
#include "src/pathops/SkPathOpsConic.h"
#include "src/pathops/SkPathOpsCubic.h"
#include "src/pathops/SkPathOpsCurve.h"
#include "src/pathops/SkPathOpsPoint.h"
#include "src/pathops/SkPathOpsQuad.h"
#include "src/pathops/SkPathOpsTypes.h"

#include <algorithm>
#include <vector>

vector;

struct Contour {};

static const int kPtCount[] =;
static const int kPtIndex[] =;

static Contour::Direction to_direction(SkScalar dy) {}

static int contains_edge(SkPoint pts[4], SkPath::Verb verb, SkScalar weight, const SkPoint& edge) {}

static SkScalar conic_weight(const SkPath::Iter& iter, SkPath::Verb verb) {}

static SkPoint left_edge(SkPoint pts[4], SkPath::Verb verb, SkScalar weight) {}

class OpAsWinding {};

static bool set_result_path(SkPath* result, const SkPath& path, SkPathFillType fillType) {}

bool AsWinding(const SkPath& path, SkPath* result) {}