slide to rearrange the triangles

\text{Drag the points and observe the equivalent areas.}

$\text\mathbf{\(a\)}$

$\mathbf{\(b\)}$

$\mathbf{\(c\)}$

AnchorA = (-6.16483083292344, 0.16676397733374065)
PSlide = Point(Segment[AnchorA + (1, 10), AnchorA + (9, 10)])
slideBar = Segment(AnchorA, AnchorA + (x(PSlide) - x(AnchorA), 0))
PMove = Point(slideBar)
moveSlider: ((x(PMove) - x(AnchorA)) / (x(PSlide) - x(AnchorA)) * 10)
aDistance: x(PSlide) - x(AnchorA)
outlineBox = Polygon({AnchorA, AnchorA + (10, 0), AnchorA + (10, 10), AnchorA + (0, 10)})
PRight: Vertex[outlineBox, 3] - (0, aDistance)
PBottom: Vertex[outlineBox, 2] - (aDistance, 0)
PLeft: AnchorA + (0, aDistance)
Blue = (-5.32, 4.5)
Green = (-5.28, 3.68)
Orange = (-5.2, 2.86)
Red = (-5.32, 2.04)
Purple = (-5.34, 1.12)
Gray = (-5.34, 0.32)
GrayDark = (-5.36, -0.7)
triFixed = Polygon({Vertex[outlineBox, 4], PSlide, Vertex[outlineBox, 1] + (0, Distance[Vertex[outlineBox, 4], PSlide])})
P2: PLeft + (moveSlider / 10 * Vector[PLeft, (x(PSlide), y(PLeft))])
P3: PRight + (moveSlider / 10 * Vector[PRight, Vertex[outlineBox, 2]])
P4: PBottom + (moveSlider / 10 * Vector[PBottom, PLeft])
tri2 = Translate(Rotate[triFixed, pi / 2, PSlide], Vector[PSlide, P2])
tri3 = Translate(Rotate[triFixed, (3 * pi / 2), PSlide], Vector[PSlide, P3])
tri4 = Translate(Rotate[triFixed, pi, PSlide], Vector[PSlide, P4])
outlineBoxEdge: outlineBox
tabOrder: {questionText, PSlide, PMove}
cornersC = Zip(Vertex[A, 1], A, {triFixed, tri2, tri3, tri4})
cornersB = Zip(Vertex[A, 2], A, {triFixed, tri2, tri3, tri4})
cornersA = Zip(Vertex[A, 3], A, {triFixed, tri2, tri3, tri4})
tri4B = Segment(cornersA(4), cornersC(4))
tri4A = Segment(cornersB(4), cornersC(4))
tri4C = Segment(cornersA(4), cornersB(4))
triFixedA = Segment(cornersB(1), cornersC(1))
tri2A = Segment(cornersB(2), cornersC(2))
tri3A = Segment(cornersB(3), cornersC(3))
triFixedB = Segment(cornersA(1), cornersC(1))
tri2B = Segment(cornersA(2), cornersC(2))
tri3B = Segment(cornersA(3), cornersC(3))
triFixedC = Segment(cornersA(1), cornersB(1))
tri2C = Segment(cornersA(2), cornersB(2))
tri3C = Segment(cornersA(3), cornersB(3))
onboarding = true
pulsing = 0.69 (slider from 0 to 1)
pulsingSpeed: 8
pulsingCircle = circlePixels(PMove, 7 + (7 * pulsing), Corner[1], Corner[3], Corner[5])
onboardingX: 85
onboardingY: 448

Tool: circlePixels
circlePixels(A,pixelRadius,Corner1,Corner3,Corner5
Input: A, pixelRadius, Corner1, Corner3, Corner5
Output: newCircle

pointRadius: (pixelRadius / x(Corner5) * (x(Corner3) - x(Corner1)))
newCircle = Circle(A, pointRadius)