Overview

!!! IMPORTANT !!!

!!! MOVED TO: http://bitbucket.org/akavel/polyclip-go !!!

As of Go version "Go 1 RC1" (March 2012), projects are not allowed to have names ending ".go", so this project was moved to: http://bitbucket.org/akavel/polyclip-go - please update your bookmarks.

Your imports shall need only small change - from:

"bitbucket.org/akavel/polyclip.go" // wrong now

to:

"bitbucket.org/akavel/polyclip-go" // OK!

About

Library polyclip.go is a pure Go, MIT-licensed implementation of an algorithm for Boolean operations on 2D polygons (invented by F. Martínez, A.J. Rueda, F.R. Feito) -- that is, for calculation of polygon intersection, union, difference and xor.

The original paper describes the algorithm as performing in time O((n+k) log n), where n is number of all edges of all polygons in operation, and k is number of intersections of all polygon edges.

Example

PLEASE SEE NEW LOCATION: http://bitbucket.org/akavel/polyclip-go