golang入门-- 一个2D的图形库学习

时间:2023-03-08 17:19:13

此库叫gg,源码在github。

1、获取源码并安装到本地:

首先要安装git (传送门)  :   https://git-scm.com/download/

然后就可以通过  go get 命令从git获得源码并安装(此处默认大家已安装go) :    在cmd 进入GOPATH目录,然后输入   :  go get  github.com/fogleman/gg

一会儿之后你就可以看到GOPATH上已经有了gg的源码,并且顺便把gg的依赖第三方库也下载了。

2、在src\github.com\fogleman\gg\examples 目录是gg作者写的例子。这里选一个出来练练手:

package main  

import (
"github.com/fogleman/gg"
"math/rand"
) func main() { const W = 1024
const H = 1024
dc := gg.NewContext(W, H) //上下文,含长和宽
dc.SetRGB(0, 0, 0) //设置当前色
dc.Clear() //清理一下上下文,下面开始画画 for i := 0; i < 1000; i++ { //画1000 条线,随机位置,长度,颜色和透明度
x1 := rand.Float64() * W
y1 := rand.Float64() * H
x2 := rand.Float64() * W
y2 := rand.Float64() * H r := rand.Float64()
g := rand.Float64()
b := rand.Float64()
a := rand.Float64()*0.5 + 0.5
w := rand.Float64()*4 + 1
dc.SetRGBA(r, g, b, a)
dc.SetLineWidth(w)
dc.DrawLine(x1, y1, x2, y2) //画线
dc.Stroke() //没有这句是不会把线最终画出来的
}
dc.SavePNG("lines.png") //保存上下文为一张图片
}