2
A
回答
7
要找到中心點,你需要找到的最小和最大X和Y座標的多邊形,然後取每個的中點,以獲得平均中心點。這裏有一個函數可以爲一組imagemap區域執行此操作。該功能接受一個數組而不僅僅是一個區域,以防您需要來自多個區域的中心點,就像典型的地理圖像地圖一樣。這裏
工作的例子,將借鑑的中心點的圓圈選擇美國的州: http://jsfiddle.net/jamietre/6ABfa/
/* Calculate the centermost point of an array of areas
@param {element[]} areas an array of area elements
@returns {object} {x,y} coords of the center point
*/
function calculateCenterPoint(areas) {
var maxX = 0,
minX = Infinity,
maxY = 0,
minY = Infinity;
// note: using Array.prototype.forEach instead of calling forEach directly
// on "areas" so it will work with array-like objects, e.g. jQuery
Array.prototype.forEach.call(areas, function (e) {
var i = 0,
coords = e.getAttribute('coords').split(',');
while (i < coords.length) {
var x = parseInt(coords[i++],10),
y = parseInt(coords[i++],10);
if (x < minX) minX = x;
else if (x > maxX) maxX = x;
if (y < minY) minY = y;
else if (y > maxY) maxY = y;
}
});
return {
x: minX + (maxX - minX)/2,
y: minY + (maxY - minY)/2
};
}
相關問題
- 1. 計算邊界圖像寬度與邊界圖像首先
- 2. Android計算圖像的寬度
- 3. 圖像重映射算法
- 4. 計算寬度與jQuery
- 5. 計算與自動寬度
- 6. 計算寬度div的圖像寬度? JS/jQ
- 7. TCL計算映射
- 8. IE與Chrome - 圖像寬度/ Div寬度
- 9. 如何計算圖像方面的高度/寬度
- 10. 如何計算IIIF旋轉圖像的高度和寬度
- 11. 設置寬度爲100%時計算圖像高度
- 12. 快速計算圖像高度和寬度
- 13. 從源文件計算圖像的高度和寬度
- 14. 在Opera中計算像素的寬度
- 15. 計算器高度寬度
- 16. 映射值:計算百分
- 17. 緩存和計算映射
- 18. 基於映射的計算
- 19. 窗口之後,重新計算圖像映射調整
- 20. 計算圖像的銳度
- 21. 使用計算jQuery CSS寬度計算
- 22. 計算工具欄圖標寬度
- 23. HTML圖像映射
- 24. WPF圖像映射
- 25. 在C#Winforms中放大時計算圖像寬度
- 26. Javascript:計算div的寬度作爲圖像總和
- 27. 使用jquery計算加載圖像列表的寬度
- 28. 如何計算div中許多圖像的總寬度?
- 29. DICOM圖像的窗口寬度和中心計算
- 30. 計算在jQuery中的圖像的寬度
感謝您的解決方案... :) – 2013-03-18 17:39:01
@傑米 - treworgy什麼我需要改變如果要在一個循環中分別獲取多個區域的中心。可以說我有適用於5個州的條件。現在我想在頁面加載時標記這些狀態。 謝謝。 – nomi416 2016-11-14 09:50:55
完美〜!謝謝。 – Lin 2017-08-16 22:46:50