5
A
回答
1
鑑於點A(10,5)和B(15,90)和C(X,Y)在AB,我們有:
(x - 10)/(y - 5) = (15 - 10)/(90 - 5)
你可以做的是迭代從x = 10至x = 15,並計算對應的y。由於x和y是整數,所以有時候必須舍入結果(或跳過它)。
9
編輯:下面的解決方案僅適用於幾何角度。在屏幕上繪圖與理論幾何圖形不同,您應該聽取建議Bresenham算法的人員。
考慮,兩個點,並且知道該行的公式爲y = m*x + b
,其中m
是斜率和b
的攔截,就可以計算出m
和b
,然後公式適用於X軸的所有值在你的A和B點之間:
var A = [10, 5];
var B = [15, 90];
function slope(a, b) {
if (a[0] == b[0]) {
return null;
}
return (b[1] - a[1])/(b[0] - a[0]);
}
function intercept(point, slope) {
if (slope === null) {
// vertical line
return point[0];
}
return point[1] - slope * point[0];
}
var m = slope(A, B);
var b = intercept(A, m);
var coordinates = [];
for (var x = A[0]; x <= B[0]; x++) {
var y = m * x + b;
coordinates.push([x, y]);
}
console.log(coordinates); // [[10, 5], [11, 22], [12, 39], [13, 56], [14, 73], [15, 90]]
相關問題
- 1. 獲取兩點之間的座標?
- 2. 獲取圖像內的矢量的所有像素座標
- 3. 在城市2 gps座標之間獲取航點表
- 4. 從座標獲取像素
- 5. 獲取目標中兩點之間的所有X,Y座標C
- 6. 獲取2個XML標籤之間的所有值
- 7. android 2點之間有多少像素
- 8. 在兩個CGPoint之間取得所有像素之間的值?
- 9. 獲取位置之間的所有座標iphone地圖套件
- 10. 比較2個圖像,獲取它們之間的差異座標
- 11. 如何獲取兩個非線性點之間的所有像素位置opencv
- 12. 獲取所有像素兩個像素
- 13. 2個GPS座標之間的角度
- 14. 獲取圖像中兩個點之間的像素數
- 15. 獲取C和2之間的所有素數
- 16. 兩個圖像之間的像素座標
- 17. 在2個點之間的每個交叉點上放置標記並獲取它們的座標
- 18. 獲取谷歌地圖V3中2個端點之間的所有地理點
- 19. 獲取陣列中兩個元素之間的所有元素
- 20. 獲取圖像上的點座標
- 21. 垂直固定在2個座標之間的CSS/Javascript元素
- 22. PHP得到4套座標之間的所有座標
- 23. 找到所有的兩點之間的座標(三維)
- 24. 如何獲取html標籤之間的所有元素?
- 25. 獲取HTML標籤之間的所有元素在PHP
- 26. 獲取白色像素座標(OpenCV)
- 27. Unity從RectTransform獲取像素座標值
- 28. 通過兩點之間的長度獲取座標
- 29. 獲取vba中的2個日期之間的所有日期
- 30. 獲取元素的座標
剛纔他們在學校教我關於Sine,Cosine和Tangent。 http://www.mathsisfun.com/sine-cosine-tangent.html –
Dupe - 請參閱:http://stackoverflow.com/questions/4672279/bresenham-algorithm-in-javascript –
你正在尋找http:///en.wikipedia.org/wiki/Bresenham%27s_line_algorithm – Alnitak