Feb-12-2021, 06:14 PM
In def DoIt(h5): I am resetting the variables vcnt, ocnt, and mcnt to 0 but when it runs for h4 in hVP: the variables return to their state the last time def count(h4): was triggered by for h4 in hVP:. I want vcnt, ocnt, and mcnt to be 0 every time the for h4 in hVP: loop starts. Help please.
I am checking the state of the variable at this point it the below script
vs.SetRField(h5,'Obj Count','Obj Count',vs.Num2Str(0,ocnt))
vs.AlrtDialog(ocnt) #Displays current count but for somereason is adding the previous count to the current count
vcnt = ocnt = mcnt = 0 #reset to variable to 0
vs.AlrtDialog(ocnt) #displays that variable has been reset to 0
I am checking the state of the variable at this point it the below script
vs.SetRField(h5,'Obj Count','Obj Count',vs.Num2Str(0,ocnt))
vs.AlrtDialog(ocnt) #Displays current count but for somereason is adding the previous count to the current count
vcnt = ocnt = mcnt = 0 #reset to variable to 0
vs.AlrtDialog(ocnt) #displays that variable has been reset to 0
import vs reset = xP = yP = vcnt = ocnt = mcnt = 0 def count(h4): global vcnt, ocnt, mcnt ocnt += 1 if vs.GetTypeN(h4) == 5: vcnt += vs.GetVertNum(h4) if vs.GetTypeN(h4) == 21: vcnt += vs.GetVertNum(h4) if vs.GetTypeN(h4) == 40: mcnt += 1 def DoIt(h5): global reset,xP,yP, vcnt, ocnt, mcnt if h5 != []: if vs.GetTypeN(h5) == 16: GetHandles(h5) for h4 in hVP: count(h4) vs.SetRecord(h5,'Obj Count') vs.SetRField(h5,'Obj Count','Obj Count',vs.Num2Str(0,ocnt)) vs.AlrtDialog(ocnt) #Displays current count but for somereason is adding the previous count to the current count vcnt = ocnt = mcnt = 0 #reset to variable to 0 vs.AlrtDialog(ocnt) #displays that variable has been reset to 0 vs.SetRField(h5,'Obj Count','Vertex Count',vs.Num2Str(0,vcnt)) vs.SetRField(h5,'Obj Count','Mesh Count',vs.Num2Str(0,mcnt)) vs.Symbol(vs.GetSDName(h5),xP,yP,0) xP += 300 if xP > 5000: xP = 0 yP += 300 def GetHandles2(h1): while h1 != []: hSEL.append(h1) if vs.GetTypeN(h1) == 92: h2 = vs.FInGroup(h1) while h2 != []: hSEL.append(h2) h2 = vs.NextObj(h2) h1 = vs.NextObj(h1) def GetHandles(h5): h2=vs.FInSymDef(h5) while h2 != []: hVP.append(h2) itParent = vs.GetTypeN(h2) # Get Parent type if itParent == 11: h3 = vs.FInGroup(h2) while h3 != []: hVP.append(h3) h3 = vs.NextObj(h3) h2 = vs.NextObj(h2) if vs.GetObject('Obj Count') == []: vs.NewField('Obj Count', 'Obj Count', '0', 4, 0) vs.NewField('Obj Count', 'Vertex Count', '0', 4, 0) vs.NewField('Obj Count', 'Mesh Count', '0', 4, 0) hVP = [] hSEL = [] GetHandles2(vs.FSymDef()) for h5 in hSEL: if vs.GetTypeN(h5) == 16: DoIt(h5)