国产精品乱码一区-性开放网站-少妇又紧又爽视频-西西大胆午夜人体视频-国产极品一区-欧美成人tv-四虎av在线-国产无遮挡无码视频免费软件-中文字幕亚洲乱码熟女一区二区-日产精品一区二区三区在线观看-亚洲国产亚综合在线区-五月婷婷综合色-亚洲日本视频在线观看-97精品人人妻人人-久久久久久一区二区三区四区别墅-www.免费av-波多野结衣绝顶大高潮-日本在线a一区视频高清视频-强美女免费网站在线视频-亚洲永久免费

機械社區

標題: 以前做的三維齒輪簡易模型 [打印本頁]

作者: logxing    時間: 2006-8-2 23:57
標題: 以前做的三維齒輪簡易模型

這是我一年以前做的一個三維齒輪簡易模型練習,當初的目的是要做一個包括齒輪的加工和使用的三維仿真系統。

7 N7 S3 l1 W y7 l* k7 h

但是發現一些基礎的東西還沒有準備好就沒有做下去。現在開始希望能在一年之內做好呀。

$ m7 Z( q) {6 }; o; s" a& f

光標鍵可以變換視角,q和w改變齒輪大小,a和s改變轉速,空格鍵在點,線,面之間變換

. g( x# Q! H; |

 


作者: logxing    時間: 2006-8-3 00:09
標題: Re: 以前做的三維齒輪簡易模型
因為是練習很簡易的,齒根部過渡曲線,齒頂倒角之類都沒有做,當初只是重視了漸開線部分: L0 e8 z* ?- _$ r1 s
這里漸開線是從基圓開始的。初學者不要被我的圖給誤導了。
作者: Ljdqe    時間: 2006-8-3 20:39
標題: Re: 以前做的三維齒輪簡易模型
作得漂亮,用VB做的?,真是高手
作者: logxing    時間: 2006-8-4 19:58
標題: Re: 以前做的三維齒輪簡易模型
是用vb做的
2 l; y- K' N  }1 P不過長遠來看,以后應該用c++做
作者: 阿松    時間: 2006-8-5 08:53
標題: Re: 以前做的三維齒輪簡易模型
我一直在想:各種曲線能不能做到象圓和橢圓一樣,不是逐點描出來的,而是光滑的。最主要要能減少數據量。
作者: logxing    時間: 2006-8-5 10:00
標題: Re: 以前做的三維齒輪簡易模型
計算機即使有畫圓或橢圓的命令,最終繪制時還是用點畫的,如果取得點比較少就能看出來不光滑6 T6 s. d0 J; H7 h! Y4 M
如果取得點多,雖然看起來光滑些,但是會影響顯示速度。雖然在使用畫圓命令時沒有生成很多數據,但在畫圓函數內部,畫一個光滑的圓并不會比畫一般曲線占用的資源少。9 `$ _, i4 w3 @! H2 `1 T

8 l) K/ n* E/ F, |! \3 n+ u數據取的少時出現不光滑我想到兩個解決辦法:5 _9 K5 B% `4 c+ J
一個就是變步長的思想,根據用戶的屏幕和分辨率自動算出一個肉眼分辨不出來的精度,當用戶改變所顯示物體的大小時重新計算這個精度,這樣不論用戶把圖形放大多少倍都不會有問題了,這里的前提是你需要知道曲線的方程才能做到變步長,如果一開始就是知道很多點的坐標的話應該先擬和曲線方程。
2 l# m  X! Z' H1 o另一個辦法就是抗鋸齒。因為屏幕的顯示實際就是很多象素點,比如橫1024縱768,這樣在顯示非45度斜線時是肯定會有變形的,抗鋸齒是通過對線附近的區域進行顏色的調整,使人眼感覺光滑。
作者: 阿松    時間: 2006-8-10 21:16
標題: Re: 以前做的三維齒輪簡易模型
厲害!佩服!
' f) r: j: z( l( w這對我來說就好像是另一個領域的事情,你也有所研究。
# }$ e7 ?2 A8 I/ g8 X: j8 h! d
" A. E% e5 t5 [" s4 `有辦法在AutoCAD中實現嗎?比如變步長。
/ Y$ P! w, n% L% J3 ^& J我知道的是計算機一般缺省的精度是16位有效數字。是不是任意曲線可以達到這個精度,而在顯示時和圓有同樣的速度?
作者: logxing    時間: 2006-8-11 17:08
標題: Re: 以前做的三維齒輪簡易模型
AutoCAD里工具-選項里有一個設置顯示精度的地方,如果設得低的話,顯示圓時也是不光滑的。
- O1 l- u& P% ~4 e3 z8 o如果這個值設置的足夠高,那么曲線(如漸開線)是否光滑取決于我們用多少點描述它以及畫線
) Y+ S" K$ Z1 ~的方法。最簡單的畫線方法是用直線連接這些點,當取得點數多的時候可以很光滑,可是在放大
/ w' U) z- f  Y% X; E) b5 n的時候就很容易變形。在CAD里還有一個畫線方法是用曲線連接這些點,CAD應該有這個命令的。
, Y* |0 l2 h' X4 {- n+ a  |4 o精度可以得到改善,但點與點之間的曲線仍然是系統自動生成的,和原始的精確方程還是會有一定7 w( H3 w8 q3 `+ E) A6 T
差距。  Z1 h: q+ @. g
還有我聽說在proe里直接輸入方程式而不指定精度就能自動生成曲線,而且放大之后看起來也
' [& R+ }& ^* f很光滑,不知道是不是使用了變步長的思想。) \4 S, o! z4 W

% X: G, j4 ~, R我總結了變步長的思想要點是; `, a. [1 t' ?$ W/ f" ~" ^
1用方程來描述對象(如果原始數據是離散的點則先擬合方程)
$ P, Y% p: Z; L( O+ n; D) C2決定點的個數n
9 b1 H0 E( L) ], r0 f3根據顯示區域算出需要顯示區域的定義域,然后由方程生成n個點
# C' b! g8 Z1 w( |3 k/ G4 b2 u4用直線或曲線連接這n個點- M/ s) u* \; L0 U% W9 T
5顯示區域變化的話重復3
9 d- K- k& k$ y( J1 t這樣顯示區域的精度永遠是n個點,在需要精確仿真時也可以根據需要隨時更改n的值
/ a4 f1 K, R# x或者把原始定義域分成一個個大小為n的塊分別計算(數組大小可以不變,函數重復利用)# S+ }( ]8 \& B' x+ M
% b- A) B" ^- f% o' }. O+ y: o
傳統方法主要是一開始就固定了原始定義域是n個點。我對autocad里實現變步長還沒思路。- N) b, F: r9 L) r0 `
我想變步長的方法主要是應用在自己編寫的軟件中比較容易實現。
作者: gear_making    時間: 2006-12-21 22:21
標題: Re: 以前做的三維齒輪簡易模型
呵呵,不錯,比我研究精神高。3 r( y3 Z( M$ G. z: f
如果要在齒面上實現光滑連接,最好使用NURBS曲面實現,既簡單,計算量又小,而且精度高。
' C' b3 U/ [) e- o0 z8 k  w) j如果使用VC程序實現,也許我可以幫一點忙。7 i$ ^# g4 t; @: e; h+ P
但是,樓主朝這個方向努力了,很是佩服。
作者: lizhongfa    時間: 2006-12-22 11:37
標題: Re: 以前做的三維齒輪簡易模型
這是用在哪方面的?4 b; p1 G/ F  N, [. A0 J" F0 a% B

作者: kevinyang    時間: 2006-12-22 11:42
標題: Re: 以前做的三維齒輪簡易模型
能建成實體模型就更漂亮了。可以考慮Open GL.
作者: zy_gear    時間: 2006-12-24 14:52
標題: Re: 以前做的三維齒輪簡易模型
齒根部過渡曲線一般做什么曲線,我翻看了一本機械設計手冊,可上面說的很麻煩,分成好幾種,大家一般做什么曲線,至于齒頂倒角,一般倒個0.38倍模數就可以了,一般的機械設計手冊也都是為0.38*m.呵呵!
作者: zy_gear    時間: 2006-12-24 14:56
標題: Re: 以前做的三維齒輪簡易模型
糾正一下,0.38*m為齒根倒角,不好意思.
作者: yonk    時間: 2006-12-27 14:27
標題: Re: 以前做的三維齒輪簡易模型
是編程高手,希望你能出售機械軟件來提升機械制造和設計的水平
作者: 笑天716    時間: 2008-6-2 16:10
標題: 回復 5# 阿松 的帖子
在用了適當的3維軟件后這就不是問題了,用樣條曲線可以很光滑地把一段函數表達的曲線表示在屏幕上當然也可以造出齒輪,傘齒輪等各種復雜函數表達的曲線、曲面,連維齒輪上的球面漸開線也可以清楚地表達出來的。
作者: logxing    時間: 2008-6-3 14:01
現在看來,顯示并不是最重要的問題。重要的問題是數學模型,就是曲面方程,運動方程,交線,交點,包絡線方程,包絡面方程的計算。有了這些東西,就可以算出任何想知道的東西。而顯示只是把計算結果表現出來的一種形式。
作者: honghuzhonggong    時間: 2008-6-13 23:09
樓主做的真好   我不知道這是用什么軟件做的    VB是什么軟件啊   
' f/ }2 P& Y1 g1 g* _我知道PRO/E可以做




歡迎光臨 機械社區 (http://m.whclglass.com.cn/) Powered by Discuz! X3.5