Challenge

Week - 7 - Checking and correcting the edges

AIM: To wirte a program to correcting and checking the edges.

PROCEDURE:

CODE:

#Display set to transperant mode
*setdisplayattributes 4 1

#Previewing equivalence
*createmark elements 1 "displayed"
*equivalence elements 1 0.01 0 0 0

#saving the equivalence node.
*createmark elements 1 "displayed"
*equivalence elements 1 0.01 3 0 0

#Retrieving the equivalence nodes
*createmark nodes 1
*nodemarkaddtempmark 1

#Finding free edges
*createmark elements 1 "displayed"
*findedges1 elements 1 0 0 0 30

#Renaming Free edges
*startnotehistorystate {Renamed Components from "^edges" to "Free Edges"}
*setvalue comps name=^edges name={Free Edges}

#Finding T-edges:
*createmark elements 1 "displayed"
*findedges1 elements 1 1 0 0 30

#Renaming T-edges
*startnotehistorystate {Renamed Components from "^edges" to "T edges"}
*setvalue comps name=^edges name={T edges}

#Changing Color for T edges
*createmark components 1 "T edges"
*setvalue comps mark=1 color=#FFFF00
*clearmark components 1

#Changing the display
*applydisplayattributes 4 1
*setcomponentdisplayattributes "T edges" 4 1
*setcomponentdisplayattributes "Free Edges" 4 1
*setcomponentdisplayattributes "T edges" 2 1
*setcomponentdisplayattributes "Free Edges" 2 1

#To delete the Edges
*clearmark components 1
*createmark components 1 "Free Edges" "T edges"
*deletemark components 1

#To get back to normal display
*setdisplayattributes 2 0

Now next is to add this on the widget:

# Setting up the window:
set a .window
catch {destroy $a}
toplevel $a -class TopLevel
wm title $a "EDGES"
wm geometry $a 220x200+100+200; update
wm resizable $a 0 0
wm deiconify $a

# Adding procedure 1
proc FREE {} {
*setdisplayattributes 4 1

*createmark elements 1 "displayed"
*equivalence elements 1 0.01 0 0 0

*createmark elements 1 "displayed"
*equivalence elements 1 0.01 3 0 0

*createmark nodes 1
*nodemarkaddtempmark 1

*createmark elements 1 "displayed"
*findedges1 elements 1 0 0 0 30

*startnotehistorystate {Renamed Components from "^edges" to "Free Edges"}
*setvalue comps name=^edges name={Free Edges}

*createmark elements 1 "displayed"
*findedges1 elements 1 1 0 0 30

*startnotehistorystate {Renamed Components from "^edges" to "T edges"}
*setvalue comps name=^edges name={T edges}

*createmark components 1 "T edges"
*setvalue comps mark=1 color=#FFFF00
*clearmark components 1

*applydisplayattributes 4 1
*setcomponentdisplayattributes "T edges" 4 1
*setcomponentdisplayattributes "Free Edges" 4 1
*setcomponentdisplayattributes "T edges" 2 1
*setcomponentdisplayattributes "Free Edges" 2 1
}

#Creating button 1button $a.01 -text "FREE EDGES" -command {FREE} -bg red -font {arial 10 } ; place $a.01 -x 60 -y 40 -width 100 -height 30

#Adding procedure 2

proc off {} {
*clearmark components 1
*createmark components 1 "Free Edges" "T edges"
*deletemark components 1


*setdisplayattributes 2 0
}
#Creating button 2

button $a.02 -text "TURN OFF EDGES" -command {off} -bg cyan -font {arial 10 } ; place $a.02 -x 35 -y 130 -width 150 -height 30

OUTPUT:

1: Widget:

1. FREE EDGES: After clicking on free edges it shows as below:

2. OFF EDGES: After clicking on off edges it shows as below:

  • It came back to its original display.

Your portfolio, next

Ship work like this
in your own course.

Talk to a career counsellor

Free 20-minute call. We'll map the right course to where you want to work.

By submitting you agree to our Terms and Privacy Policy.

Talk to a career counsellor

Free 20-minute call. We'll map the right course to where you want to work.

By submitting you agree to our Terms and Privacy Policy.