M367    letterD.mws 

> restart;
 

> with(plots): with(plottools):
 

Example in Cubic Bezier Curve Construction 

> b:= j-> binomial(3,j)*x^j*(1-x)^(3-j);
 

`:=`(b, proc (j) options operator, arrow; `*`(binomial(3, j), `*`(`^`(x, j), `*`(`^`(`+`(1, `-`(x)), `+`(3, `-`(j)))))) end proc) (1)
 

Plotting the letter D 

> d1x:= [-0.2,0,0.7,1.0]: d1y:= [2,2,2,2]: #top flat part
 

> d2x:= [1.0,1.3,2,2]: d2y:= [2,2,1.8,1]: #top right arch
 

> d4x:= [-0.2, -0.1, 0, 0]: d4y:=[2,2,1.8,1.7]:#top left arch
 

> d6x:= [0,0,0,0]: d6y:= [1.7,1.2, 0.8, 0.3]: #outer vert line
 

> d8x:= [0.2,0.2,0.2,0.2]: d8y:= [0.3,0.7,1.2,1.7]: #inner vert line
 

> d9x:= [0.2,0.3, 0.5,0.8]: d9y:=[1.7,1.8,1.85,1.85]:#inner top arch
 

> d10x:=[0.8,1.1,1.6,1.6]: d10y:=[1.85,1.85, 1.5,1]:#inner right arch
 

>
 

> T1:= seq([d1x[k],d1y[k]], k=1..4):
 

> T2:= seq([d2x[k],d2y[k]], k=1..4):
 

> T4:= seq([d4x[k],d4y[k]], k=1..4):
 

> T6:= seq([d6x[k],d6y[k]], k=1..4):
 

> T8:= seq([d8x[k],d8y[k]], k=1..4):
 

> T9:= seq([d9x[k],d9y[k]], k=1..4):
 

> T10:= seq([d10x[k],d10y[k]], k=1..4);
 

`:=`(T10, [.8, 1.85], [1.1, 1.85], [1.6, 1.5], [1.6, 1]) (2)
 

> pts:= plot([T1, T2, T4, T6, T8, T9, T10], style=point, symbol = box, scaling = constrained, color = blue):
 

> BT1:= evalm(sum(b(k-1)*T1[k], k=1..4)):
 

> BT2:= evalm(sum(b(k-1)*T2[k], k=1..4)):
 

> BT4:= evalm(sum(b(k-1)*T4[k], k=1..4)):
 

> BT6:= evalm(sum(b(k-1)*T6[k], k=1..4)):
 

> BT8:= evalm(sum(b(k-1)*T8[k], k=1..4)):
 

> BT9:= evalm(sum(b(k-1)*T9[k], k=1..4)):
 

> BT10:= evalm(sum(b(k-1)*T10[k], k=1..4)):
 

>
 

> CT1:= plot([BT1[1], BT1[2], x=0..1], color=orange):
 

> CT2:= plot([BT2[1], BT2[2], x=0..1], color= cyan):
 

> CT3:= plot([BT2[1], 2-BT2[2], x=0..1], color= cyan):#reflect of C2
 

> CT4:= plot([BT4[1], BT4[2], x=0..1], color= brown):
 

> CT5:= plot([BT4[1], 2-BT4[2], x=0..1], color= brown):#reflec. of C4
 

> CT6:= plot([BT6[1], BT6[2], x=0..1]):
 

> CT7:= plot([BT1[1], 2-BT1[2], x=0..1], color=orange):#reflect of C1
 

> CT8:= plot([BT8[1], BT8[2], x=0..1], color=red):
 

> CT9:= plot([BT9[1], BT9[2], x=0..1], color= blue):
 

> CT10:= plot([BT10[1], BT10[2], x=0..1], color=green):
 

> CT11:=plot([BT10[1], 2-BT10[2],x=0..1],color=green):#reflect of C10
 

> CT12:= plot([BT9[1], 2-BT9[2], x=0..1], color= blue):#relect of C9
 

> display({CT1,CT2,CT3,CT4,CT5,CT6,CT7,CT8,CT9,CT10,CT11,CT12, pts}, scaling=constrained, axes=none);
 

Plot_2d
 

>
 

>
 

>
 

>
 

>