I am referencing a survey file in my site plan. Both were created using Civil 3D. I want to change the color of all of the reference files' layers to 250, so I selected them all in the layer properties manager and did so.
However, some layers are not changing colors. One layer is red in the reference file, but comes through on the site plan as magenta. Some Civil3D structures are also refusing to change colors.
I selected all of the objects in the reference file and made sure their colors were "by layer," but it did not completely fix the problem.
What am I missing?
Thank you for your help.
A couple of things to check: if the objects are blocks the entities within the blocks may have colors assigned. This would go for any 3d objects in the subject drawing as well. Entities may have layer and colors assigned within the properties of the object. Something else, is your xref inserted on layer 0. Makes a difference. Over the years I have run into similar issues many times with drawings that come from out of house or that do not follow sensible layer/color/linetype standards. You may just have to drill down on the offending entities till you find the problem.
Just an idea to try. There is a VISRETAIN system variable. You may want to give it a try.
0=The layer table, as stored in the reference drawing (xref), takes precedence.
1=Xref-dependent layer changes made in the current drawing take precedence.
Sinc is right, you'll have to change the colors in your styles to byblock or bylayer.
try commandline SETBYLAYER in the actual xref drawing, and include the blocks as well. this may help finding "offenders" to some extent.
VISRETAIN may be the answer you are looking for.
If I'm understanding you correctly, it sounds like you have an Xref that you changed in terms of layer color and it's not reflecting in your associated drawings. So, you went into your original file (the one acting as the "mother" xref) and changed a layer color through your LAYERS PROPERTY MANAGER; saved it, and went back into your drawing files which contain that Xref, expecting it to change in your host drawings, but the layer color did not change!
Perhaps you even tried reloading it in the INSERT-EXTERNAL REFERENCES, yet to no avail.
Set the VISRETAIN to (0) zero in your host files, and RELOAD the Xref in INSERT-EXTERNAL REFERENCES. You will finally see your drawing taking on the layer color change you made in your original Xref.
A second work-around is to go into your LAYERS PROPERTY MANAGER of those host drawings and change the color of the layer there. This works fine if you have only one or two files that rely on that particular Xref...
A third (and perhaps obvious) work-around would be to delete the Xref, DETACH it in INSERT-EXTERNAL REFERENCES, and re-insert the "newly-revised" Xref. This of course, is more of an inconvenience, plus it sort of defeats the whole idea of relying on the attributes of what an Xref is all about, doesn't it?
So, setting your VISRETAIN to (0) is probably the best solution for this particular circumstance.
However, that being said, I usually set my VISRETAIN to (1) one. The reason is, I like being able to change (or customize) the pen color of a layer(s) to reflect the work I do in other drawing files. For example, I like toning down the overall floor plan color when I do electrical plans so the electrical symbols can really stand out; that's just one example.
To me, VISRETAIN is all about layer manipulation in Xrefs: VISRETAIN (1) allows for that kind of layer color flexibility in the host drawings, whereas VISRETAIN (0) carries-over and maintains - the layer color change you make in the original drawing being used as the Xref.
WARNING: If your VISRETAIN is set to (0) in a host drawing, and you start customizing your layers of that Xref in your host drawing, those changes will not be maintained when you SAVE it. You will need to set your VISRETAIN to (1) if you want those color changes you made in that session to remain.