声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1098|回复: 8

[综合讨论] 如何对球体进行颜色分配

[复制链接]
发表于 2007-11-21 20:43 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
一球体中处处分布有电场,且电场和球体中每点的坐标有关系,在此先不予考虑,设电场为E(x,y,z)。我要如何把不同的电场用不同的颜色在球体中标出呢?请教各位了,还望相助,谢谢。

[ 本帖最后由 eight 于 2007-11-21 22:20 编辑 ]
回复
分享到:

使用道具 举报

发表于 2007-11-21 23:45 | 显示全部楼层
请将问题贴出。
另:可参照论坛已有的帖子自己先试试。------我的一个示例贴中也提到过此类问题。

评分

1

查看全部评分

 楼主| 发表于 2007-11-22 10:56 | 显示全部楼层
还是是不懂呢,还请帮忙,呵呵

请教.doc

16 KB, 下载次数: 13

发表于 2007-11-22 11:00 | 显示全部楼层

回复 #3 lenapu 的帖子

不要太依赖别人,多动手,多看help和里边的例子
发表于 2007-11-22 16:57 | 显示全部楼层
E(x,y,z)画图的办法可以参考我的关于四维图画法的示例贴-------数值积分求出E(x,y,z)画图即可。
求解方法也可参考我的另一个示例贴“关于带参数的积分问题 ”,若不知向量化方法,作循环即可。

评分

1

查看全部评分

 楼主| 发表于 2007-11-22 21:46 | 显示全部楼层
我写了个比较笨的程序,大概得到我要的分布在球体表面的电场
我要怎么样才能把那个球体上的网格去掉呢?
k = 6;
n = 2^k-1;
[X,Y,Z] = sphere(n);
for i=1:length(X)
for j=1:length(Y)
XX=X(i,j);
YY=Y(i,j);
ZZ=Z(i,j);
fun=['0.2*cos(x)./((',num2str(XX),'-0.2-0.2*cos(x)).^2+(',num2str(YY),'-0.2*sin(x)).^2+(',num2str(ZZ),'-1.1).^2).^(1/2)-0.2*cos(x)./((',num2str(XX),'+0.2-0.2*cos(x)).^2+(',num2str(YY),'+0.2*sin(x)).^2+(',num2str(ZZ),'-1.1).^2).^(1/2)'];
c0(i,j)=quadl(inline(fun),0,2*pi);
%计算电场,即为颜色矩阵
end
end
C=c0;
surf(X,Y,Z,C);
h=surf(X,Y,Z,C);
rotate(h,[1 0 0],60);
 楼主| 发表于 2007-11-23 20:18 | 显示全部楼层
知道了
surf(X,Y,Z,C,'linestyle','none');

评分

1

查看全部评分

发表于 2007-11-23 22:17 | 显示全部楼层
按照提示自己动手,值得鼓励。

希望以后也能自己多思考,不要连help一下命令即知的简单问题(网格去掉)也立刻发贴来问。
我个人喜欢就知道的问题给出思路和建议,感兴趣的问题参与讨论,太简单的问题可能不会回答。
这点也请那些误会的人多多体谅,毕竟个人时间和精力有限。

另:虽然画出了图,但我还是要提醒一下:你的代码跟你的公式似乎并不一致。
 楼主| 发表于 2007-11-24 09:56 | 显示全部楼层
呵呵,谢谢提醒。
我用了不同的模型。
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-9-23 19:21 , Processed in 0.068371 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表