2013-03-02 16 views
5

Giả sử tôi có đường cong được tạo bằng cách sử dụng số serie của các cuộc gọi bezierCurveTo(). Tôi muốn làm cho nó xuất hiện dần dần trong một hình ảnh động, bằng cách tăng phần trăm của nó được rút ra khung-sau-frame. Vấn đề là tôi không thể tìm thấy một cách tiêu chuẩn để vẽ chỉ là một phần của một con đường vải - sẽ someon biết một cách tốt (hoặc thậm chí là một cách khôn lanh) để đạt được điều này?Làm thế nào để vẽ một đường dẫn một phần trong canvas của HTML5?

+1

Câu trả lời này cho câu hỏi trước có thể hữu ích cho bạn. http://stackoverflow.com/questions/878862/drawing-part-of-a-bezier-curve-by-reusing-a-basic-bezier-curve-function – jing3142

+0

Ồ, điều đó rất hữu ích. Thanh danh. – Gnurou

Trả lời

2

Chắc chắn ... và Simon Porritt đã làm tất cả các bài toán khó cho chúng tôi!

jsBezier là một lib nhỏ với hàm: pointAlongCurveFrom (đường cong, vị trí, khoảng cách) sẽ cho phép bạn tăng dần từng điểm dọc theo đường cong Bezier của bạn.

jsBezier có sẵn trên GitHub: https://github.com/sporritt/jsBezier

+0

Cảm ơn - tuy nhiên tôi đã thử phương pháp này (vẽ các điểm dọc theo đường cong) với các môi trường khác và kết quả là không may khá chậm do số tiền vượt quá cao. Điều này có thể được sử dụng cho đến khi một cách để sử dụng dấu gạch ngang được chuẩn hóa mặc dù (sử dụng đường đứt nét là một cách dễ dàng để đạt được hiệu ứng này). Vẫn mở cho các câu trả lời khác. – Gnurou

+0

BTW, tôi đã không thử nó, nhưng tôi nghĩ rằng Chrome bây giờ hỗ trợ các đường đứt nét với context.setLineDash ([5]). – markE

+0

Đúng vậy - Tôi muốn ở lại khu vực tương thích hoàn toàn mặc dù :) – Gnurou