Making a matrix-transformation support library

If you are going to make a library to support linear transformations of points in 3D, then you should implement a support class Matrix that has the following methods:

Signature of Method Purpose of Method
void identity() set to the identity
void set(int i, int j, double value) set a value
double get(int i, int j) get a value
void translate(double a, double b, double c) translate by (a,b,c)
void rotateX(double theta) rotate about X axis by θ radians
void rotateY(double theta) rotate about Y axis by θ radians
void rotateZ(double theta) rotate about Z axis by θ radians
void scale(double a, double b, double c) scale by (a,b,c) about the origin
void transform(double src[], double dst[]) transform point src[], put the result into dst[]