博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
go语言生成一张正弦图
阅读量:4934 次
发布时间:2019-06-11

本文共 891 字,大约阅读时间需要 2 分钟。

先看效果:

package mainimport (    "image"    "image/color"    "image/png"    "log"    "math"    "os")func main() {    // 图片大小    const size = 300    // 根据给定大小创建灰度图    pic := image.NewGray(image.Rect(0, 0, size, size))    // 遍历每个像素    for x := 0; x < size; x++ {        for y := 0; y < size; y++ {            // 填充为白色            pic.SetGray(x, y, color.Gray{255})        }    }    // 从0到最大像素生成x坐标    for x := 0; x < size; x++ {        // 让sin的值的范围在0~2Pi之间        s := float64(x) * 2 * math.Pi / size        // sin的幅度为一半的像素。向下偏移一半像素并翻转        y := size/2 - math.Sin(s)*size/2        // 用黑色绘制sin轨迹        pic.SetGray(x, int(y), color.Gray{0})    }    // 创建文件               file, err := os.Create("sin.png")    if err != nil {        log.Fatal(err)    }    // 使用png格式将数据写入文件    png.Encode(file, pic) //将image信息写入文件中    // 关闭文件    file.Close()}

  

 

转载于:https://www.cnblogs.com/muamaker/p/10766564.html

你可能感兴趣的文章
把json的字符串变为json对象
查看>>
静态页生成
查看>>
进度总结
查看>>
Python模块之: ConfigParser 配置文件读取
查看>>
day 6
查看>>
树莓派3B 安装微雪LCD5inch显示器(包含软键盘)
查看>>
两道递推公式题的解题报告
查看>>
一步步学习SPD2010--第七章节--使用BCS业务连接服务(1)--什么是BCS
查看>>
Atiit 常见功能 常用功能与模块的最快速解决方案
查看>>
JS高级学习笔记(5)之 事件
查看>>
记一次数据库死锁
查看>>
linux-网络数据包抓取-tcpdump
查看>>
web服务器
查看>>
EV: Workaround to Allow Only One Instance or Window of outlook
查看>>
数据校验,
查看>>
IntelliJ IDEA完美解决tomcat8+乱码问题
查看>>
GDI+ ColorMatrix的完全揭秘
查看>>
破解电信光猫华为HG8120C关闭路由功能方法
查看>>
在Qt示例项目的C ++ / QML源中的//! [0]的含义是什么?
查看>>
【智能家居篇】wifi网络接入原理(上)——扫描Scanning
查看>>