使用Matter.js物理引擎创建的几何体,使用默认参数时只有一个外框,如果需要显示一个填充了某种颜色的几何体,或改变外框颜色、窗口背景色等,就要进行相关设置。
设置显示窗口的背景色,需要使用带参数的Render.create()来创建:
var render = Render.create({
canvas: container,
engine: engine,
options: {
width: width,
height: height,
showAngleIndicator: false,
wireframes: false,
background :"#33ee33",
}
});
其中,container为Canvas的id属性值,showAngleIndicator表示是否显示一个表示物体角度的横线,background就是显示窗口的背景色。通过设置background属性值就可以改变背景色。
如果要设置创建几何体的颜色,也需要设置其中的参数。比如创建一个圆形物体:
var ball = Bodies.circle(x, y, r, bodyOptions);
其中x、y为圆形的圆心坐标x、y值,r为圆形的半径,后面有一个bodyOptions参数,这个参数是个obj,其中有多个参数值。
var bodyOptions = {
density:0.2,
frictionAir: 0,
friction: 0.4,
restitution: 0.95,
render: {
strokeStyle: "#eeeeee",
fillStyle: "#ff3333",
lineWidth: 1
}
};
前面几个参数是设置物体的密度、空气阻尼、摩擦系数、弹性系数等,后面的render中则设置各种渲染属性,strokeStyle为外框颜色,fillStyle为填充颜色,lineWidth为线宽。
可以这样一次设置多个bodyOptions项,也可以只设置其中的一项:
bodyOptions.render.fillStyle="#3333ff";
这样设置后,只改变了其中的填充颜色,而其他参数则保持不变。