GitRead 中文社区
首页趋势排行榜原创文章严选周刊
更多资源
新手训练营
精选专题热门话题GitHub 文档资源精选实战指南

Clipper2

Polygon Clipping, Offsetting & Triangulation in C++, C# and Delphi

  • 语言C++
  • 默认分支main
  • 大小11.9 MB
  • 更新1 周前
  • Issues23
在 GitHub 打开
avatarAngusJohnson

项目介绍

AngusJohnson/Clipper2 是一个托管在 GitHub 上的开源项目,主要使用 C++ 编写,采用 Boost Software License 1.0 许可证,目前获得 2.5k 个 Star、469 次 Fork。

仓库全名
AngusJohnson/Clipper2

README 摘要

Clipper2 The future of Clipper development is now here. The bad news: As of now I’m retiring from Clipper2 development. While this Clipper2 repository will remain, it will not be updated. So please don't post new Issues or Pull Requests here. The good news: I’m delighted to announce that Seth Hillibrand has agreed to take over Clipper maintenance and development, and this will continue at the link above. The long…

完整内容见 GitHub 原始 README 或本页 。

常见问题

Clipper2 用什么语言开发?

主要使用 C++ 编写,采用 Boost Software License 1.0 许可证,目前有 2.5k 个 Star。

Clipper2 可以免费商用吗?

仓库标注的许可证为 Boost Software License 1.0,商用前请先阅读仓库 LICENSE 文件确认授权范围。

如何获取 Clipper2 的源码?

可以直接克隆仓库:git clone https://github.com/AngusJohnson/Clipper2.git,默认分支为 main;安装与运行步骤见仓库 README。

Clipper2 最近还在维护吗?

仓库最近一次更新为 1 周前,当前有 23 个未关闭 Issue;Star 数为 2.5k,可作为社区活跃度的参考。

本页面展示项目元数据与原始 README,GitRead 中文社区 编辑团队负责选题收录。

相关仓库

tensorflow/tensorflow avatar
tensorflowtensorflow
1 小时前
201.4k
77.8k
3.4k

面向所有人的开源机器学习框架

deep-learningdeep-neural-networksdistributed+5
C++
1.4 GB
0
详情
ggml-org/llama.cpp avatar
llama.cppggml-org
1 小时前
133.9k
21.3k
722

C/C++ 中的大语言模型推理

ggml
C++
481.0 MB
3
详情
react/react-native avatar
react-nativereact
1 小时前
126.9k
24.7k
743

使用 React 构建原生应用的框架

androidapp-frameworkcross-platform+5
C++
971.6 MB
0
详情
electron/electron avatar
electronelectron
1 小时前
123.8k
17.6k
616

使用 JavaScript、HTML 和 CSS 构建跨平台桌面应用

electronjavascriptc-plus-plus+6
C++
228.2 MB
0
详情
godotengine/godot avatar
godotgodotengine
23 小时前
119.9k
27.4k
19.0k

Godot Engine – 多平台 2D 和 3D 游戏引擎

game-developmentgame-enginegamedev+4
C++
1.8 GB
0
详情
microsoft/terminal avatar
terminalmicrosoft
17 小时前
105.4k
9.6k
1.7k

新的 Windows Terminal 和原始的 Windows 控制台主机,全都集中在这里!

cmdcommand-lineconsole+8
C++
177.5 MB
0
详情
opencv/opencv avatar
opencvopencv
4 小时前
91.5k
57.1k
2.9k

开源计算机视觉库

opencvc-plus-pluscomputer-vision+2
C++
558.2 MB
0
详情
bitcoin/bitcoin avatar
bitcoinbitcoin
1 小时前
90.6k
30.0k
345

Bitcoin Core 集成/暂存树

bitcoinc-plus-pluscryptocurrency+2
C++
324.6 MB
0
详情

关于

algorithmboolean-operationsclippingclipping-algorithmcppcsharpdelphigeometryinflateoffsettingpascalpolygonpolygon-booleanpolygon-clippingpolygon-clipping-algorithmpolygon-intersectionpolygon-union
  • Boost Software License 1.0
  • 2.5k Stars
  • 469 Forks
  • 59 Watching

简要分析

热度分
3515
价值分
1656
活跃状态
归档
GitHub

语言占比

C
C#
C++
CMake
Pascal

Release

  • Clipper2 32bit & 64bit DLLs (v 2.0.1)2025年12月20日
  • Clipper2 ver. 2.0.12025年12月20日
  • Clipper2 32bit & 64bit DLLs (v 1.5.4)2025年6月6日
  • Clipper2 ver. 1.5.42025年6月6日
  • Clipper2 32bit & 64bit DLLs (v 1.5.3)2025年5月11日

贡献者

AngusJohnsonAngusJohnsonreunanenreunanenphilstopfordphilstopforddamiandixondamiandixonSebastianDirksSebastianDirkssergey-239sergey-239sethhillbrandsethhillbrandDJGosnellDJGosnellJingDictJingDictmmassingmmassingcwangbhcwangbhlederernclederernc

Clipper2

The future of Clipper development is now here.

The bad news: As of now I’m retiring from Clipper2 development. While this Clipper2 repository will remain, it will not be updated. So please don’t post new Issues or Pull Requests here.
The good news: I’m delighted to announce that Seth Hillibrand has agreed to take over Clipper maintenance and development, and this will continue at the link above.

The long version:
Software development has been a wonderful hobby of mine for almost 50 years. I started Clipper more than 15 years ago, and it has been 15 years of fun and challenge. But over the last few months I’ve come to realise that the challenge has gone, and it has just become a responsibility.
So I’m passing the baton. And I’m delighted to announce Seth Hillibrand has agreed to pick it up and will be taking over Clipper’s ongoing maintenance and development. Seth is the founder and lead developer of KiCad Services, and has used Clipper almost from the beginning. I’m extremely confident that he has the skills and temperament to see Clipper continue to improve. But Clipper will, however, become a C++ only library; it will be up to third parties to translate Clipper into other languages, or to use it as a dynamic linked library.

Transitioning to the new Clipper2 repository:
I suggest that those who have contributed Pull Requests do so again here.
And I suggest that those who have raised Issues also resubmit them here or, even better, consider converting them into Pull Requests if you are able to do the debugging.

Finally, as I said above, creating and developing Clipper has been a lot of fun. I have learned so much from you, the library’s users, and from your code contributions. And that has been enormously encouraging. Thank you.


A Polygon Clipping, Offsetting library (in C++, C# & Delphi)

GitHub Actions C++ status C# License Nuget documentation

The Clipper2 library performs intersection, union, difference and XOR boolean operations on both simple and complex polygons. It also performs polygon offsetting. This is a major update of my original Clipper library that was written about 15 years ago. That library I’m now calling Clipper1, and while it still works very well, Clipper2 is just better.

Compilers

Clipper2 can be compiled using any one of three supported programming languages: C++, or C#, or Delphi Pascal. The library can also be accessed from other languages by dynamically linking to exported functions in the C++ compiled Clipper2 library. (The C++ compiled code is measurably faster so, where performance is critical, even C# and Delphi developers may prefer this approach in application development.)

Lang. Requirements
C++: Requires C++17, or
C#: The library uses Standard Library 2.0 but the sample code uses .NET6, or
Delphi: Compiles with any version of Delphi from version 7 to current.

Documentation

Extensive HTML documentation

Examples

Clipping

C++ https://github.com/AngusJohnson/Clipper2/blob/fa7add77364eb3877dd1b8caf9b3cbd5486347f6/CPP/Examples/SimpleClipping/SimpleClipping.cpp#L29-L34
C# https://github.com/AngusJohnson/Clipper2/blob/fa7add77364eb3877dd1b8caf9b3cbd5486347f6/CSharp/Clipper2Lib.Examples/ConsoleDemo/Main.cs#L112-L116
Delphi https://github.com/AngusJohnson/Clipper2/blob/fa7add77364eb3877dd1b8caf9b3cbd5486347f6/Delphi/Examples/Example1/Example1.dpr#L21-L26

clipperB

Inflating (aka Offsetting)

C++ https://github.com/AngusJohnson/Clipper2/blob/fa7add77364eb3877dd1b8caf9b3cbd5486347f6/CPP/Examples/Inflate/Inflate.cpp#L36-L47
C# https://github.com/AngusJohnson/Clipper2/blob/fa7add77364eb3877dd1b8caf9b3cbd5486347f6/CSharp/Clipper2Lib.Examples/InflateDemo/Main.cs#L89-L100
Delphi https://github.com/AngusJohnson/Clipper2/blob/fa7add77364eb3877dd1b8caf9b3cbd5486347f6/Delphi/Examples/Example2/Example2.dpr#L20-L31

rabbit rabbit_offset


Ports to other languages

lang. link
golang https://github.com/epit3d/goclipper2
Haxe https://github.com/jeremyfa/Clipper2/tree/main/Haxe
Java https://github.com/micycle1/Clipper2-java/
Kotlin https://github.com/Monkey-Maestro/clipper2-kotlin
Lua https://github.com/Ark223/Clipper2-Lua
Rust https://github.com/larsbrubaker/clipper2-rust
Swift https://github.com/zyunlongz/clipper2-swift
TypeScript https://github.com/countertype/clipper2-ts
WASM https://github.com/ErikSom/Clipper2-WASM/

评论

登录 后发表评论
暂无评论
GitRead 中文社区
深度解读 · 趋势洞察 · 价值精选

关于

关于我们联系我们编辑准则收录标准赞赏人员

发现

技术趋势新手训练营资源精选实战指南精选专题热门话题GitHub 文档

条款

隐私政策服务条款网站地图
26.9万收录项目
5.8万中文话题
155精选专题
发现技术价值,连接开源智慧
© 2026 GitRead · GitHub 中文社区 本站与 GitHub, Inc. 无隶属关系;GitHub 是 GitHub, Inc. 的商标。