Fix zero-angle connection insertion#682
Conversation
|
@copilot explain why zero reference angles lead to invisible triangles in the old code. the triangle should still be emmitted |
Im alten Code ist das Dreieck nicht am RenderStep gescheitert, sondern schon vorher in |
|
@copilot which exact condition was failing in the old code for addTriangle? State the code and explain why |
The exact gate was: if (prevConnectedObject->getConnectedObject(prevBackIndex - 1) == connectedObject) {
if (object->id < connectedObject->id && object->id < prevConnectedObject->id) {
addTriangle(object, object->tempValue1.as_uint64, prevConnectedObject, connectedObject);
}
}The failing part was the outer equality check. In the old code, |
Agent-Logs-Url: https://github.com/chrxh/alien/sessions/3fc550f8-0c1d-45f8-91e1-1367a8dc132a Co-authored-by: chrxh <73127001+chrxh@users.noreply.github.com>
Agent-Logs-Url: https://github.com/chrxh/alien/sessions/3fc550f8-0c1d-45f8-91e1-1367a8dc132a Co-authored-by: chrxh <73127001+chrxh@users.noreply.github.com>
Agent-Logs-Url: https://github.com/chrxh/alien/sessions/4d630b49-4f05-4c79-ab00-b8fa4cf652dd Co-authored-by: chrxh <73127001+chrxh@users.noreply.github.com>
57020b0 to
5f158e9
Compare
Co-authored-by: chrxh <73127001+chrxh@users.noreply.github.com>
Zero-angle connections created during branch construction were inserted at the wrong connection index, leaving topology ordered unfavorably and causing triangle rendering artifacts. The fix moves the handling from rendering extraction back to connection insertion.
Connection insertion
0°as the end of the reference-angle loop (360°) when inserting by absolute angle.Rendering rollback
GeometryKernelsworkaround that skipped zero-angle spans during triangle/quad extraction.Regression coverage
0°absolute-angle connection before the reference connection.