|
|
|
|
|
|
var y = this.matrix[5] * devicePixelRatio; |
|
|
|
this.matrix[2] = (x - (int) x) / devicePixelRatio; // x
|
|
|
|
this.matrix[5] = (y - (int) y) / devicePixelRatio; // y
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
this.matrix[5] = 0.0f; |
|
|
|
this.matrix[5] = 0.0f; |
|
|
|
this.devicePixelRatio = devicePixelRatio; |
|
|
|
this.antiAliasing = antiAliasing; |
|
|
|
} |
|
|
|
|
|
|
readonly Dictionary<_RasterCacheKey, _RasterCacheEntry> _cache; |
|
|
|
|
|
|
|
MeshPool _meshPool; |
|
|
|
|
|
|
|
Picture picture, Matrix3 transform, float devicePixelRatio, int antiAliasing, bool isComplex, bool willChange) { |
|
|
|
Picture picture, Matrix3 transform, float devicePixelRatio, int antiAliasing, bool isComplex, |
|
|
|
bool willChange) { |
|
|
|
if (this.threshold == 0) { |
|
|
|
return null; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
if (entry.image == null) { |
|
|
|
D.assert(this._meshPool != null); |
|
|
|
entry.image = this._rasterizePicture(picture, transform, devicePixelRatio, antiAliasing, this._meshPool); |
|
|
|
entry.image = |
|
|
|
this._rasterizePicture(picture, transform, devicePixelRatio, antiAliasing, this._meshPool); |
|
|
|
} |
|
|
|
|
|
|
|
return entry.image; |
|
|
|
|
|
|
foreach (DrawCmd drawCmd in picture.drawCmds) { |
|
|
|
switch (drawCmd) { |
|
|
|
case DrawImage cmd: { |
|
|
|
if (cmd.image.isDynamic) |
|
|
|
if (cmd.image.isDynamic) { |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (cmd.image.isDynamic) |
|
|
|
if (cmd.image.isDynamic) { |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (cmd.image.isDynamic) |
|
|
|
if (cmd.image.isDynamic) { |
|
|
|
} |
|
|
|
|
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|