Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
third_party
skia
platform_tools
android
apps
jetski
src
main
java
org
skia
jetski
SamplingOptions.java
Go to the documentation of this file.
1
/*
2
* Copyright 2021 Google Inc.
3
*
4
* Use of this source code is governed by a BSD-style license that can be
5
* found in the LICENSE file.
6
*/
7
8
package
org.skia.jetski;
9
10
public
class
SamplingOptions
{
11
private
FilterMode
mFilter;
12
private
MipmapMode
mMipmap;
13
private
float
mCubicCoeffB,
14
mCubicCoeffC;
15
private
boolean
mUseCubic;
16
17
public
enum
FilterMode
{
18
NEAREST
,
19
LINEAR
,
20
};
21
22
public
enum
MipmapMode
{
23
NONE
,
24
NEAREST
,
25
LINEAR
,
26
}
27
28
public
SamplingOptions
() {
29
this
(
FilterMode
.
NEAREST
);
30
}
31
32
public
SamplingOptions
(
FilterMode
f) {
33
this
(f,
MipmapMode
.
NONE
);
34
}
35
36
public
SamplingOptions
(
FilterMode
f,
MipmapMode
m) {
37
mFilter = f;
38
mMipmap = m;
39
mUseCubic =
false
;
40
}
41
42
public
SamplingOptions
(
float
cubicCoeffB,
float
cubicCoeffC) {
43
mFilter =
FilterMode
.
NEAREST
;
44
mMipmap =
MipmapMode
.
NONE
;
45
mCubicCoeffB = cubicCoeffB;
46
mCubicCoeffC = cubicCoeffC;
47
mUseCubic =
true
;
48
}
49
50
public
static
SamplingOptions
MITCHELL
() {
51
return
new
SamplingOptions
(1/3.0f, 1/3.0f);
52
}
53
54
public
static
SamplingOptions
CATMULLROM
() {
55
return
new
SamplingOptions
(0.0f, 1/2.0f);
56
}
57
58
// package private
59
int
getNativeDesc
() {
60
// Encode all options except coefficients in a bit field:
61
//
62
// b0 -> useCubic
63
// b1 -> filter
64
// b2,3 -> mipmap
65
66
int
desc = mUseCubic ? 0x01 : 0x00;
67
68
switch
(mFilter) {
69
case
NEAREST:
70
break
;
71
case
LINEAR:
72
desc |= 0x02;
73
break
;
74
}
75
76
switch
(mMipmap) {
77
case
NONE:
78
break
;
79
case
NEAREST:
80
desc |= 0x04;
81
break
;
82
case
LINEAR:
83
desc |= 0x08;
84
break
;
85
}
86
87
return
desc;
88
}
89
90
float
getCubicCoeffB
() {
91
return
mCubicCoeffB;
92
}
93
94
float
getCubicCoeffC
() {
95
return
mCubicCoeffC;
96
}
97
}
org.skia.jetski.SamplingOptions
Definition
SamplingOptions.java:10
org.skia.jetski.SamplingOptions.MITCHELL
static SamplingOptions MITCHELL()
Definition
SamplingOptions.java:50
org.skia.jetski.SamplingOptions.getCubicCoeffB
float getCubicCoeffB()
Definition
SamplingOptions.java:90
org.skia.jetski.SamplingOptions.getCubicCoeffC
float getCubicCoeffC()
Definition
SamplingOptions.java:94
org.skia.jetski.SamplingOptions.CATMULLROM
static SamplingOptions CATMULLROM()
Definition
SamplingOptions.java:54
org.skia.jetski.SamplingOptions.SamplingOptions
SamplingOptions()
Definition
SamplingOptions.java:28
org.skia.jetski.SamplingOptions.getNativeDesc
int getNativeDesc()
Definition
SamplingOptions.java:59
org.skia.jetski.SamplingOptions.SamplingOptions
SamplingOptions(FilterMode f)
Definition
SamplingOptions.java:32
org.skia.jetski.SamplingOptions.SamplingOptions
SamplingOptions(float cubicCoeffB, float cubicCoeffC)
Definition
SamplingOptions.java:42
org.skia.jetski.SamplingOptions.SamplingOptions
SamplingOptions(FilterMode f, MipmapMode m)
Definition
SamplingOptions.java:36
org.skia.jetski.SamplingOptions.FilterMode
Definition
SamplingOptions.java:17
org.skia.jetski.SamplingOptions.FilterMode.LINEAR
LINEAR
Definition
SamplingOptions.java:19
org.skia.jetski.SamplingOptions.FilterMode.NEAREST
NEAREST
Definition
SamplingOptions.java:18
org.skia.jetski.SamplingOptions.MipmapMode
Definition
SamplingOptions.java:22
org.skia.jetski.SamplingOptions.MipmapMode.NONE
NONE
Definition
SamplingOptions.java:23
org.skia.jetski.SamplingOptions.MipmapMode.NEAREST
NEAREST
Definition
SamplingOptions.java:24
org.skia.jetski.SamplingOptions.MipmapMode.LINEAR
LINEAR
Definition
SamplingOptions.java:25
Generated on Fri Apr 26 2024 06:16:31 for Flutter Engine by
1.9.8