Rename Object to Group name

I have a scene with with 1,400 single objects each within it's own group. the objects are named object001. 002,003 etc etc, and the group has the name I want the object to be.
Is this possible via maxscript ?

tia

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
pixamoon's picture

`

how about this ?
To rename all object inside, inside ... groups by main group name

-- firts rename all by group witout numbers
for g in objects where isGroupHead g do 
	for o in g do o.name = g.name
 
-- collect unique names array
uNames = #()
for o in objects where isGroupHead o == false do appendifunique uNames (o.name as name)
 
uNumbers = #()	
for i = 1 to uNames.count do uNumbers[i] = 0
 
--add numbers to the same names
for o in objects where isGroupHead o == false do (
	if (a = findItem uNames (o.name as name)) > 0 then (
		uNumbers[a]  +=  1
		o.name = o.name + (formattedPrint uNumbers[a] format:"0.3d")
	)
)

Just quick idea... please test it and let me know how it works.
Best,
Pixamoon

barigazy's picture

...

I will use example of previous mentioned thread by DenisT.
Here you have groups inside group and some of theses are just linked to each other.

(
 	 f0 = box name:"f0" pos:[80,40,0] wirecolor:orange
 	 in f0 (f1 = box name:"f1" pos:[80,80,40] wirecolor:orange)
 	 in f1 (f2 = box name:"f2" pos:[80,80,0] wirecolor:orange)
 
 	 c0 = box name:"c0" pos:[40,40,0] wirecolor:orange
 	 c1 = box name:"c1" pos:[40,80,40] wirecolor:orange
 	 c2 = box name:"c2" pos:[40,80,0] wirecolor:orange
 
 	 b0 = box name:"b0" pos:[40,0,0] wirecolor:orange
 	 b1 = box name:"b1" pos:[80,0,0] wirecolor:orange
 
 
 	 b2 = box name:"b2" pos:[40,40,0] wirecolor:green
 	 b3 = box name:"b3" pos:[80,40,0] wirecolor:green
 
 	 g4 = group #(c1,c2) name:"g4"
 	 g0 = group #(b0,b1)	name:"g0" 
 	 g4.parent = b0
 
 	 g1 = group #(b2,b3,g0) name:"g1" 
 	 g2 = group #(c0, g1) name:"g2" 
 
 	 in b0 (box name:"d0" pos:[0,0,80] wirecolor:blue)
 	 in g0 (box name:"d1" pos:[0,0,120] wirecolor:blue)
 
 	 a0 = box name:"a0" pos:[0,40,80]
 	 a1 = box name:"a1" pos:[0,80,80]
 	 g3 = group #(a0,a1) name:"g3"  
 	 g3.parent = g2
 
 	g5 = group #(f0,f1,f2,g2) name:"g5"
 
 	 for g in #(g0,g1,g2,g3,g4,g5) do setGroupOpen g on
 )

bga

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.