Hi @nraichura ,
to change the appearance of component you need to have for each component an explicit definition of a model item widget. This is also currently the supported way to set component properties like a colors, opacity /transparence etc.)
So the default way is to define for each modelItem widget a function what will change the appearance of all modelitems to default appearance / transparency etc./ and then set the Highlight appearance to the selected item:
For example:
$scope.view.wdg.['modelItem-1']['color']= "rgba(226, 126, 10,1.0)";
this above will set the color of the widget modelItem-1 with no transparence (color =rgb(226, 126, 10))
but when you want to have 0.3 opacity (transparency ) you can use the alpha channel parameter of the rgba function
$scope.view.wdg.['modelItem-1']['color']= "rgba(226, 126, 10,0.3)";
If you do not have an explicit definition of modelitems you can set directly the color using the function and the selection notation <ModelWeidget-Id>-<pathId> : example: 'model-1-/0/1/23' :
var tartet='model-1' ; //the widget id / name of a model widget
path_id='/0/1/23'; // component path of the component
tml3dRenderer.setColor(target+'-'+path_id, color);
for more details you can review the following Tech Tip: 'How to select model components in a 3d model without explicit definition of model Items?'