1樓:匿名使用者
clear
clco=[1,1,1];
a=5;
a=[(o(1)-a/2),(o(2)-a/2),(o(3)-a/2)];
b=[(o(1)+a/2),(o(2)-a/2),(o(3)-a/2)];
c=[(o(1)+a/2),(o(2)+a/2),(o(3)-a/2)];
d=[(o(1)-a/2),(o(2)+a/2),(o(3)-a/2)];
a1=[(o(1)-a/2),(o(2)-a/2),(o(3)+a/2)];
b1=[(o(1)+a/2),(o(2)-a/2),(o(3)+a/2)];
c1=[(o(1)+a/2),(o(2)+a/2),(o(3)+a/2)];
d1=[(o(1)-a/2),(o(2)+a/2),(o(3)+a/2)];
linexyz=cat(1,a,b);
linexyz=cat(1,linexyz,c);
linexyz=cat(1,linexyz,d);
linexyz=cat(1,linexyz,a);
linexyz=cat(1,linexyz,a1);
linexyz=cat(1,linexyz,b1);
linexyz=cat(1,linexyz,c1);
linexyz=cat(1,linexyz,d1);
linexyz=cat(1,linexyz,a1);
linexyz=cat(1,linexyz,b1);
linexyz=cat(1,linexyz,b);
linexyz=cat(1,linexyz,c);
linexyz=cat(1,linexyz,c1);
linexyz=cat(1,linexyz,d1);
linexyz=cat(1,linexyz,d);%把頂點連線起來
plot3(linexyz(:,1),linexyz(:,2),linexyz(:,3),'r',o(1),o(2),o(3),'.')
axis equal
2樓:匿名使用者
還是慢了一步,不過是我自己編的。
儲存下列**為cubicbox.m檔案:
function cubicbox(center, xlength, ylength, zlength)
% 例如 cubicbox([1 1 1],2,3,5),給出中心在(1,1,1),長寬高分別為2,3,5的矩形框;
if ~nargin
center = [0 0 0]; xlength = 2; ylength = 2; zlength = 2;
endcolor = 'b';
plot3([center(1)-xlength/2, center(1)-xlength/2, center(1)+xlength/2, center(1)+xlength/2, center(1)-xlength/2], ...
[center(2)-ylength/2, center(2)+ylength/2, center(2)+ylength/2, center(2)-ylength/2, center(2)-ylength/2], ...
[(center(3)+zlength/2); (center(3)-zlength/2)]*ones(1, 5), color, 'linewidth', 2)
hold on
plot3((center(1)+xlength/2)*ones(1, 2), (center(2)+ylength/2)*ones(1, 2), [center(3)-zlength/2, center(3)+zlength/2], color, 'linewidth', 2)
plot3((center(1)+xlength/2)*ones(1, 2), (center(2)-ylength/2)*ones(1, 2), [center(3)-zlength/2, center(3)+zlength/2], color, 'linewidth', 2)
plot3((center(1)-xlength/2)*ones(1, 2), (center(2)+ylength/2)*ones(1, 2), [center(3)-zlength/2, center(3)+zlength/2], color, 'linewidth', 2)
plot3((center(1)-xlength/2)*ones(1, 2), (center(2)-ylength/2)*ones(1, 2), [center(3)-zlength/2, center(3)+zlength/2], color, 'linewidth', 2)
axis equal
3樓:
網上找的**,希望對你有幫助!
可以先編寫個m檔案,儲存;
function boxplot3(x0,y0,z0,lx,ly,lz)
%(x0,y0,z0)是第乙個頂點的位置; (lx,ly,lz)是長方體的長寬高.
x=[x0 x0 x0 x0 x0+lx x0+lx x0+lx x0+lx];
y=[y0 y0 y0+ly y0+ly y0 y0 y0+ly y0+ly];
z=[z0 z0+lz z0+lz z0 z0 z0+lz z0+lz z0];
index=zeros(6,5);
index(1,:)=[1 2 3 4 1];
index(2,:)=[5 6 7 8 5];
index(3,:)=[1 2 6 5 1];
index(4,:)=[4 3 7 8 4];
index(5,:)=[2 6 7 3 2];
index(6,:)=[1 5 8 4 1];
for k=1:6
plot3(x(index(k,:)),y(index(k,:)),z(index(k,:)))
hold on
end儲存為 boxplot3.m 檔案後
在視窗中,呼叫
boxplot3(1,2,3,5,5,5)
就可得到邊長為5的正方體.. (1,2,3)為第乙個頂點的位置
大學MATLAB程式設計題,matlab程式設計題
我只會用迴圈函式了 比如第一個問題,y 1 for n 1 1 100 y y 1 n 1 2 n 1 end這樣,儘管matlab做為矩陣實驗室,用迴圈函式做有點浪費資源,不過我想不出來別的什麼,希望路過大俠指教 樓主關於這種迴圈函式方法有不明白的歡迎追問 以下六行儲存為pifour.m檔案fun...
一道Matlab程式設計題,matlab程式設計題
義敏學系歌 可是,你為什麼要到我這個mathematica專攻的團隊來提問呢 那我也給個mma的解法來消滅這個提問吧 nintegrate sqrt total d t 2 400.953 開濮耿昭 1.首先舉一個簡單的例子 求y x 2 在x為 0,2 上的曲線長度。把下面的複製貼上進matlab...
用matlab程式設計畫圖問題,matlab繪圖問題(兩個程式比較)
syms x t f int exp t t x 1 t,0,inf int exp t t 1 x 1 t,0,inf x 0.1 0.001 0.9 f subs f,x plot x,f 效果是 希望採納,設定為滿意答案,謝謝 matlab繪圖問題 兩個程式比較 第一步 把兩個m檔案的程式做到...