MCPcopy Create free account
hub / github.com/AngusJohnson/Clipper2 / UpdateEdgeIntoAEL

Method UpdateEdgeIntoAEL

CSharp/Clipper2Lib/Clipper.Engine.cs:1506–1526  ·  view source on GitHub ↗
(Active ae)

Source from the content-addressed store, hash-verified

1504 }
1505
1506 [MethodImpl(MethodImplOptions.AggressiveInlining)]
1507 private void UpdateEdgeIntoAEL(Active ae)
1508 {
1509 ae.bot = ae.top;
1510 ae.vertexTop = NextVertex(ae);
1511 ae.top = ae.vertexTop!.pt;
1512 ae.curX = ae.bot.X;
1513 SetDx(ae);
1514
1515 if (IsJoined(ae)) Split(ae, ae.bot);
1516
1517 if (IsHorizontal(ae))
1518 {
1519 if (!IsOpen(ae)) TrimHorz(ae, PreserveCollinear);
1520 return;
1521 }
1522 InsertScanline(ae.top.Y);
1523
1524 CheckJoinLeft(ae, ae.bot);
1525 CheckJoinRight(ae, ae.bot, true); // (#500)
1526 }
1527
1528 [MethodImpl(MethodImplOptions.AggressiveInlining)]
1529 private static Active? FindEdgeWithMatchingLocMin(Active e)

Callers

nothing calls this directly

Calls 6

NextVertexFunction · 0.85
SetDxFunction · 0.85
IsJoinedFunction · 0.85
IsOpenFunction · 0.85
TrimHorzFunction · 0.85
IsHorizontalFunction · 0.50

Tested by

no test coverage detected