/*
* Copyright 2018 Google LLC
*
* Use of this source code is governed by a BSD - style license that can be
* found in the LICENSE file .
*/
#ifndef SkTrimPathEffect_DEFINED
#define SkTrimPathEffect_DEFINED
#include "include/core/SkRefCnt.h"
#include "include/core/SkScalar.h"
#include "include/core/SkTypes.h"
class SkPathEffect;
class SK_API SkTrimPathEffect {
public:
enum class Mode {
kNormal, // return the subset path [start,stop]
kInverted, // return the complement/subset paths [0,start] + [stop,1]
};
/**
* Take start and stop " t " values ( values between 0 . . . 1 ) , and return a path that is that
* subset of the original path .
*
* e . g .
* Make ( 0 . 5 , 1 . 0 ) - - > return the 2 nd half of the path
* Make ( 0 . 33333 , 0 . 66667 ) - - > return the middle third of the path
*
* The trim values apply to the entire path , so if it contains several contours , all of them
* are including in the calculation .
*
* startT and stopT must be 0 . . 1 inclusive . If they are outside of that interval , they will
* be pinned to the nearest legal value . If either is NaN , null will be returned .
*
* Note : for Mode : : kNormal , this will return one ( logical ) segment ( even if it is spread
* across multiple contours ) . For Mode : : kInverted , this will return 2 logical
* segments : stopT . . 1 and 0 . . . startT , in this order .
*/
static sk_sp<SkPathEffect> Make(SkScalar startT, SkScalar stopT, Mode = Mode::kNormal);
};
#endif
Messung V0.5 in Prozent C=92 H=100 G=95
¤ Dauer der Verarbeitung: 0.20 Sekunden
(vorverarbeitet am 2026-08-26)
¤
*© Formatika GbR, Deutschland