import java.math.*; import wildtangent.webdriver.*; public class MathMethods { float Pi=3.141592653f; Main Parent; public void init(Main ParentClass){ Parent=ParentClass; } public float camDistance3D(float X2, float Y2, float Z2){ return((float)Math.sqrt(((Parent.CamAbsoluteX - X2)*(Parent.CamAbsoluteX - X2))+((Parent.CamAbsoluteY - Y2)*(Parent.CamAbsoluteY - Y2)) + ((Parent.CamAbsoluteZ - Z2)*(Parent.CamAbsoluteZ - Z2)))); } public float posToAngle(float x1,float x2,float y1,float y2){ float finalangle = radiansToDegrees((float)Math.acos(((y1-y2))/(Math.sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2))))); if(x1 < x2){ finalangle = (float)360-finalangle; } if(y1 < y2){ finalangle = (float)360-finalangle; } return finalangle; } public float radiansToDegrees(float Radians){ float Degrees = Radians * (180 / Pi); return (Degrees); } public float degreesToRadians(float D){ float Radians = Pi * D / 180; return (Radians); } public float distance3D(float X1,float Y1,float Z1,float X2,float Y2,float Z2){ return((float)Math.sqrt( ((X1 - X2)*(X1 - X2)) + ((Y1 - Y2)*(Y1 - Y2)) + ((Z1 - Z2)*(Z1 - Z2)) ) ); } public void orientToCamera(WTContainer orientObject){ orientObject.setOrientationVector(Parent.CamForwardX,Parent.CamForwardY,Parent.CamForwardZ,Parent.CamUpX,Parent.CamUpY,Parent.CamUpZ); } }