SkCornerPathEffect.h revision ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976e
1ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com 28a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com/* 3ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com * Copyright 2006 The Android Open Source Project 48a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com * 5ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com * Use of this source code is governed by a BSD-style license that can be 6ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com * found in the LICENSE file. 78a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com */ 88a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com 9ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com 108a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com#ifndef SkCornerPathEffect_DEFINED 118a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com#define SkCornerPathEffect_DEFINED 128a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com 138a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com#include "SkPathEffect.h" 148a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com 158a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com/** \class SkCornerPathEffect 168a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com 178a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com SkCornerPathEffect is a subclass of SkPathEffect that can turn sharp corners 188a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com into various treatments (e.g. rounded corners) 198a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com*/ 207ffb1b21abcc7bbed5a0fc711f6dd7b9dbb4f577ctguil@chromium.orgclass SK_API SkCornerPathEffect : public SkPathEffect { 218a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.compublic: 228a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com /** radius must be > 0 to have an effect. It specifies the distance from each corner 238a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com that should be "rounded". 248a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com */ 258a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com SkCornerPathEffect(SkScalar radius); 268a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com virtual ~SkCornerPathEffect(); 278a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com 288a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com // overrides for SkPathEffect 298a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com // This method is not exported to java. 308a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com virtual bool filterPath(SkPath* dst, const SkPath& src, SkScalar* width); 318a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com 328a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com // overrides for SkFlattenable 338a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com // This method is not exported to java. 348a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com virtual Factory getFactory(); 358a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com // This method is not exported to java. 368a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com virtual void flatten(SkFlattenableWriteBuffer&); 378a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com 386bac947cd5bc460dd9166ada6310d678fd2e39f8reed@google.com static SkFlattenable* CreateProc(SkFlattenableReadBuffer&); 396bac947cd5bc460dd9166ada6310d678fd2e39f8reed@google.com 408a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.comprotected: 418a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com SkCornerPathEffect(SkFlattenableReadBuffer&); 428a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com 438a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.comprivate: 448a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com SkScalar fRadius; 458a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com 468a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com typedef SkPathEffect INHERITED; 478a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com}; 488a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com 498a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com#endif 508a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com 51