24小时热门版块排行榜    

查看: 2122  |  回复: 6

张安琪

新虫 (初入文坛)

[求助] 已知大量点集的坐标,如何画出其3D图像?

就是要画成图片上面的样子。。
另外,如果已经用3D画图软件画出一种形状,如何把这种形状也像图片上那样分成很多小球来表示,并且输出每个小球的中心坐标?
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

baksi

木虫 (小有名气)

【答案】应助回帖


感谢参与,应助指数 +1
张安琪: 金币+1, 有帮助 2012-04-13 20:52:42
我觉得Origin或Matlab都可以。不知道是否正确理解了你的意思。
2楼2012-04-10 01:13:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

你得有这些小球的中心坐标,然后半径都一样的话直接plot3即可,或者scatter3也行
matlab画图示例如下
CODE:
% 构造圆心矩阵[x,y,z],如果你有这些数据就不用了
centers = [];
for i=1:20*20*20
    [x,y,z] = ind2sub([20,20,20],i);
    if sqrt((x-10)^2+(y-10)^2+(z-10)^2)<=8
        centers(end+1,:) = [x,y,z];
    end
end

% 作图
figure, plot3(centers(:,1),centers(:,2),centers(:,3),'ko','MarkerFaceColor','w','MarkerSize',13);
title(['N = ',num2str(size(centers,1))]);

% 显示参数
grid on, box on
axis equal

看图
matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
3楼2012-04-10 01:23:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

张安琪

新虫 (初入文坛)

那如果是把一个正四面体也分成很多小球来表示呢?如何输出所有小球的中心坐标?

[ 发自手机版 http://muchong.com/3g ]
4楼2012-04-10 10:05:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

张安琪

新虫 (初入文坛)

引用回帖:
3楼: Originally posted by libralibra at 2012-04-10 01:23:42:
你得有这些小球的中心坐标,然后半径都一样的话直接plot3即可,或者scatter3也行
matlab画图示例如下


% 构造圆心矩阵,如果你有这些数据就不用了
centers = [];
for i=1:20*20*20
     = ind2sub(,i);
    ...

那如果是把一个正四面体也分成很
多小球来表示呢?如何输出所有小
球的中心坐标?
如果是一个任意形状的物体呢?matlab也可以画出它的所有单元吗?

[ 发自手机版 http://muchong.com/3g ]
5楼2012-04-10 10:08:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

张安琪

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by baksi at 2012-04-10 01:13:35:
我觉得Origin或Matlab都可以。不知道是否正确理解了你的意思。

如果是一个任意形状的物体,可不可以把它也用很多小球的集合来表示?并且输出每个小球的中心坐标?

[ 发自手机版 http://muchong.com/3g ]
6楼2012-04-10 10:10:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

★ ★ ★
感谢参与,应助指数 +1
张安琪: 金币+3, ★★★很有帮助 2012-04-10 19:50:59
你仔细看我上面的代码,
构造圆心坐标的时候,先做了一个圆心在(10,10,10),半径为8的球,然后判断所有[20,20,20]区域内的坐标,如果在球内,就把圆心添加到准备画的那个centers圆心坐标矩阵,
画图的时候,对所有centers里面的点,以它为球心画点,只是这个点的size有点大是13.因此看起来是小球.

如果要画正四面体,一样的,你用笔画一下,看看正四面体里面的点的坐标满足什么条件,把这些坐标构造出来当做centers矩阵,下面的画的语句不用修改.

任意形状也是一个思想,找到所有点,然后画.
matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
7楼2012-04-10 15:40:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 张安琪 的主题更新
信息提示
请填处理意见