Octagons

spinny = 1.5009831567151235 rad (slider from 0 to 6.283185307179586, step °)
A = (1, 1)
B = (1.7558815630377298, 0.6817767692442162)
poly1, f, g, h, i, j, k, l, m, C, D, E, F, G, H = Polygon(A, B, 8)
centers: {A, B, C, D, E, F, G, H}
positioningOnCircles = 2 (slider from 1 to 10, step 1)
circleRadius = 0.096 (slider from 0 to 0.4, step 0.001)
c = Circle(B, circleRadius)
d = Circle(C, circleRadius)
e = Circle(D, circleRadius)
p = Circle(E, circleRadius)
q = Circle(F, circleRadius)
r = Circle(G, circleRadius)
s = Circle(H, circleRadius)
list1 = Sequence(Rotate[centers(k) + (0, circleRadius), (k * (360°) / positioningOnCircles) + spinny, centers(k)], k, 1, 8)
t = Circle(A, circleRadius)
α, β, γ, δ, ε, ζ, η, θ = Angle(poly1)
poly2 = Polygon(list1)
segments = Sequence(Sequence[Segment[list1(k), list1(k + j)], j, 1, 8], k, 1, 8)
ι: (360 * ° / positioningOnCircles)
text1: "(" + ι + ")"
I = Intersect(Element[Element[segments, 4], 4], Element[Element[segments, 3], 4])