作者:创世魂
● 本类说明
简单来说,设置“剪裁区域”后,“绘制内容”时会将“剪裁区域外”的内容剪裁掉。
注意:本类位于“安卓基本类”模块中,必须添加此模块才能使用。
● 从矩形创建
帮助文档如下图:
本方法简单来说,就是通过四个参数的坐标位置,设置一个矩形剪裁区域。
绘制内容时,只能在这个区域内进行绘制。
本方法已经在“置入剪裁区域”中使用过,可点击跳转过去参考代码。
● 从矩形创建2
帮助文档如下图:
本方法和“从矩形创建”不同之处在于,本方法只有一个“矩形类”参数。
需要定义一个“矩形类”变量,设置“上下左右”四个属性来指定矩形区域。
“矩形类”的用法在本教程中多次使用,此处不再讲解使用方法。
● 复制
帮助文档如下图:
就是将“参数2”剪裁区域的内容赋值给“参数1”。
这样“参数1”就拥有了“参数2”所有的内容。
代码编写演示:
如图所示的编写代码,“剪裁区域2”就会拥有“剪裁区域1”创建的矩形。
● 复制创建
帮助文档如下图:
简单来说,就是将“参数1”的对象复制一份并返回。
“返回值”将会拥有“参数1”创建的剪裁区域。
可以通过“画板类.置入剪裁区域”方法调用本返回值,实现剪裁区域的应用。
● 加入矩形区域
帮助文档如下图:
简单来说就是将“矩形类”和“当前剪裁区域”进行合并。
返回结果为逻辑型,判断“是否不为”空。
代码编写如下图:
定义“剪裁区域类”变量,设置参考。
定义“矩形类”变量,分别设置“上下左右”四个属性。
随后创建一个矩形剪裁区域,赋值给“剪裁区域1”变量。
然后调用“剪裁区域类.加入矩形区域”方法,将“剪裁区域1”和“矩形”两个变量分别写入参数内。
最后还需要调用“画板对象.置入剪裁区域”方法,将剪裁区域应用到画板上,最后填充颜色做演示。
运行效果如下图:
可以看到一次性出现两个黄色矩形,证明合并成功。
● 矩形包含测试
帮助文档如下图:
简单来说就是根据指定的坐标,判断“坐标”形成的“矩形”是否完全在“剪裁矩形”内。
如果“矩形”完全在“剪裁矩形”内,则返回“真”,如果没有则返回“假”。
代码演示:
当前代码的执行结果必然为“包含”。
如果说修改“矩形包含测试”后两个参数,任意一个大于100,则必然会返回“不包含”。
因为我们定义的“剪裁矩形”高度和宽度就是100,如果超过了这个数值,自然就不包含了。
● 矩形包含测试2
帮助文档如下图:
本方法与“矩形包含测试”不同之处在于,本方法判断是的是“矩形类”。
通过“矩形类”的“上下左右”四个参数可以进行指定一个矩形。
本教程中多次用到了“矩形类”,此处不在详细说明。
● 矩形不相交测试
帮助文档如下图:
顾名思义,就是用来判断指定的“矩形”是否与“剪裁区域”相交。
返回“真”有两种情况。
第一:剪裁区域为空。
第二:矩形和剪裁区域不相交。
除了这两种情况外,其它情况都返回假。
代码可参考“矩形包含测试”。
● 矩形不相交测试2
帮助文档如下图:
本方法和“矩形不相交测试”的区别在于,矩形坐标是由“矩形类”指定。
返回值的返回条件和“矩形不相交测试”一样。
● 区域不相交测试
帮助文档如下图:
本方法的作用是用来判断指定的“剪裁区域”是否与“当前剪裁区域”相交。
返回值为“逻辑型”。
“返回真”表示两个剪裁区域不想交,如果相交“返回假”。
● 清空
帮助文档如下图:
顾名思义,就是用来清空“剪裁区域”。
调用方法“剪裁区域类.清空()”,参数内填写要清空的剪裁区域对象即可。
● 取边界矩形
帮助文档如下图:
本方法有点类似于“绘制路径类.计算包围矩形()”。
不同之处在于,本方法是针对“剪裁区域”进行操作,并且取出来的矩形是以返回值的形式出现。
通过“矩形类”的“上下左右”四个读属性,可以取出边界矩形的四个坐标。
本方法此处不再演示效果,大家自行测试。
● 取边界矩形2
帮助文档如下图:
本方法与“取边界矩形”不同之处在于,本方法的“边界矩形”的“矩形类”是通过参数返回。
代码编写可参考:“绘制路径类.计算包围矩形()”。
● 取边界路径
帮助文档如下图:
本方法与“取边界矩形”不同之处在于,本方法返回的是“绘制路径类”对象。
可以通过调用“画板对象.画路径 ()”方法,将返回的路径绘制出来。
● 取边界路径2
帮助文档如下图:
本方法与“取边界路径”不同之处在于,它是通过参数返回“绘制路径类”对象。
● 是否包含指定点
帮助文档如下图:
本方法的作用就是根据“坐标”判断“指定点”是否存在于“剪裁区域内”。
包含返回“真”,不包含返回“假”。
● 是否相同
帮助文档如下图:
顾名思义,它的作用就是判断两个“剪裁区域”是否相同。
相同返回“真”,不相同返回“假”。
● 移动
帮助文档如下图:
顾名思义,就是移动“当前剪裁区域”,移动后返回本对象内。
本方法和“移动路径”大同小异,可参考移动路径的代码。
● 移动2
帮助文档如下图:
本方法和“移动”的不同之处在于,本方法移动后的结果会返回给“参数4”中。
本方法和“移动路径”大同小异,可参考移动路径的代码。
● 置为矩形区域
帮助文档如下图:
注意:本方法会清除剪裁区域的原有内容,并将其设置为“矩形剪裁区域”。
这个矩形区域是通过方法内的“四个”参数决定。
● 置为矩形区域2
帮助文档如下图:
本方法与“置为矩形区域”不同之处在于,本方法是通过“矩形类”来指定剪裁区域。
通过“矩形类”的“上下左右”四个写属性可以指定坐标。
“矩形类”在本教程中也是多次使用,因此不再演示。
● 置为路径剪裁结果
帮助文档如下图:
简单来说,就是利用“参数3”的剪裁区域对“参数2”的路径,进行剪裁操作,最后的结果放入“参数1”中。
返回结果“真”表示不是空的。
返回“假”表示空的。
代码编写如下图:
我们需要定义三个变量,一个“绘制路径类”变量和两个“剪裁区域类”变量。
其中一个“剪裁区域2”设置参考。
然后按照如图所示的代码一一编写。
最终的效果就是:“剪裁区域2”创建的矩形会对“圆形路径”进行剪裁操作,并且结果会放入“剪裁区域1”内。
运行效果如下图:
最终的结果,可以看到“圆形”只剩下一个扇形,剩下的被“矩形剪裁区域”给剪掉了。
● 置组合结果
帮助文档如下图:
简单来说就是将“参数2”和“参数3”进行组合,组合方式为“剪裁区域组合方式.XXX”。
最后的组合结果返回“参数1”。
代码编写如下图:
定义三个“剪裁区域类”变量,后两个设置参考。
然后分别给“剪裁区域2”和“3”创建矩形剪裁区域。
随后调用“剪裁区域类.置组合结果”方法,填入对应的参数。
最后在画板上应用“剪裁区域1”,也就是最终组合结果。
然后给剪裁区域“填充颜色”。
运行效果如下图:
可以看到两个矩形的相交部分被剪裁掉,这是“不相交”模式的结果。
其它模式大家可以自行测试。
● 置组合结果2
帮助文档如下图:
本方法和“置组合结果”不同之处在于,它是让“矩形类”和“剪裁区域”进行组合。
最终的结果依然是返回“参数1”中。
● 组合矩形区域
帮助文档如下图:
本方法和前面两个方法类似,也是组合区域的。
不同之处是,本方法是通过“参数2、3、4、5”创建的矩形区域和“参数1”进行组合。
最终的结果返回给“参数1”中。
代码编写可参考“置组合结果”。
● 组合矩形区域2
帮助文档如下图:
本方法与“组合矩形区域”不同之处在于,本方法是通过“矩形类”进行组合。
“矩形类”的创建方法,本教程中也多次使用,这里不再演示。
● 组合区域
帮助文档如下图:
本方法和前面两个不同之处在于,本方法是“两个”剪裁区域类进行组合。
组合结果依然是返回“参数1”中。
● 是否为空(读)
帮助文档如下图:
本读属性顾名思义,就是用来判断“剪裁区域类”对象是否为空。
调用方式:“剪裁区域类变量.是否为空”
具体可参看下图中的代码。