Better robustness using float32 and extra checks
Fix polygon invalid test when splitting
Only use unique planes of split