Этот трудный, потому что границы 1 пути могут полностью охватывать границы другого пути, но на самом деле не покрывают его содержимое, например: граница голубого пути (зеленая) больше границы черного пути, фактически не полностью закрывает его.
Один из способов полностью проверить, хотя это не было бы очень быстро: 1. создать новый графический контекст и заполнить фон с белым 2. заполняющего путем, который вы хотите быть заключены в черном 3. заполните путь, который вы хотите сделать, охватывая (рисованный путь пользователя) с белым 4. проверьте наличие любых черных пикселей.
Делать это будет оставить четыре угла квадрата, заполненного черным цветом, так что вы можете обнаружить, что, когда вы проверяете эти пиксели
Шаг 4 займет второе или два. вы можете ускорить его, проверяя каждый второй или четвертый пиксель или что-то в этом роде, или уменьшая размер создаваемого вами контекста.
До тех пор, пока вы делаете это только после того, как пользователь полностью закончит свой путь, вы, вероятно, сможете получить производительность достаточно быстро, но при этом во время рисования будет очень хорошо.