overlap-area这个插件可以:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,initial-scale=1.0,maximum=1.0,minimum=1.0,user-scalable=0" /> <title>BFW NEW PAGE</title> <script id="bfwone" data="dep=jquery.17&err=0" type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/bfwone.js"></script> <script type="text/javascript"> bready(function() { use(["overlap-area.min"], function() { const points1 = [ [150, 100], [200, 50], [250, 60], [300, 100], [250, 160], [150, 150], [200, 120], ]; const points2 = [ [250, 100], [300, 50], [350, 60], [400, 100], [350, 160], [220, 150], [300, 120], ]; console.log(OverlapArea.getOverlapAreas(points1, points2)); }); }); // 输出 /* [ [ [272.2222222, 77.7777778], [300, 100], [287.5, 115], [250, 100], ], [ [275.7575758, 129.0909091], [256.0240964, 152.7710843], [220, 150], ], ] */ </script> <style> </style> </head> <body> </body> </html>gitHub地址:https://github.com/daybrush/overlap-area
网友回复