这里没有废话之先上效果图。
小球粘起来了?这里没有废话之思路描述
1.找到小球圆心连线的中点画贝塞尔曲线,没错就是这么简单
这里没有废话之核心代码
workPath.moveTo(ballPos[step][0], ballPos[step][1]);
workPath.lineTo(ballPos[step-1][0], ballPos[step-1][1]);
pathMeasure.setPath(workPath, false);
if (pathMeasure.getPosTan(pathMeasure.getLength() * 0.5f, pos, tan)) {
flowPath.moveTo(ballPos[step][0], ballPos[step][1] - sballradius);
flowPath.quadTo(pos[0], pos[1], ballPos[step-1][0], ballPos[step-1][1] - sballradius);
flowPath.lineTo(ballPos[step - 1][0], ballPos[step - 1][1] + sballradius);
flowPath.quadTo(pos[0], pos[1], ballPos[step][0], ballPos[step][1] + sballradius);
flowPath.close();
}
canvas.drawPath(flowPath, paint);
这里没有废话之总结
原来画画的基础是数学。。。
这里没有废话之鸣谢
感谢https://www.aconvert.com/cn/帮我转了gif。
网友评论