REQUEST: Color Front Faces in Group or Component
-
I am working with a client who would like to manage our modeling project using Trimble Connnect (TC).
We have done some testing and it seems TC will only display colored-Front Faces (FFs). The color MUST be painted DIRECTLY onto a FF, groups or components with a color applied to them will not display that color when the model is published to TC.? Could someone develop an extension that would automatically paint any FF which have the default color?
It would be able to drill into subgroups/subcomponents and paint the FFs including smoothed-FFs.?Note: I tried the Repaint Face script (by Clark Bremmer) but it can not paint all the facets of a smoothed surface at once.
? Also, if possible, have a way to extract a FF color from within groups/components without editing (opening) them, remove the color from those FFs, and use the extracted color as the active color for the Paint Bucket tool. The reason for this is that the coloring or rendering requirements of a model could change as the project project evolves. I don't want to drill into the subgroups/subcomponents and manually remove and repaint each FF of a specific color; I would rather be able to just repaint the parent group/component. This could be a separate script or an option of the painting script, whatever be the easiest to develop/maintain. -
This is [possibly] a relatively straightforward issue...
First, a few questions...
How would you expect to use this tool[set] ?
How do you propose to determine the 'material' to be used for the [selected] front-faces?
Is this tool used on a selection of components/groups, or more globally on all such 'containers ?
What about badly modeled geometry with textured back-faces etc ?If you want the container's material to be applied to its content-faces, and then any content-faces within nested containers etc, then it's quite possible BUT it requires all container's to be made unique ?
If you have two component-instances, one colored red and the other green, then any default-material faces within them will appear using that container's material [red/green] but in reality those faces still have no material. So to choose which material to use the component needs to be 'made_unique'.
Of course this issue compounds when the container has its own nested groups or instances...
These need to be also 'made_unique' so that their materials apply to their faces, not 'globally' to other 'siblings' in similar containers...The logic is not simple, since nested containers within various other containers need to be made_unique and get their "parent's" material etc...
-
How do you propose to determine the 'material' to be used for the [selected front-faces?]
I think the simplest way is for the user to be required to pre-select the color they want to use by choosing a color in the Materials windows.Then run the script.
A. The script would use the color chosen by the user and create new color by copying it and adding a custom suffix or prefix to the name so it could later be identified to assist in reverting all surfaces with that color, if desired, back to the default front face color.
B. I would be happy to manually turn on monochrome style before running the script to assure the front faces are oriented properly, but I suppose if you want to build that in as feature when the script is run that would be up to you.
C. Perhaps the Paint Bucket cursor would appear and the user could paint the selection
or the script would just automatically apply the color to the pre-selectionIs this tool used on a selection of components/groups, or more globally on all such 'containers ?
The user would have to do a pre-selection of geometry (if there was nothing selected a message would occur to notify the user to make a selection and run the script again). The script would disregard components/sub-components found in a pre-selection. If inside an entity which contains subgroups, then a pre-selection of objects would still be required and pertain only to that pre-selection and its subgroups.D. Hopefully, the user could use Ctrl-Z to undo the changes immediately after the script has run.
What about badly modeled geometry with textured back-faces etc ?
They would not be considered. Note: Trimble Connect currently can not render texture or patterns with transparency either.As far as the logic for nested components goes I see why it would be very tricky.
I'm thinking that I could get by with only the un-painted front faces within nested groups being affected. I not sure, now that I have read your posting, that we want to include the faces of nested components as it could have unexpected results. Perhaps that is something that could wait for later on and add in if really needed.For reverting the painted front faces back to the default front face color, could a script then search recursively for any geometry with the custom color name (mentioned above in Step "A.") and replace them with the default front face color? The user could then manually purge the custom color.
Advertisement