声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 2235|回复: 2

[绘图技巧] 如何通过这些线生成曲面?(渐开线螺旋面)

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

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

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

x
如何通过这些线生成曲面?(渐开线螺旋面),谢谢!!
源代码如下:
m=4 %齿轮模数
z1=45 %齿轮齿数  
ang=20*pi/180 %分度圆上的压力角
ha_c=1 %齿顶高系数
c_c=0.25 %顶隙系数
ha=ha_c*m %齿顶高
hf=(ha_c+c_c)*m %齿根高
d=m*z1 %分度圆直径
db=d*cos(ang) %基圆直径
da=d+2*ha %齿顶圆直径
df=d-2*hf %齿根圆直径
x=0
s=pi*m/2+2*x*m*tan(ang) %分度圆齿厚
theta_s=tan(ang)-ang
fai_s=s/d
alfa_a=acos(db/da)%齿顶圆压力角(角度表示)
alfa_f=acos(db/df)%齿根圆压力角(角度表示)
dfr=0.38*m %齿根圆角半径
B=20%齿宽
for j=1:40
alfa=(alfa_f+((alfa_a-alfa_f)/39)*(j-1));%每条渐开线上生成10各关键点所对应的压力角大小(用弧表示)
rk=(db/2)/cos(alfa);
theta=tan(alfa)-alfa;
%polar(theta,rk)
[x,y]=POL2CART(theta,rk);
C=[x;y;0;1];
%plot(x,y)
   i=1;
   for zd=0:B
   fai_zhuan=zd/(d/r2)*tan(ang);
   A=[cos(fai_zhuan) sin(fai_zhuan) 0 0;-sin(fai_zhuan) cos(fai_zhuan) 0 0;0 0 1 -zd;0 0 0 1];
   BB=A*C;
   xx(i)=BB(1,:);
   yy(i)=BB(2,:);
   zz(i)=BB(3,:);
   i=i+1;
   end
  plot3(xx,yy,zz)
  hold on
end

[ 本帖最后由 huright 于 2007-5-9 16:37 编辑 ]
jkx.bmp
回复
分享到:

使用道具 举报

发表于 2007-5-9 10:30 | 显示全部楼层
搜索帖子 " 曲面拟合(可以得到函数) ";
或者试试 样条曲面拟合: help csapi.
或者试试 散点数据曲面拟合:help griddata.

评分

1

查看全部评分

发表于 2014-9-2 15:09 | 显示全部楼层
楼主这个问题已经解决了吧,请问matlab做的吗?
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-9-21 07:55 , Processed in 0.066401 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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