Тут бы сразу проверку заскриптовать )
я полагаю, что он не такой простой по логике выйдет, мало того, что нужно определить, что везде не заходит деталь на деталь, но еще и при условии, что заходит, то указывать где именно. При сложных деталях это прям очень хитровыебанный алгоритм должен быть