To draw the solution:
Obtain the distance between the intersection of A & C and the intersection of C & D.
Obtain the distance between the intersection of B & D and the intersection of C & D.
Substract the first from the second, a postive value is the distance to move B & D down, a negative is the distance to move B & D up. Once moved, a fillet with R=0 will extend/trim lines A & B and they will be equal in length.
Command: '_dist Specify first point: _endp of Specify second point: _int of and
Distance = 408.3907, Angle in XY Plane = 315, Angle from XY Plane = 0
Delta X = 288.7758, Delta Y = -288.7758, Delta Z = 0.0000
Command: DIST Specify first point: _int of and Specify second point: _endp of
Distance = 509.1399, Angle in XY Plane = 90, Angle from XY Plane = 0
Delta X = 0.0000, Delta Y = 509.1399, Delta Z = 0.0000
Command: m MOVE
Select objects: Specify opposite corner: 2 found
Select objects:
Specify base point or [Displacement] <Displacement>: _endp of Specify second
point or <use first point as displacement>: @100.7492<270d
Command: f
FILLET
Current settings: Mode = TRIM, Radius = 0.0000
Select first object or [Undo/Polyline/Radius/Trim/Multiple]:
Select second object or shift-select to apply corner:
Command: _list
Select objects: 1 found
Select objects: 1 found, 2 total
Select objects:
LINE Layer: "0"
Space: Model space
Handle = daf
from point, X=4899.1352 Y=1960.9711 Z= 0.0000
to point, X=5018.7501 Y=2080.5860 Z= 0.0000
Length = 169.1610, Angle in XY Plane = 45
Delta X = 119.6149, Delta Y = 119.6149, Delta Z = 0.0000
LINE Layer: "0"
Space: Model space
Handle = dab
from point, X=5187.9110 Y=2080.5860 Z= 0.0000
to point, X=5018.7501 Y=2080.5860 Z= 0.0000
Length = 169.1609, Angle in XY Plane = 180
Delta X =-169.1609, Delta Y = 0.0000, Delta Z = 0.0000
There is a small difference in lengths due to rounding errors. But if this were done programtically these would be minimized further.