(七)用Texture2d画图

在unity里面
 
 
class CreatePic{ [UnityEditor.MenuItem("X/create pic1")] 
public static void CreatePic1()
{ 
const int radius = 128; 
Texture2D t2d = new Texture2D(radius * 2, radius * 2); 
for (int i = 0; i < t2d.width; i++)
for (int j = 0; j < t2d.height; j++) 
{ //根据勾股定理,判断点在圆内还是圆外 
if ((i - radius) * (i - radius) + (j - radius) * (j - radius) <= radius * radius)
{ // 如果在圆内,则令坐标的颜色为白色 
t2d.SetPixel(i, j, Color.white); 
} 
else 
{ //如果在圆外,则不给圆颜色(这里表示的就是透明通道) 
t2d.SetPixel(i, j, Color.clear); 
} 
} 
Texture2D t2d1 = new Texture2D(160, 90); 
for (int i = 0; i < 160; i++) 
{ 
for (int j = 0; j < 90; j++) 
{ //画出矩形,长为160宽为90的矩形; 
t2d1.SetPixel(i, j, Color.blue); 
} 
} 
t2d.Apply(); 
t2d1.Apply(); 
var bytes = t2d.EncodeToPNG(); 
var bytes1 = t2d1.EncodeToJPG(); 
System.IO.File.WriteAllBytes("pic1.png", bytes); 
System.IO.File.WriteAllBytes("pic2.jpg", bytes1); 
}
}



  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值