Private Sub B4XPage_Created (Root1 As B4XView)
Root = Root1
cv.Initialize(Root)
drawDottedLine(100, 500, 300, 100, xui.Color_Black, 2dip, 10dip)
End Sub
Private Sub drawDottedLine(x1 As Float, y1 As Float, x2 As Float, y2 As Float, foreColor As Int, lineWidth As Int, segmentSize As Int)
Dim lineLength As Float = Sqrt((x1 - x2) * (x1 - x2) + (y1 - y2) * (y1 - y2))
Dim nSegments As Int = (lineLength + .5 * segmentSize) / (1.5 * segmentSize)
Dim fract As Float = (lineLength + .5 * segmentSize) / lineLength
Dim xIncr As Float = fract * (x2 - x1) / nSegments
Dim xIncrLine As Float = .6667 * xIncr
Dim yIncr As Float = fract * (y2 - y1) / nSegments
Dim yIncrLine As Float = .6667 * yIncr
For i = 0 To nSegments - 1
Dim xx1 As Float = x1 + i * xIncr
Dim yy1 As Float = y1 + i * yIncr
Dim xx2 As Float = xx1 + xIncrLine
Dim yy2 As Float = yy1 + yIncrLine
If i = nSegments - 1 Then
cv.DrawLine(xx1, yy1, x2, y2, foreColor, lineWidth)
Else
cv.DrawLine(xx1, yy1, xx2, yy2, foreColor, lineWidth)
End If
Next
End Sub