亚洲春色中文字幕久久久-三上亚,91精品国产亚一区二区三区,久久久九色综合亚洲成色777,涩涩视频下载,国产午夜亚洲精品午夜鲁丝片,国产精品A一区二区三区腾讯导航,影音先锋色情AV在线看片,蜜臀国产在线视频,极品少妇高潮啪啪无码吴梦梦 ,精品人妻无码一区二区三区手机版

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5552|回復(fù): 3
打印 上一主題 下一主題
收起左側(cè)

MATLAB對三階魔方建模并進(jìn)行旋轉(zhuǎn)操作 附源程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:346836 發(fā)表于 2018-6-7 12:32 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
這是我在畢設(shè)期間做的關(guān)于魔方機(jī)械手的一部分東西,屬于matlab對于顏色識別部分,這里是對魔方驚醒了建模。大家在matlab里就可以實現(xiàn)。希望對大家有幫助

MATLAB源程序:
  1. clc;clear;
  2. close all;
  3. x=[-0.5 +0.5 +0.5 -0.5 -0.5 -0.5;
  4.     +0.5 +0.5 -0.5 -0.5 +0.5 +0.5;
  5.     +0.5 +0.5 -0.5 -0.5 +0.5 +0.5;
  6.     -0.5 +0.5 +0.5 -0.5 -0.5 -0.5];
  7. y=[-0.5 -0.5 +0.5 -0.5 -0.5 -0.5;
  8.     -0.5 +0.5 +0.5 +0.5 -0.5 -0.5;
  9.     -0.5 +0.5 +0.5 +0.5 +0.5 +0.5;
  10.     -0.5 -0.5 +0.5 -0.5 +0.5 +0.5];
  11. z=[0 0 0 0 0 1;
  12.     0 0 0 0 0 1;
  13.     1 1 1 1 0 1;
  14.     1 1 1 1 0 1];
  15. Orgcell1=[1 0 1 0 1 1];
  16. Orgcell2=[0 0 0.46 1 1 1];
  17. Orgcell3=[0 1 0 0 0 1];
  18. Org1(:,1)=Orgcell1;
  19. Org2(:,1)=Orgcell2;
  20. Org3(:,1)=Orgcell3;
  21. x1=ones(size(x))+x;
  22. y1=ones(size(x))+y;
  23. x2=-1*ones(size(x))+x;
  24. y2=-1*ones(size(x))+y;
  25. z1=ones(size(z))+z;
  26. z2=-1*ones(size(z))+z;
  27. Org(1,:,:)=[Org1 Org2 Org3 ];
  28. Org(2,:,:)=[Org1 Org2 Org3 ];
  29. Org(3,:,:)=[Org1 Org2 Org3 ];
  30. Org(4,:,:)=[Org1 Org2 Org3 ];

  31. h.h0=patch(x2,y1,z, Org);
  32. axis equal tight  
  33. axis([-4 4 -4 4 -4 4]);
  34. hold on;
  35. h.h1=patch(x,y1,z, Org);
  36. h.h2=patch(x1,y1,z, Org);
  37. h.h3=patch(x2,y,z, Org);
  38. h.h4=patch(x,y,z, Org);
  39. h.h5=patch(x1,y,z, Org);
  40. h.h6=patch(x2,y2,z, Org);
  41. h.h7=patch(x,y2,z, Org);
  42. h.h8=patch(x1,y2,z, Org);


  43. h.h10=patch(x2,y1,z1, Org);
  44. h.h11=patch(x,y1,z1, Org);
  45. h.h12=patch(x1,y1,z1, Org);
  46. h.h13=patch(x2,y,z1, Org);
  47. h.h14=patch(x,y,z1, Org);
  48. h.h15=patch(x1,y,z1, Org);
  49. h.h16=patch(x2,y2,z1, Org);
  50. h.h17=patch(x,y2,z1, Org);
  51. h.h18=patch(x1,y2,z1, Org);


  52. h.h20=patch(x2,y1,z2, Org);
  53. h.h21=patch(x,y1,z2, Org);
  54. h.h22=patch(x1,y1,z2, Org);
  55. h.h23=patch(x2,y,z2, Org);
  56. h.h24=patch(x,y,z2, Org);
  57. h.h25=patch(x1,y,z2, Org);
  58. h.h26=patch(x2,y2,z2, Org);
  59. h.h27=patch(x,y2,z2, Org);
  60. h.h28=patch(x1,y2,z2, Org);
  61. hold off;
  62. title('Rubic Cube');
  63. xlabel('Variable X');
  64. ylabel('Variable Y');
  65. zlabel('Variable Z');
  66. grid on;
  67. %view(0,0);   
  68.     origin=[0 0 0.5];
  69.     direct1=[0 1 0];      
  70.     direct2=[0 0 1];      
  71.     direct3=[0 0 1];      
  72.     direct4=[1 0 0];      
  73.     direct5=[1 0 0];      
  74.     direct6=[0 1 0];
  75.     direct=[direct1;direct2;direct3;direct4;direct5;direct6];
  76.     theta1=45;
  77.     theta2=45;
  78.     theta3=-45;
  79.     theta4=-45;
  80.     theta5=45;
  81.     theta6=-45;
  82.     theta=2*[theta1,theta2,theta3,theta4,theta5,theta6];
  83.     H.H1=[h.h6  h.h7  h.h8;         %H1為紅色面         
  84.         h.h16 h.h17 h.h18;
  85.         h.h26 h.h27 h.h28];
  86.     H.H2=[h.h20 h.h21  h.h22;       %H2為黃色面
  87.         h.h23 h.h24  h.h25;
  88.         h.h26 h.h27  h.h28];
  89.     H.H3=[h.h10 h.h11  h.h12;       %H3為白色面
  90.         h.h13 h.h14  h.h15;
  91.         h.h16 h.h17  h.h18];
  92.     H.H4=[h.h2  h.h5   h.h8;       %H4為藍(lán)色面
  93.         h.h12 h.h15  h.h18;
  94.         h.h22 h.h25  h.h28];
  95.     H.H5=[h.h0  h.h3   h.h6;       %H5為綠色面
  96.         h.h10 h.h13  h.h16;
  97.         h.h20 h.h23  h.h26];
  98.     H.H6=[h.h0  h.h1   h.h2;       %H6為橙色面
  99.         h.h10 h.h11  h.h12;
  100.         h.h20 h.h21  h.h22];
  101. for i=0:23
  102.     [H,h]=CubicRotate(H,h,direct,theta,origin,mod(i,6)+1);

  103. end



  104. function [H,h]=CubicRotate(H,h,direct,theta,origin,surface)
  105. switch surface
  106.     case 1
  107.         Handle=H.H1;
  108.     case 2
  109.         Handle=H.H2;
  110.     case 3
  111.         Handle=H.H3;
  112.     case 4
  113.         Handle=H.H4;
  114.     case 5
  115.         Handle=H.H5;
  116.     case 6
  117.         Handle=H.H6;
  118. end


  119. for i=1:10
  120.     rotate(Handle,direct(surface,:),theta(surface)/10,origin);
  121.     pause(0.01);
  122. end
  123. [H,h]=RotateConvert(H,h,surface);
復(fù)制代碼

全部資料51hei下載地址:
MATLAB對三階魔方建模并進(jìn)行旋轉(zhuǎn)操作.zip (1.13 KB, 下載次數(shù): 47)



評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏2 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:807820 發(fā)表于 2020-7-25 10:07 | 只看該作者
好神奇
回復(fù)

使用道具 舉報

板凳
ID:896777 發(fā)表于 2021-3-26 02:36 | 只看該作者
不全啊
回復(fù)

使用道具 舉報

地板
ID:896777 發(fā)表于 2021-3-26 02:39 | 只看該作者
大佬可否分享一下matlab三階魔方的完整程序
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表