回弹阻尼&贝塞尔曲线,Path/PathMeasure进阶 - Android

> 阻尼:事件滑动+Animation
A ScrollView with over scroll capabilities- https://github.com/EverythingMe/OverScrollView
Android回弹阻尼效果- https://github.com/ausboyue/ReboundEffects
android 带阻尼的周期运动- https://blog.csdn.net/nsw911439370/article/details/44782921

> 贝塞尔曲线+Path,深刻的了解到贝塞尔曲线是进阶自定义view的一座大山.
 - Canvas与Path的区别:
Canvas绘制图形只能画一些常规图形(圆,椭圆,矩形等);
Path类将多种复合路径(多个轮廓,如直线段、二次曲线、立方曲线)封装在其内部的几何路径,
通过设置Paint的Style(FILL、STROKE、FILL_AND_STROKE),然后调用canvas.drawPath(path, paint);Path还可以用于剪切或者在路径上绘制文本(canvas.drawTextOnPath())。

 Android如何关闭硬件加速- https://github.com/GcsSloop/AndroidNote/issues/7
 关闭硬件加速,以免引起不必要的问题!
在AndroidMenifest文件中application节点下添上 android:hardwareAccelerated=”false”以关闭整个应用的硬件加速。 
 - 使用Path不仅能够绘制简单图形,也可以绘制这些比较复杂的图形。另外,根据路径绘制文本和剪裁画布都会用到Path。
 Path封装了由直线和曲线(二次,三次贝塞尔曲线)构成的几何路径。你能用Canvas中的drawPath来把这条路径画出来(同样支持Paint的不同绘制模式),也可以用于剪裁画布和根据路径绘制文字。我们有时会用Path来描述一个图像的轮廓,所以也会称为轮廓线(轮廓线仅是Path的一种使用方法,两者并不等价)

Android开发之Path详解- https://blog.csdn.net/xiangzhihong8/article/details/78278931/
Android雷达图(蜘蛛网图)绘制- https://blog.csdn.net/crazy__chen/article/details/50163693
android绘图之Path总结- https://ghui.me/post/2015/10/android-graphics-path/
Android Canvas之Path操作- https://www.jianshu.com/p/9ad3aaae0c63

-- 贝塞尔曲线;深刻的了解到贝塞尔曲线是进阶自定义view的一座大山.
  贝塞尔曲线(Bézier curve),又称贝兹曲线或贝济埃曲线,是应用于二维图形应用程序的数学曲线。一般的矢量图形软件通过它来精确画出曲线,贝兹曲线由线段与节点组成,节点是可拖动的支点,线段像可伸缩的皮筋,我们在绘图工具上看到的钢笔工具就是来做这种矢量曲线的。主要结构:起始点、终止点(也称锚点)、控制点。通过调整控制点,贝塞尔曲线的形状会发生变化。
  一阶贝塞尔曲线(线段);二阶贝塞尔曲线(抛物线);三阶贝塞尔曲线等Path

弹性球的封装,粘连的效果- https://github.com/82367825/BezierMaster  
弹性球的封装,粘连的效果- http://download.csdn.net/download/z82367825/9543446

 贝塞尔曲线最初由Paul de Casteljau于1959年运用de Casteljau演算法开发,以稳定数值的方法求出贝兹曲线。
在计算机图形学中贝赛尔曲线的运用也很广泛,Photoshop中的钢笔效果,Flash5的贝塞尔曲线工具,在软件GUI开发中一般也会提供对应的方法来实现贝赛尔曲线。
 深刻的了解到贝塞尔曲线是进阶自定义view的一座大山.
贝赛尔曲线两类:数据点、控制点。通过调整控制点,贝塞尔曲线形状会发生变化。
数据点:确定曲线的起始和结束位置
控制点:确定曲线的弯曲程度

> PathMeasure,进阶(Path/PathMeasure等)
android PathMeasure类 详细介绍- https://blog.csdn.net/coderinchina/article/details/53665632

自定义View进阶(Path贝塞尔曲线/ PathMeasure等)
安卓自定义View进阶-Path之玩出花样(PathMeasure)- http://blog.csdn.net/u013831257/article/details/51565591
Android 自定义View—Path的使用- http://blog.csdn.net/to_be_designer/article/details/48525957
Path类的最全面详解 - 自定义View应用系列- http://www.jianshu.com/p/2c19abde958c#
自定义View之绘图篇(二):路径(Path)- http://blog.csdn.net/u012551350/article/details/51245793
安卓自定义View进阶-Path基本操作- http://blog.csdn.net/u013831257/article/details/50784565
Android自定义View-Path基本操作- http://www.jianshu.com/p/726b714da133#

-- Path/ PathMeasure/ PathEffect/ SVG
  Path在2D绘图中是一个很重要的东西。请关闭硬件加速,以免引起不必要的问题!Path, 轨迹,路径。Path可以沿着多个点绘制一条路径, 在Canvas中可以根据Path绘制不同的图形。
  绘制复杂的图形时我们一般是将 SVG 图像转换为 Path。Path 和 SVG 结合通常能诞生出一些奇妙的东西.
SVG与Path的转换:https://bigbadaboom.github.io/androidsvg/  https://github.com/geftimov/android-pathview
  https://github.com/GcsSloop/AndroidNote/blob/master/CustomView/Advance/Code/SearchView.md

猜你喜欢

转载自blog.csdn.net/ShareUs/article/details/81336074