You're not tryng to get the imaginary part of a number. You are trying to get the imaginary part of an expression. Let's say we define your expression to be equivalent to eq:
eq==(2 + 4 I) Cos[0.0628319 z] + (2 - I) Sin[0.0628319 z])/
((1 + 2 I) Cos[0.0628319 z] + (4 + 2 I) Sin[0.0628319 z])
Solving the above for z gives 4 solutions. Lets say we take one of them and try a full simplify on it. We would get a fraction whose denominator has a real and an imaginary part. (I'm working via the cloud so I'll paste the result as InputForm:
(20.816270607258474 - 2.3058885477431663*I)*eq)/
Sqrt[(159. + 288.*I) + eq*((-392. + 16.*I) + 481.*eq)]]
This expression cannot be split between the real and imaginary parts because they are intertwined. Mathematica would give you a nice z=a+b*I but it can't. Therefore it uses Im[...] because it cannot decompose it any further.
Try assigning value ranges for eq and finding the limits on z for the different values. Do bear in mind that eq is by definition a complex number too.