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


Vocabulary
euler.operators

Inputs
edgea b-edge


Outputs
edge-ringa b-edge


Definition


TYPED:: kill-e-make-r ( edge: b-edge -- edge-ring: b-edge )
b-rep get :> b-rep edge opposite-edge>> :> edge' edge'
next-edge>> :> edge-ring edge-ring opposite-edge>>
:> edge-ring' edge edge' assert-same-face
edge edge-ring assert-same-face
edge edge-ring' assert-different-faces
b-rep new-face :> ring ring edge face>> base-face>> add-ring
ring edge' edge subdivide-edge-cycle edge b-rep delete-edge
edge' b-rep delete-edge edge-ring ;