You already gave yourself the answer: in your posted table the manual says:



And here my code example. Try to move the box with W,A,S,D and hit the other box. You will see the difference:

Code:
#include <acknex.h>
#include <default.c>

#define C_TRACE
//#define C_ROTATE

void main()
{
	video_mode=9;
	fps_max=60;
	
	level_load("");
	
	ENTITY* ent_tmp1=ent_create(CUBE_MDL,vector(30,0,0),NULL);
	vec_set(ent_tmp1.scale_x,vector(8,4,0.5));
	c_setminmax(ent_tmp1);
	
	ENTITY* ent_tmp3=ent_create(CUBE_MDL,vector(0,30,50),NULL);
	vec_set(ent_tmp3.scale_x,vector(4,2,1));
	ent_tmp3.pan=90;
	ent_tmp3.tilt=200;
	c_setminmax(ent_tmp3);
	
	camera.x=-250;
	camera.z=25;
	
	//c_trace method -> using ellipsoid
	#ifdef C_TRACE
		while(1)
		{
			
			VECTOR vec_tmp1,vec_tmp2; 
			
			vec_set(vec_tmp1,vector(0,(key_a-key_d)*time_step*2,(key_w-key_s)*time_step*2));
			
			vec_set(vec_tmp2,ent_tmp3.x);
			vec_add(vec_tmp2,vec_tmp1);
			
			me=ent_tmp3;
			result=c_trace(ent_tmp3.x,vec_tmp2,USE_BOX|IGNORE_ME);
			if(result==0)
			{
				vec_add(ent_tmp3.x,vec_tmp1);
			}

			wait(1);	
		}
	#endif
	
	//c__rotate method -> using box method
	#ifdef C_ROTATE
		while(1)
		{
			var ent_tmp3_x_=ent_tmp3.y;
			var ent_tmp3_z_=ent_tmp3.z;
			ent_tmp3.y+=(key_a-key_d)*time_step*2;
			ent_tmp3.z+=(key_w-key_s)*time_step*2;
			
			result=c_rotate(ent_tmp3,vector(1,1,1),0);
			if(result<=0)
			{
				ent_tmp3.y=ent_tmp3_x_;
				ent_tmp3.z=ent_tmp3_z_;
			}
			else
			{
				vec_sub(ent_tmp3.pan,vector(1,1,1));
			}

			wait(1);	
		}
	#endif
}