Clear Filters
Clear Filters

How to make a geometry transparent?

15 views (last 30 days)
Bacha Munir
Bacha Munir on 10 Jun 2024
Edited: VINAYAK LUHA on 12 Jul 2024 at 5:03
Hello brothers. I have a geometry and I want to make it transparent as some entities are disappeared. I have used the following commond but no results. Thank you.
gm=mphgeom(model)
mphviewselection(model,gm, 'facealpha', 0.5)
  1 Comment
DGM
DGM on 10 Jun 2024
Edited: DGM on 10 Jun 2024
I don't know what those functions are, but the only thing in the figure are two patch objects. You can just set their FaceAlpha to 0.5. One of the objects is used for creating the wireframe edges. The other is used to shade the faces, so figure out which is which and adjust the facealpha on the one that's used for the faces.

Sign in to comment.

Accepted Answer

VINAYAK LUHA
VINAYAK LUHA on 12 Jul 2024 at 5:02
Edited: VINAYAK LUHA on 12 Jul 2024 at 5:03
Hi Bacha,
I understand that you have a MATLAB figure consisting of several closed entities and you want to make the geometry of these entities 'translucent' so that the inner entities are also visible.
This can be done by adjusting the 'faceAlpha' property of the enclosing "patch" graphics objects in the figure.
Following code snippet shows the implementation based on the above logic -
fig = openfig('figure 2.fig')
% Get all the children of the figure
allChildren = findall(fig, '-property', 'FaceAlpha');
% Loop through each child and check if it is a patch object
for i = 1:length(allChildren)
child = allChildren(i);
if strcmp(get(child, 'Type'), 'patch')
% Set the transparency (FaceAlpha) to a desired value, e.g., 0.5
set(child, 'FaceAlpha', 0.5);
end
end
Result -
For more details on the functions used, kindly refer the following documentations :
Hope this answers your question
Regards,
Vinayak Luha

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!