- The Outer Rectangle: Lets assume it is of dimensions 6*9 in this case
- Inner Rectangle: Let's assume it is of dimensions 4*7 in this case
- The Semi Circle: Due to the rectangle constraints, the Semi Circle will be of radius 3, centered on the middle of the lowest edge.
how to draw this geometry OF TWO SHAPES?
5 ビュー (過去 30 日間)
古いコメントを表示
I want to draw the attached geometry using decsg ? thanks

0 件のコメント
回答 (1 件)
Ganesh
2024 年 6 月 13 日
For creating the given figure, you need to break down the figure into three parts. Using the 2D Geometry definition, we need to construct the following segments of the figure:
You may learn more on constructing 2D Geometry figures using the following documentation link:
The following code achieves what you are looking for:
R1 = [3 4 -3 -3 3 3 -4.5 4.5 4.5 -4.5];
R2 = [3 4 -2 -2 2 2 -3.5 3.5 3.5 -3.5];
C1 = [1 0 -4.5 3 0 0 0 0 0 0];
geom_matrix = [R1' R2' C1'];
set_formula = '(R1+C1)-R2';
% Use decsg to create the geometry
[dl, bt] = decsg(geom_matrix, set_formula, char('R1', 'R2','C1')');
figure; % Creates a new figure window
pdegplot(dl, 'EdgeLabels', 'on');
axis equal; % Ensures the aspect ratio is equal to accurately represent the geometry
title('Geometry: Outer Rectangle Minus Inner Rectangle');
xlabel('x');
ylabel('y');
[dl2,bt2] = csgdel(dl,bt);
figure
pdegplot(dl2,"EdgeLabels","on","FaceLabels","on")
xlim([-1.5,1.5])
axis equal
Hope it helps!
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Geometry and Mesh についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!