该question可能与之重复,
但我不知道如何在我的应用程序中应用此方法,以及在cocos2d-x中应使用哪种方法绘制Bezier曲线。我的应用程序应允许用户在触摸 Canvas 时绘制线条和曲线。我该如何实现?
最佳答案
在CCDrawPrimitives.cpp文件中。
您可以使用此方法。
ccDrawCubicBezier
ccDrawQuadBezier
-MyClass::draw() {
glLineWidth(4.0f);
ccPointSize(4);
//Draw a blue quadratic bezier curve
ccDrawColor4B(0, 0, 255, 255);
ccDrawQuadBezier(ccp(90,0), ccp(200, 70), ccp(350,0), 12);
//Draw cubic red bezier curve
ccDrawColor4B(255, 0, 0, 255);
ccDrawCubicBezier(ccp(100,100), ccp(300,150), ccp(250,50), ccp(350,100), 12);
//Restore original values
glLineWidth(1);
ccDrawColor4B(255,255,255,255);
ccPointSize(1);
}
每次移动触摸位置时,您都可能会调用ccTouchesMoved方法。
您可以使用方法和成员变量控制曲线形状。
关于c++ - 使用cocos2d-x绘制平滑的贝塞尔曲线,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23410062/