我用画布在上面画了多个纹理。这些纹理是长方形,现在我想使用这些纹理与他们的部分不可缺少的,所以我可以绘制背景颜色背后的纹理有相同的纹理与不同的颜色,而不是添加相同的图片与不同的颜色。我尝试像这样添加Rects:
for(Coordinate c : ch.getVisibleCoords()) {
ShapeDrawable sD = new ShapeDrawable();
Rect r = new Rect(c.getxS(),
c.getyS(),
(sh.getScreenWidth()-c.getxS()-sh.getTSize()),
(sh.getScreenHeight()-c.getyS()-sh.getTSize()));
sD.setBounds(r);
textureColorRects.add(sD);
}
每个坐标代表一个纹理,xS和yS值是屏幕上的位置,例如,坐标11可以具有xS=0yS=0和21xS=48(48=texturesize)yS=0。我用ShapeDrawable和Rectangles本身尝试过,在第一种情况下,它将绘制所有相同颜色的东西,除了一条Y线,在另一种情况下,它将只绘制一些buggy shit。有没有其他的方法来做到这一点,或者我不明白如何设置这些矩形,我不知道左,上,右,下的东西是如何工作的。下面是剩下的代码,这样您就可以看到我是如何绘制ShapeDrawables的:
int i = 0;
for(Coordinate c : ch.getVisibleCoords()) {
ShapeDrawable sD = textureColorRects.get(i);
Paint color = new Paint();
color.setColor(c.getLandscape().getType().getColor());
color.setStyle(Paint.Style.FILL);
sD.getPaint().set(color);
sD.draw(canvas);
}
TextureColorRects
是一个包含所有ShapedRawables的列表。
非常感谢你的阅读。
我找到了一个解决方案这也是一个其他人也有的问题(只是很难找到)有点难理解rect
是如何工作的左、上、右和下的值像开头和ed点一样。例如,我想要一个大小为16*16的矩形,在屏幕上的点x=5y=18,所以我需要将右值设置为x+size(5+16),将底部设置为y+size(18+16)。lft和top可以设置为rect的左上边缘(开始位置)。
使用closePath()闭合图形 首先我们用上节课的方法绘制一个矩形。 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title></title> </head> <body> <!DOCTYPE html> <html lang="zh"> <head> <meta charset="UT
本节课通过绘制一个矩形边框效果,对WebGL整个渲染流程有一个简单认知。 学习建议 学习本节课,建议先结合注释看看案例源码,对于不熟悉的WebGL API可以在MDN搜索文档,不过刚开始学习,没必要去掌握每一个WebGL API,把主要精力放在理解WebGL的整个渲染流程上面,如果你能建立渲染管线的概念,自然对WebGL系统会有一个基本的认知。 源码体验测试 //类型数组构造函数Float32Ar
绘制矩形 点击菜单栏中的“绘制矩形”按钮可以绘制矩形,绘制矩形在数据下载的时候经常要用到,绘制矩形操作及信息与绘制面相同。 修改矩形 添加后可以使用“选中对象”后双击更改面的样式,也可右键“属性”修改线的属性信息。点击属性信息框下方的整体移动(单点修改)键对面进行位置的更改。在“空间信息”栏修改矩形的节点坐标后,需要注意的是修改完可能就不是标准矩形了,要调整。 删除矩形
绘制矩形 点击菜单栏中的“绘制矩形”按钮可以绘制矩形,绘制矩形在数据下载的时候经常要用到,绘制矩形操作及信息与绘制面相同。 修改矩形 添加后可以使用“选中对象”后双击更改面的样式,也可右键“属性”修改线的属性信息。点击属性信息框下方的整体移动(单点修改)键对面进行位置的更改。在“空间信息”栏修改矩形的节点坐标后,需要注意的是修改完可能就不是标准矩形了,要调整。 删除矩形
上一节,我们使用lineTo()方法绘制一个封闭的矩形。其实,canvas的API提供了rect()方法可以绘制矩形。rect()方法是路径方法,它会把指定的矩形添加到当前路径的子路径中。它只添加路径,绘制图形还是由stroke()或fill()方法完成。 除了rect()方法之外,Canvas 的API还提供了三个直接处理矩形的方法: fillRect(x, y, width, height)
本节,我们将学习如何绘制矩形,它也是HTML5的画布API唯一所提供的内置图形。矩形看上去可能不会让你感到兴奋,但是许多应用程序还是以某种方式在使用它,所以你也应该了解它。 图2-1 绘制矩形 绘制步骤 按照以下步骤,在画布的中央绘制一个简单的矩形: 1. 定义2D画布上下文: window.onload = function(){ var canvas = document.getEl