Newton Problem
Blitz3D Forums/Blitz3D Beginners Area/Newton Problem| 
 | ||
| Hey! Have a small problem with newton. The sample code is from the explosion. The origin of the explosion has the coordinates 0,0,0. How must I change the code so that the explosion can have different coordinates? 
	If (KeyHit(57));create explosion at (0,0,0)
		For p.phx = Each phx
     		;current position
			xx# = phBodyGetX(p\body)
			yy# = phBodyGetY(p\body)
			zz# = phBodyGetZ(p\body)
			dist2# = xx*xx+yy*yy+zz*zz
			;force
			power# = 1000.0
			fx# = power*xx/dist2
			fy# = power*yy/dist2
			fz# = power*zz/dist2
			phBodyAddForce(p\body,fx,fy,fz)
			;and torque
			power2# = 10000.0
			Torque# = power2/dist2
			phBodyAddTorque(p\body,Rnd(-Torque,Torque),Rnd(-Torque,Torque),Rnd(-Torque,Torque))
		Next
	EndIf
 | 
| 
 | ||
| Haven't tested this (and don't have time right now) but try subtracting the position you want the explosion to be at from the position of each body. EDIT: Tested it and it seems to work correctly. eg. ; For an explosion position at 10, 10, 10 xx# = phBodyGetX(p\body) - 10 yy# = phBodyGetY(p\body) - 10 zz# = phBodyGetZ(p\body) - 10 | 
| 
 | ||
| Thanks for your help, works exactly as I had imagined. GREAT!!! |