Change size when collided
onColide=(e)=>{
(e.other.size(0))>0.5?{
e.other.size = e.other.size * 0.5
}:{
e.other.size = [2.0,1.0]
}
}
回転するmany Rectangle
for(10, (m) => { for(7, (n) =>{
scene.camera.zoom=60;
mm=App.mousePos;
scene.addBox({
pos := [ mm(0)*m, 3*n +3];
size := [2.0,1.0];
color=[0,0,0,1];
postStep=(e)=>{
(sim.tick % 3) == 0 ? {
e.this.angle = e.this.angle + 0.5
} : {}
}
})})}
);
rectangle with hinge and pen
Scene.addBox({
pos:=[0,3];
size=[0.1,3];
color=[1,1,1,1]; //white
geomID=1
}); //pos=[x,y] , size=[w,h]
Scene.addHinge({
size=0.1;
geom0 = 1; //必要
geom0pos = [0, 1.4];
motor = true;
motorSpeed = 1.0;
ccw = false; //回転方向 左回り
geom1=0; //いる
});
Scene.addBox({
pos:=[0,1];
size=[0.1,1.2];
color=[1,0,1,1]; //white
geomID=2
});
Scene.addHinge({
size=0.1;
geom0 = 2; //必要
geom0pos = [0, 0.5];
motor = true;
motorSpeed = 1.0;
ccw = false; //回転方向 左回り
geom1 = 1;
});
scene.addPen({
geom0 = 2;
pos := [0,0.47];
size := 0.05;
color=[1,1,0,1]; //white
fadeTime=10;
});
hinge
scene.camera.pan=[3.4,5];
scene.camera.zoom=69;
for(8, (m) => {
for(8, (n) =>{
scene.addBox({
pos = [ (1+0.1)*m, (1+0.2)*n+1 ]; //位置
size = [1,0.15 ]; //大きさ
color=[0,0,0,1];
geomID=1;
});
scene.addHinge({
size=0.15;
geom0 = 1; //必要
geom0pos = [0, 0];
motor = true;
motorSpeed = 3;
ccw = true; //回転方向 右回り
geom1 = 0;
//geom1pos = [ (1+0.1)*m, (1+0.2)*n+1 ];
});
});
});