As your print statements point out, e.obj1 is not box2. e.obj1 is the box.wrl VizNode object you created in the make_box constructor.
The solution is to have make_box inherent from VizNode. This Vizard help page shows how to do that:
http://www.worldviz.com/vizhelp/Stru...rd_scripts.htm
It also has a link to an object oriented Python tutorial I suggest you check out:
http://www.freenetpages.co.uk/hp/ala...d/tutclass.htm