# 2d-polygon-boolean 中文文档

规范地址：https://npmcn.com/package/2d-polygon-boolean/

版本：1\.0\.1
npm 元数据更新时间：2022-11-08T10:38:57.353Z
中文译文更新时间：2026-11-05T22:56:17.789Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/2d-polygon-boolean
原文对照：https://npmcn.com/package/2d-polygon-boolean/?lang=original
项目主页：https://github.com/tmpvar/polygon.clip.js
源码仓库：https://github.com/tmpvar/polygon.clip.js

## 关键信息（来自 npm 元数据）

- 模块格式：CommonJS
- TypeScript 类型：未声明
- 运行依赖：4 个
- 首次发布：2014-12-18T03:17:42.478Z
- 最新版本发布：2015-06-05T01:55:16.739Z
- 近 30 天下载量：10190（2026-10-04 至 2026-11-02，npm 官方下载统计）
- 已发布版本数：2（近 12 个月 0 个）

## 中文简介

在 2d 中执行任意多边形的布尔操作

## 安装

```sh
npm install 2d-polygon-boolean
```

也可以使用：`pnpm add 2d-polygon-boolean`、`yarn add 2d-polygon-boolean`、`bun add 2d-polygon-boolean`

## README

# 多边形.clip

实施格来纳-凯"高效剪接任意多边形" [纸张](http://www.inf.usi.ch/hormann/papers/Greiner.1998.ECO.pdf)

## 安装

`npm install 2d-polygon-boolean`

## 使用情况

### 签名

`var polygons = polygonBoolean(array1, array2, mode)`

模式为字符串 `and` (节间), `or` (工会), `not` (切开)

`polygons` 是数组数组

(例如

```javascript
  [
    [
      [0, 0],
      [0, 1],
      [1, 1]
    ]
  ]
```

### 实例

```javascript

var polygonBoolean = require('2d-polygon-boolean');

var subject = [
  [0, 0],
  [100, 0],
  [100, 100],
  [0, 100]
];

var clip = [
  [90, 90],
  [110, 90],
  [110, 110],
  [90, 110],
  [90, 90]
];


var union = polygonBoolean(subject, clip, 'or');
console.log('union results', union);

/*
union results [ [ [ 100, 90 ],
    [ 100, 0 ],
    [ 0, 0 ],
    [ 0, 100 ],
    [ 90, 100 ],
    [ 90, 110 ],
    [ 110, 110 ],
    [ 110, 90 ] ] ]
*/

var cut = polygonBoolean(subject, clip, 'not');
console.log('cut results', cut);

/*
cut results [ [ [ 100, 90 ],
    [ 100, 0 ],
    [ 0, 0 ],
    [ 0, 100 ],
    [ 90, 100 ],
    [ 90, 90 ] ] ]
*/

var intersect = polygonBoolean(subject, clip, 'and');
console.log('intersect results', intersect);

/*
intersect results [ [ [ 100, 90 ], [ 100, 100 ], [ 90, 100 ], [ 90, 90 ] ] ]
*/
```

# 许可证

[麻省理工学院](https://npmcn.com/package/2d-polygon-boolean/LICENSE.txt)

## 常见问题

### 2d-polygon-boolean 是什么？

在 2d 中执行任意多边形的布尔操作

### 如何安装 2d-polygon-boolean？

在项目目录运行 npm install 2d-polygon-boolean，或使用 pnpm add / yarn add / bun add。

### 2d-polygon-boolean 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/2d-polygon-boolean 是否存在。

### 2d-polygon-boolean 支持 ESM 还是 CommonJS？

以 CommonJS 形式发布，可以直接 require\(\)；在 ES Module 项目中也可以用 import 引入（Node\.js 会把 module\.exports 作为默认导出）。

### 2d-polygon-boolean 可以商用吗？

2d-polygon-boolean 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### 2d-polygon-boolean 的下载量有多少？

根据 npm 官方下载统计，2d-polygon-boolean 在 2026/10/04 – 2026/11/02 这 30 天内被下载 10,190 次，日均约 340 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### 2d-polygon-boolean 还在维护吗？

最新版本 1\.0\.1 发布于 2015/06/05（11 年前）；至今共发布 2 个版本，其中过去 12 个月发布了 0 个；首次发布于 2014/12/18。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

