我目前正在使用音乐播放器应用程序来显示歌曲的波形。我决定使用Android的Path api和自定义Drawable绘制波形。路径将是一组简单的线,以单位XY标度(0-1)表示波形,然后可以通过矩阵将其转换为绘制时所需的像素大小。然后可以在后台线程中一次生成标准化的Path,然后在屏幕刷新时才进行绘制。我遇到了高分辨率设备的问题,在该设备中纹理绝对是很大的,所以我只画了波形的可见部分。不幸的是,我仍然遇到问题,因为整个路径定义的形状太大而无法绘制到纹理上。
这是我当前的绘画代码:
library(data.table)
unique(setDT(df), by="SUBJID", fromLast=TRUE)
SUBJID VISIT
1: 40161 9
2: 40201 3
3: 40202 8
4: 40241 4
因此,为了避免在每次绘制时都生成路径,是否有可能在尝试将其绘制到画布之前将Path的内容裁剪为仅可见边界?