make-e-kill-r ( edge-ring: b-edge edge-face: b-edge -- edge: b-edge )


Vocabulary
euler.operators

Inputs
edge-ringa b-edge
edge-facea b-edge


Outputs
edgea b-edge


Definition


TYPED:: make-e-kill-r
( edge-ring: b-edge edge-face: b-edge -- edge: b-edge )
edge-ring face>> :> ring edge-face face>> :> face ring face
assert-ring-of edge-ring [ face >>face drop ] each-face-edge
edge-ring vertex>> edge-face make-edge
:> e1 edge-face vertex>> edge-ring make-edge
:> e2 ring face delete-ring ring b-rep get delete-face
e2 edge-face face-cw next-edge<<
e1 edge-ring face-cw next-edge<< e1 e2 opposite-edges e1 ;