Interval

Move any of the green points.

Blue lines are average length of all the vertical line lengths in the gray shaded interval shown.

Interval

Area = natural average × interval width

Natural Average =

Sum of all vertical line lengths ÷ number of vertical lines.

Note that the pink/purple line lengths are also natural averages of the horizontal line lengths depicted in the yellow shaded areas.

Show Quadrature in yellow shading.

q(x) = x^(3) / 12 - (4 * x^(2)) + (66 * x)
p(x) = ((0.5 * x) - 8)^(2) + 2
I = Point(xAxis)
L: (x(I), p(x(I)))
H = Point(xAxis)
mv: (q(x(I)) - q(x(H))) / (x(I) - x(H))
xsoln2: (32 - sqrt(1024 - (4 * (264 - (4 * mv))))) / 2
M: (xsoln2, 0)
K: (x(H), p(x(H)))
A = Point(xAxis)
B = Point(xAxis)
a: x = x(B)
b: x = x(A)
C = Point(b)
D = Point(a)
c = Segment(C, A)
d = Segment(D, B)
e = Segment(A, B)
f = Segment(C, D)
h = Line(C, D)
xcoord: ((c + d) / 2 - h(0)) / Slope[h]
i: x = xcoord
E = Intersect(i, f)
F = Intersect(i, e)
j = Segment(E, F)
G: ((x(B) - x(C)) / 2 + 1, 0)
J: (x(G), y(C))
g = Segment(J, G)
k = Segment(K, H)
l = Segment(L, I)
m = Segment(K, L)
xsoln1: (32 + sqrt(1024 - (4 * (264 - (4 * mv))))) / 2
N: (xsoln1, 0)
O: (x(M), p(x(M)))
n = Segment(O, M)
P: (xsoln1, p(xsoln1))
r = Segment(P, N)
Q: (xsoln1, 0)
R: (xsoln1, p(xsoln1))
s = Segment(R, Q)
S: (xsoln2, p(xsoln2))
U: (xsoln2, 0)
t = Segment(S, U)
a_1 = Segment(I, H)
poly1, c_1, d_1, b_1, a_2 = Polygon(C, D, B, A)
ar: (j * e)
ar1: (mv * a_1)
text4: "Area=" + (LaTeX[mv]) + "×" + (LaTeX[a_1]) + "=" + (LaTeX[ar1]) + ""
text5: "Area=" + (LaTeX[j]) + "×" + (LaTeX[e]) + "=" + (LaTeX[ar]) + ""
ar2: (g * e)
arint = Integral(p, x(H), x(I))
T: (x(E) - e / 2, y(E))
V: (x(E) + e / 2, y(E))
poly2, t_1, v, b_2, a_3 = Polygon(T, V, B, A)
W: (x(O) - (x(M) - x(H)), y(O))
Z: (x(O) + x(I) - x(M), y(O))
poly3, w, h_1, i_1, z = Polygon(W, H, I, Z)
o = true
text10: "Area=" + (LaTeX[c]) + "×" + (LaTeX[d]) + "=" + (LaTeX[ar2]) + ""