Flutter 貝塞爾曲線切割

2022-06-08 07:33:10 字數 1305 閱讀 2502

現在人們對於**的美感要求是越來越高了,所以很多布局需要優美的曲線設計。當然最簡單的辦法是作乙個png的透明,然後外邊放乙個container.但其內容如果本身就不是,只是容器,這種放入的做法會讓包體變大。其實我們完全可以使用貝塞爾曲線進行切割。

clippath控制項可以把其內部的子控制項切割,它有兩個主要屬性(引數):

class

curvepage extends statelesswidget

}

scaffold裡放置了乙個列容器,然後把clippath控制項放到了裡邊,clippath的子元素是乙個容器控制項containerbootomclipper是我們自定義的乙個物件,裡邊主要就是切割的路徑。

我們主要的貝塞爾曲線路徑就寫在getclip方法裡,它返回一段路徑。

乙個二階的貝塞爾曲線是需要控制點和終點的,控制點就像一塊磁鐵,把直線吸引過去,形成乙個完美的弧度,這個弧度就是貝塞爾曲線了。

我們先來熟悉一下裁切路徑和貝塞爾曲線,作乙個最簡單的貝塞爾曲線出來。

全部**如下:

在上面**的基礎上修改為波浪式的貝塞爾曲線,波浪形式的只要把裁切變成兩個對稱的貝塞爾曲線就可以實現了。

**如下:

//

曲線路徑

class bottomclipper extends customclipper

@override

bool shouldreclip(customclipperoldclipper)

}

Flutter 貝塞爾曲線實現案例

需要安裝flutter的開發環境 大家可以去看看之前的教程 1 win系統flutter開發環境安裝教程 2 mac系統flutter開發環境安裝教程 普通貝塞爾曲線 我們這邊寫了clippath 來處理我們貝塞爾曲線的繪製 clippath 裡面我們巢狀了乙個 container 盒子元件設定高度...

Flutter 貝塞爾曲線實現案例

需要安裝flutter的開發環境 大家可以去看看之前的教程 1 win系統flutter開發環境安裝教程 2 mac系統flutter開發環境安裝教程 普通貝塞爾曲線 我們這邊寫了clippath 來處理我們貝塞爾曲線的繪製 clippath 裡面我們巢狀了乙個 container 盒子元件設定高度...

貝塞爾曲線

1.概述 貝塞爾曲線 b zier curve 又稱 貝茲曲線或貝濟埃曲線,是應用於二維圖形應用程式的數學曲線。一般的向量圖形 軟體通過它來精確畫出曲線,貝茲曲線由 線段與節點組成,節點是可拖動的支點,線段像可伸縮的皮筋,我們在繪圖工具上看到的鋼筆工具就是來做這種向量曲線的。貝塞爾曲線是計算機圖形學...