排列 :从n个不同元素中,任取m(m≤n)个元素(被取出的元素各不相同),按照一定的顺序排成一列,
叫做从n个不同元素中取出m个元素的一个排列。
A(n,m) = n(n-1)(n-2)..(n-m+1) = n! / (n-m)!
公式P是排列公式,从N个元素取M个进行排列(即排序)。(P是旧用法,现在教材上多用A,Arrangemen)
组合:从n个不同元素中,任取m(m≤n)个元素并成一组,叫做从n个不同元素中取出m个元素的一个组合;
从n个不同元素中取出m(m≤n)个元素的所有组合的个数,叫做从n个不同元素中取出m个元素的组合数。用
符号c(n,m) 表示。
c(n,m)= p(n,m)/m! = n!/((n-m)!*m!)
n 階貝茲曲線 ——横坐标是t(时间)
給定點 P0、P1、…、Pn,其貝茲曲線即
B(t)= Sigma(n,i=0){c(n,i) * Pi * pow( (1-t),n-i ) * pow(t,i)}
如n = 4
二次貝茲曲線的結構二次貝茲曲線演示動畫
叫做从n个不同元素中取出m个元素的一个排列。
A(n,m) = n(n-1)(n-2)..(n-m+1) = n! / (n-m)!
公式P是排列公式,从N个元素取M个进行排列(即排序)。(P是旧用法,现在教材上多用A,Arrangemen)
组合:从n个不同元素中,任取m(m≤n)个元素并成一组,叫做从n个不同元素中取出m个元素的一个组合;
从n个不同元素中取出m(m≤n)个元素的所有组合的个数,叫做从n个不同元素中取出m个元素的组合数。用
符号c(n,m) 表示。
c(n,m)= p(n,m)/m! = n!/((n-m)!*m!)
n 階貝茲曲線 ——横坐标是t(时间)
給定點 P0、P1、…、Pn,其貝茲曲線即
B(t)= Sigma(n,i=0){c(n,i) * Pi * pow( (1-t),n-i ) * pow(t,i)}
如n = 4
B(t) = P0 * (1-t)^4 + P1*4*(1-t)^3*t + P2*6*(1-t)^2*t^2 + P3*4* (1-t)*t^3 + P4*t^4
三次方貝茲曲線
P0、P1、P2、P3 四個點在平面或在三維空間中定義了三次方貝茲曲線。曲線起始於P0 走向P1,並從 P2 的方向來到P3。一般不會經過P1 或 P2;這兩個點只是在那裡提供方向資訊。P0 和P1 之間的間距,決定了曲線在轉而趨進 P3 之前,走向P2 方向的「長度有多長」。
曲線的參數形式為:
-
。
線性曲線
二次曲線

![二次貝茲曲線演示動畫,t in [0,1]](http://upload.wikimedia.org/wikipedia/commons/2/2d/Bezier_2_big.gif)
高階曲線
![]() | ![]() | |
三次貝茲曲線的結構 | 三次貝茲曲線演示動畫,t in [0,1] |
![]() | ![]() | |
四次貝茲曲線的結構 | 四次貝茲曲線演示動畫,t in [0,1] |
——————cocos2d
photoshop 的钢笔工具就是 画贝塞尔曲线 可以通过钢笔画出想要的图形 从而得到绘制图形所需的锚点信息 用cocos2d的贝塞尔函数(三阶的)可以拼出任意图形