先看图
在线贝塞尔曲线获取坐标
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
看来是没什么问题的

更多相关文章

  1. Android7.1修改系统默认多媒体音量大小
  2. CheckBox控件中background和button的区别
  3. Android(安卓)getevent及sendevent分析
  4. Android(安卓)ZoomControls缩放控件
  5. Android(安卓)-- 重置Bitmap大小&&Bitmap转角度
  6. 关于Gallery使用
  7. Android传感器(五):线性加速度传感器
  8. android ImageButton显示本地图片
  9. android 仿qq分组

随机推荐

  1. android 实现短视频拍摄
  2. Android(安卓)Camera高级特性——手动对
  3. 如何运行 .smali 程序
  4. android视频截屏&手机录屏实现
  5. android ResolveInfo运用
  6. Fragment Arguments
  7. 【android】错误集锦及解决办法
  8. android 系统级别开发环境搭建
  9. 关于开机启动遇到的问题
  10. Android(安卓)四种阴影实现方式对比