But this only sets the Z rotation (as is probably to be expected). I can not find a property or function that can set the rotation over more than one (for instance the X and Y Axis).
Any combination of rotations can be always “combined” into one rotation in 3D around an arbitrary axis. To do this, you can use quaternions, from Castle Game Engine: CastleQuaternions unit. Multiplying 2 quaternions effectively means “combine these 2 rotations”. So like this:
Geometric interpretation: If these are unit quaternions representing rotations, multiplying them calculates one rotation that has the same effect as rotating by Q2 and then by Q1.