Let’s supposed we’ve got a ring with inner radius R2 and outer radius R1. According documentation:
Inner radius of the ring expressed as a ratio of the ring's width.For instance, if innerRadiusRatio=9, then the inner radius equals the ring's width divided by 9
As I understand this means that innerRadiusRatio = 2*R1 / R2.
About thicknessRatio there is that:
Thickness of the ring expressed as a ratio of the ring's width. For instance, if thicknessRatio=3, then the thickness equals the ring's width divided by 3. So thicknessRatio = 2*R1 / (R1 - R2).
From this two equationі we can get this one: thicknessRatio*(1-2/innerRadiusRatio)=2 which means that there is a connection between thicknessRatio and innerRadiusRatio. But there is nothing about this connection in GradientDrawable class documentation. And it doesn’t seem that there is any connections between them as I can set thicknessRatio and innerRadiusRatio which doesn’t satisfying last equation.
So tell me please where I’m wrong in my consideration or what are this parameters really responsible for?
Ratios are a comparison of two numbers, so the above two equations can be rewritten as
Ratio1 = InnerRadius : Ring Width (where Ratio1 = InnerRadiusRatio)
Ratio2 = Thickness : Ring Width (where Ratio2 = ThicknessRatio)
Which means…
Ring Width = Ratio1 x Inner Radius = Ratio2 x Thickness
The “2” appeared since you added it into your equation. The only common denominator in all equation is “Ring Width”. Trying it out with real numbers helps too.