How to make a geometry transparent?

2 ビュー (過去 30 日間)
Bacha Munir
Bacha Munir 2024 年 6 月 10 日
編集済み: VINAYAK LUHA 2024 年 7 月 12 日
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 件のコメント
DGM
DGM 2024 年 6 月 10 日
編集済み: DGM 2024 年 6 月 10 日
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.

サインインしてコメントする。

採用された回答

VINAYAK LUHA
VINAYAK LUHA 2024 年 7 月 12 日
編集済み: VINAYAK LUHA 2024 年 7 月 12 日
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

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLighting, Transparency, and Shading についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by