How to plot a point, if it lies within a cube?
조회 수: 2 (최근 30일)
이전 댓글 표시
Hello MATLAB Community,
Say I have a point 'A' whose coordinates are [116, 6.63, 22].
Now I want create a boundary cube whose center of origin is (0,0,0) and the cube must be from -150 to +150 in X,Y,Z direction.
I would only like to plot the point A, if it is within the boundary condition (-150 to +150).
My question is how do you create a boundary cube and tell matlab to plot the point, only if its within the boundary limit?
I was not able to create a boundary for this problem.
Can anyone please help me with any suggestions.
Thank you in advance!!
I really appreciate your help.
Kind regards,
Shiv
댓글 수: 0
채택된 답변
David Hill
2022년 2월 3일
a = -pi : pi/2 : pi;
ph = pi/4;
ampl=150;
x = ampl*[cos(a+ph); cos(a+ph)]/cos(ph);
y = ampl*[sin(a+ph); sin(a+ph)]/sin(ph);
z = ampl*[-ones(size(a)); ones(size(a))];
figure
surf(x, y, z, 'FaceColor','g','FaceAlpha',0.1)
hold on
grid on
A=[116, 6.63, 22];
if all(abs(A)<=ampl)
plot3(A(1),A(2),A(3),'o','Color','b','MarkerSize',5,'MarkerFaceColor','b');
end
추가 답변 (1개)
Fangjun Jiang
2022년 2월 3일
For boundary, use plot3() to plot the lines between the 8 tip points of the cube.
To check if a point is within the boundary, you just need to check if all the coordinates (x,y,z) are within the range of [-150, 150]
참고 항목
카테고리
Help Center 및 File Exchange에서 Resizing and Reshaping Matrices에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!