cocos2d-x 貝塞爾曲線(Bezier)用法詳解


轉載:https://blog.csdn.net/dh2442897094/article/details/51291510

網上看到一些關於cocos2d-x的介紹,感覺講的都很模糊。

今天,終於將這個問題搞清楚了。詳解如下:

 

ccBezierConfig bezier;//配置貝塞爾曲線
bezier.controlPoint1=Vec2(); //坐標省略了
bezier.contrloPoint2=Vec2();
bezier.endPosition=Vec2();

sprite->runAction(BezierBy::create(3.0f,bezier));//3.0f表示運動時間

如何如何控制曲線形狀:

 

 

 

(Po為起始點(默認起始位置),P1位控制點1,P2為控制點2,P3為結束點)。(控制點用來確定切線)

PoP1和P2P3為該曲線的切線,Po、P3為該曲線的兩個切點。(任何一條曲線都可以通過與它相切的控制線兩端的點來定義)

請注意理解上面這句話。

實際就是通過兩條切線和兩個端點來定義一條曲線。

注意:

當使用CCBezierTo時,ccBezierConfig的點都是絕對坐標點。但如果使用CCBezierBy,ccBezierConfig的點都是相對於起始點的相對坐標。

 

說明: PS 作圖工具 制作曲線,就是這種方式的

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM