platonic_solid
function [V,F]=platonic_solid(n,r)
Creates the PATCH data, the vertices (V) and faces (F) for
a given platonic solid (according to "n" see below) with radius (r)
n=1 -> Tetrahedron
n=2 -> Cube
n=3 -> Octahedron
n=4 -> Icosahedron
n=5 -> Dodecahedron
%% Example
clear all; close all; clc;
r=1;
figure;fig=gcf; clf(fig); colordef (fig, 'white'); units=get(fig,'units'); set(fig,'units','normalized','outerposition',[0 0 1 1]); set(fig,'units',units); set(fig,'Color',[1 1 1]);
hold on;
[V,F]=platonic_solid(1,r);
subplot(2,3,1);
patch('Faces',F,'Vertices',V,'FaceColor','b','FaceAlpha',0.6,'EdgeColor','k','LineWidth',2); axis equal; grid on; hold on; view(3); axis off;
[V,F]=platonic_solid(2,r);
subplot(2,3,2);
patch('Faces',F,'Vertices',V,'FaceColor','b','FaceAlpha',0.6,'EdgeColor','k','LineWidth',2); axis equal; grid on; hold on; view(3); axis off;
[V,F]=platonic_solid(3,r);
subplot(2,3,3);
patch('Faces',F,'Vertices',V,'FaceColor','b','FaceAlpha',0.6,'EdgeColor','k','LineWidth',2); axis equal; grid on; hold on; view(3); axis off;
[V,F]=platonic_solid(4,r);
subplot(2,3,4);
patch('Faces',F,'Vertices',V,'FaceColor','b','FaceAlpha',0.6,'EdgeColor','k','LineWidth',2); axis equal; grid on; hold on; view(3); axis off;
[V,F]=platonic_solid(5,r);
subplot(2,3,5);
patch('Faces',F,'Vertices',V,'FaceColor','b','FaceAlpha',0.6,'EdgeColor','k','LineWidth',2); axis equal; grid on; hold on; view(3); axis off;
引用
Kevin Moerman (2024). platonic_solid (https://www.mathworks.com/matlabcentral/fileexchange/28213-platonic_solid), MATLAB Central File Exchange. に取得済み.
MATLAB リリースの互換性
プラットフォームの互換性
Windows macOS Linuxカテゴリ
タグ
謝辞
ヒントを与えたファイル: Fast 3D Collision Detection -- GJK algorithm, VoxelClassifier, GJK algorithm distance of closest points in 3D, Fundamentals of Spherical Array Processing
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!バージョン | 公開済み | リリース ノート | |
---|---|---|---|
1.0.0.0 |