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

这篇博客介绍了如何使用golang的gg库进行2D图形绘制。首先,通过go get命令获取并安装gg库及其依赖。然后,通过示例代码展示了如何创建绘图上下文、设置颜色并绘制随机线条,最后将结果保存为PNG图片。
摘要由CSDN通过智能技术生成

此库叫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") //保存上下文为一张图片

}

有疑问加站长微信联系(非本文作者)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值