code for diagram

code for labeledarrow

> DD:=[-2,0]: BB:=[0,0]: CC:=[1,0]:AA:=[1,3]:
dotAA:=plottools[disk](AA,.02,color=black):
dotBB:=plottools[disk](BB,.02,color=black):
dotCC:=plottools[disk](CC,.02,color=black):
dotDD:=plottools[disk](DD,.02,color=black):
txt:=plots[textplot]({[AA[1]+.2,AA[2],`A`],
[BB[1],BB[2]-.2,`B`],[CC[1],CC[2]-.2,`C`],[DD[1],
DD[2]-.2,`D`],[.5*(AA[1]+CC[1])+.2,.5*(AA[2]+CC[2] ),
`b`]},font=[TIMES,BOLD,18]):
DDBBline:=labeledarrow(DD,BB,[.4,0,0],
`x - a`,[0,-.1],16,blue):
BBAAline:=labeledarrow(BB,AA,[.3,0,0],` `,[0,-.1],16,blue):
BBCCline:=labeledarrow(BB,CC,[.1,0,0],
`x `,[0,-.1],16,blue):
AACCdotline:=plot([[AA,CC]],linestyle=3,thickness=2):
plots[display]({txt,dotAA,dotBB,dotCC,
dotDD,DDBBline,BBAAline,BBCCline,AACCdotline},
scaling=constrained,axes=none);