我正在繪製用戶繪製線條的圖形應用程序。 線條不光滑。特別是在慢慢繪製線條時,我發現問題。iOS中的OpenGL:繪製的線條非常不流暢
什麼是平滑線條的正確方法?
我閱讀下面的大文章:http://www.merowing.info/2012/04/drawing-smooth-lines-with-cocos2d-ios-inspired-by-paper/
它修復了一些問題,但不是全部。儘管如此,畫線的時候慢慢地,它們呈鋸齒狀:
我正在繪製用戶繪製線條的圖形應用程序。 線條不光滑。特別是在慢慢繪製線條時,我發現問題。iOS中的OpenGL:繪製的線條非常不流暢
什麼是平滑線條的正確方法?
我閱讀下面的大文章:http://www.merowing.info/2012/04/drawing-smooth-lines-with-cocos2d-ios-inspired-by-paper/
它修復了一些問題,但不是全部。儘管如此,畫線的時候慢慢地,它們呈鋸齒狀:
這個問題實際上是你有太多採樣點。
這就是爲什麼當用戶慢點輸入點而不是快點時,問題會加劇。一種可能的解決方案是使用某種最佳擬合直線方程(例如Least Squares)來減少點數並將其簡化爲近似值。
有更復雜的方法來平滑用戶輸入,但在這種簡單的情況下,您真正需要做的是減少樣本大小。
如果你在你的行的每個採樣點繪製一個'GL_POINT'原始數組,你將看到我的答案適用的原因。當用戶緩慢地輸入點時,會產生更多的樣本,因此結果本來不太平滑(畢竟,引入的點越多,它越偏離理想線)。當他們快速完成時,您的採樣輸入點就會減少。在這種情況下,您正在錯誤地處理問題。我不明白倒票沒有解釋,這是無禮的。 –
您能否包含您當前結果的插圖? 「不順利」可能表明有幾個問題。也許包括相關的代碼,所以我們可以看到你在做什麼。 – Bart
我添加了一張顯示它外觀的截圖。 –
而您使用的是您鏈接的文章中的方法?因爲在我看來,你只是畫出了一些片段,並沒有像文章那樣連接。向我們展示代碼將有所幫助。 – Bart