0
A
回答
1
首先閱讀由@Petros提到的鏈接,然後您需要計算控制點的座標,以便它們躺在您的線上。然後你必須實現拖動點的鼠標事件。你可以從這個基本的例子中受到啓發。
float[] p = { 50, 100, 80, 100, 150, 100, 180, 100 };
int point = 0;
boolean locked = false;
void setup() {
size(300, 200);
smooth();
}
void draw() {
background(255);
stroke(0);
noFill();
//Here you can just change from bazier to spline curve
//curve(p[0], p[1], p[2], p[3], p[4], p[5], p[6], p[7]);
bezier(p[0], p[1], p[2], p[3], p[4], p[5], p[6], p[7]);
noStroke();
fill(255, 0, 0);
ellipse(p[0], p[1], 3, 3);
ellipse(p[6], p[7], 3, 3);
fill(0, 0, 255, 192);
ellipse(p[2], p[3], 3, 3);
ellipse(p[4], p[5], 3, 3);
}
void mousePressed() {
if(overPoint(mouseX, mouseY)) {
locked = true;
} else {
locked = false;
}
}
void mouseDragged() {
if(locked) {
p[point] = mouseX;
p[point+1] = mouseY;
}
}
void mouseReleased() {
locked = false;
}
boolean overPoint(float x, float y){
for(point = 0; point < 7; point += 2){
if(p[point] + 2 > x && p[point] - 2 < x){
if(p[point+1] + 2 > y && p[point+1] - 2 < y){
return true;
}
}
}
return false;
}
相關問題
- 1. 如何在處理中繪製高斯曲線
- 2. 如何在處理中繪製垂直貝塞爾曲線?
- 3. JavaScript中的處理曲線Vertex
- 4. 正在拖動處理中的對象
- 5. 如何在線程中處理線程?
- 6. 如何處理扭曲
- 7. 處理:如何讓事物以隨機曲線而不是線條移動?
- 8. 在拖動手勢期間在Corona中繪製曲線?
- 9. 如何處理在android中拖動的seekbar
- 10. 如何在HighStock JS中禁用處理欄拖動
- 11. 需要曲線處理(曲線擬合,插值)的建議
- 12. 如何處理vaadin中的拖動啓動事件?
- 13. 處理拖動事件
- 14. UIImageView處理拖動系統
- 15. jQueryUI的拖動,如何從拖拽功能得到處理ID
- 16. 繪製直線並創建曲線拖動線
- 17. 處理:曲線上的透明圖像
- 18. 扭曲的多線程,信號處理
- 19. SVG路徑:曲線拖尾直線
- 20. android如何處理動畫線程
- 21. cv :: ContourArea()如何處理非閉合曲線?
- 22. 在java中,如何在動態創建時處理線程
- 23. 如何處理日冕中的拖動手勢
- 24. 如何處理Google地球插件中的拖動事件?
- 25. 如何處理C#中的標籤拖動?
- 26. 如何在最大化窗口上處理拖動事件
- 27. 如何在使用jQuery拖動時處理停止事件?
- 28. 捲曲曲奇處理
- 29. 如何在ASP.NET中處理未處理的線程異常?
- 30. 如何處理拖放圖像視圖中的拖放事件?
什麼框架? – MadProgrammer
http://processing.org/基於Java的處理 – gizgok
http://processing.org/tutorials/curves/ –