Android(安卓)贝塞尔曲线的使用 操作
16lz
2021-01-25
先看图
在线贝塞尔曲线获取坐标
Paste_Image.png根据期提供的 位置我们在android 上面看看是什么样子的
float startX= 100; float startY=250; float endX=200; float endY=250; Path path= new Path(); path.moveTo(startX, startY); path.cubicTo(350, 250, 100, 350, endX, endY); canvas.drawPath(path,getBrokenLinePaint());
Paste_Image.png 问题来了 这个大小是固定的所以我们需要做一些处理
从上面我们可以看到 endx 与startx 的距离是100
- 第一个控制点 350 250 如果按照比例换算的话
X比例(350-100) / 100 =2.5
Y比例 (endY-250) /100 = 0 - 第二个控制点 100 350
X比例(100-100) / 100 =0
Y比例 (endY-350) /100 = -1
那么代码最终就变成了 我们来看看效果图 ,看起来大小没什么变化
float startX= 100; float startY=250; float endX=200; float endY=250; float wt=endX-startX; float x1= (float) (startX+wt*2.5); float y1= startY+ wt*0; float x2=startX+ wt*0; float y2=startY - wt*-1; Path path= new Path(); path.moveTo(startX, startY); path.cubicTo(x1, y1, x2, y2, endX, endY); canvas.drawPath(path,getBrokenLinePaint());
Paste_Image.png
我们把endX修改成400看看 是否变形
Paste_Image.png Paste_Image.png看来是没什么问题的
更多相关文章
- Android7.1修改系统默认多媒体音量大小
- CheckBox控件中background和button的区别
- Android(安卓)getevent及sendevent分析
- Android(安卓)ZoomControls缩放控件
- Android(安卓)-- 重置Bitmap大小&&Bitmap转角度
- 关于Gallery使用
- Android传感器(五):线性加速度传感器
- android ImageButton显示本地图片
- android 仿qq分组