[Code] material.name= v1.2
-
material-name=.rb adds a new Method to Sketchup's Material Class-
material.name="new_name"
it makes a cloned new-material from the original-material
and gives it the 'new_name',
if the name 'new_name' exists then it's made unique with a #N suffix,
it gives the new-material to any entities that had the original-material,
the original-material is deleted from the model and material-browser:
if the current-material in the browser was the original-material then
the current-material in the browser becomes the new_material...
Edit:
v1.1 Temp folder fixed for Mac users.
v1.2 Attribute Dictionaries copied over.
v1.3 Error with attrdict==nil fixed.material-name=.rb -
Sounds like a candidate for SKX
-
Yup.
Though recently I've begun to ponder about forwards compatibility. What if Google later implements the methods we add or fixes? http://forums.sketchucation.com/viewtopic.php?f=315&t=20113 -
Yeah, its a tricky one because you can check with respond_to? if it already exists but the semantics of the new method might be completely different.
I think extending the SU classes is a theological gray area / no-no.. as opposed to specialization through class derivation.
But I've done it a few times over the years. Most recently when I really want to be able to treat Selection just like a Model, so I added a bunch of methods that simply kick the message to Selection to self.model. It just made the rest of my code so much cleaner not having to constantly check what its dealing with.
Adam
-
@adamb said:
Yeah, its a tricky one because you can check with respond_to? if it already exists but the semantics of the new method might be completely different.
I think extending the SU classes is a theological gray area / no-no.. as opposed to specialization through class derivation.
Yea, it'd be nice to hear from Scott or any of the other Google-heads on this. He seemed positive to the Skx project, but I don't think anyone has mentioned this topic.
-
Here's v1.1 http://forums.sketchucation.com/viewtopic.php?p=167219#p167219
The Temp folder is now fixed to suit Mac users too... -
Here's v1.2 http://forums.sketchucation.com/viewtopic.php?p=167219#p167219
Any Attribute Dictionaries now copied to renamed material... -
Here's v1.3 - with error on attrdicts==nil fixed...
http://forums.sketchucation.com/viewtopic.php?p=167219#p167219
Advertisement