I have a large assembly model made of many different parts. The last thing I want to do is "paint" it so I can make a drawing showing the different colors being used. My plan is to take the entire assembly and insert it into another assembly then just change the parts to the specific colors. I was wondering if there was a way to change the colors on multiple parts at once. Right now I right click the part go to iproperties and then go to occurence and choose the specific color. I know from using Solidworks that it works the opposite you click the color first and then all the parts that you want to be that color. It works out a lot quicker. Is there anything in Inventor that will let me do it in a similar way? If I select multiple parts the occurence tab in the properties is greyed out.
Inventor Professional 2010
Thanks
Solved! Go to Solution.
Solved by cwhetten. Go to Solution.
Select all the parts you want using ctrl, then select the colour you want from the drop down up on the quick access bar.
This only sets the colour at the assembly level it does not colour the original part.
Using ctrl to select everything you want to color is fine if you only need to select a few parts, but if you need to select a few hundred or more, that approach gets old REALLY fast. You can window select everything, but if you have components inside a pattern, then that won't work.
Here's what I came up with. I had an assembly that I wanted to change the color of every part, but I knew that the color could change at some point, so I didn't want to have to select hundreds of parts one by one, then have to do it again when the customer changed his mind on the paint scheme. So I wrote an iLogic rule that cycles through every part in the assembly and changes its color for me. And the rule is flexible enough that I can add or remove parts from the assembly and the rule still changes everything without breaking. Here is the rule:
Dim num As Long
num = ThisApplication.ActiveDocument.ComponentDefinition.Occurrences.Count
jj=1
While jj<num+1
Component.Color(ThisApplication.ActiveDocument.ComponentDefinition.Occurrences.Item(jj).Name) = PaintColor
jj=jj+1
End While
iLogicVb.UpdateWhenDone = True
The rule uses a text user parameter called PaintColor in the assembly to get the name of the color (see the attached image). You manually type in the name of the color you want your assembly to be (you have to type in the EXACT name of the color style you wish to use), then run the rule.
In the attached image you will also see an Alt_Color parameter that I used for some of my drawing views because tan printed out too darkly on a B&W printer. The Alt_Color uses a copy of the main paint color rule, just with the parameter changed from PaintColor to Alt_Color.
kelly.young has embedded your image for clarity
My steps:
1. Make a new design view
2. Change the selection filter to parts from components
3. zoom out so I can see all the assembly
4. drag a selection window around the entire assembly
5. change the color in the drop down
This only works because my customer paints the entire assembly the same color.
You can nest design reps from the top assembly down to your lowest sub-assembly.
You can also explore some of the selection tools that show up when you press shift and your right mouse button.
Steve Walton
Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.
cwhetten, that is a fantastic answer. Very robust in that you can add new parts to an assembly and it will still keep everything a uniform color. In general, it is better to use something like iLogic and Rules/Forms to automate design parameters, it makes it very easier for a customer to personalize a part to his needs.
Worked great for me, thank you.
An alternative approach I have just found:
Select one item
change it's colour in the pallet window
hold shift (without deselecting the first one)
window select the rest/single click in the assembly view.
Seems to ignore patterns etc, but window select does select all the way through. Might be useful to someone
Hi
I try to past your rule into my iLogic rules, but I just get error message on this rule. Could you please explain / show the procedure a little more for "dummies" ? Maybe a picture showing the Edit browser for iLogic rules.
I am using Inventor 2013.
Thanks in advance.
Best regards
Arne
Hello @Powerman2000 did you set the two User Parameters of PaintColor & Alt_Color shown in their attached image?
* Ideas * Help * AKN * Updates * Pack & Go * Reset Utility * Repair Install * Customization * iLogic Examples * Autodesk University *
Hi Kelly.young
I find that your solution just changes the part color on assembly level.
Do you have a solution to get to change the part color on part level, but in the same way as from the assembly level, this so I can color multiple parts in one go?
Just to make it a little more difficult, I would prefer to just have painted the outside surface on the parts, this so I can have a outside painted metal beam for example yellow and metal color inside when I section the part for correct illustration use in model pictures.
Thanks
Hi! There is a way to do it at part level. Here is what you need to do. Use Clear command (the colored wheel with a red cross at the top) to strip off all appearance overrides. Otherwise, it can get confusing. Assign the part to a material style you like. Then select the faces or features you want to paint -> assign an appearance to the faces or features.
This will behave like as if a layer of paint applied to the part in a different material. However, you cannot save it to Design View Rep. The part will be colored as such until you either remove the appearance overrides or you apply a different appearance to the faces or features.
Many thanks!
@Powerman2000 so what you're trying to do is from the assembly level, dive into a single part, select all faces, color override those faces, return to assembly, then repeat for all parts, and return to assembly level? Assuming you want them all the same color?
To do one by one the method @johnsonshiue explains how to do it.
With iLogic that is another story, but I think it should be possible.
How to override a solid body color from an assembly
How to override a solid body color from an assembly
Strip Assembly Level Color Overrides with iLogic
ilogic rule: Remove color overrides, strip color overrides, solid colors
Override color asset on face - HRESULT: 0x80020003
Check out these links, some are to remove, but you could change it around using some mix and match.
Please select the Accept as Solution button if a post solves your issue or answers your question.
* Ideas * Help * AKN * Updates * Pack & Go * Reset Utility * Repair Install * Customization * iLogic Examples * Autodesk University *
Can you Attach your file(s) here?
I suspect there is an easy technique for a beginner.
Hi JD, thanks for reaching out so quick.
Unfortunately I can't. It's NDA and a huge file with assemblies within assemblies.
I just want the exterior parts to be coloured green and everything left alone. There's hundreds of these parts and I rather not have to reclick them all if the director wants them a different colour. I'm trying to figure out the iLogic rule for this, but I'm not experienced in coding at all. I might just have to bother one of the senior guys ahaha
Hi! Please share a non-proprietary dataset that describes the requirements. It should be doable based on prior replies. Please feel free to start a new thread. Forum experts can take a look and provide some guidance.
Many thanks!
What If You want to change anything that os say Blue to white or green ie. ignoring things that are galvanized or rubber or semi polished? Like a look up and change by color and ignore some? Could really use this rn
I'd need to run it to a skeleton from the top level assembly also. W i logic.
Can't find what you're looking for? Ask the community or share your knowledge.