国产精品乱码一区-性开放网站-少妇又紧又爽视频-西西大胆午夜人体视频-国产极品一区-欧美成人tv-四虎av在线-国产无遮挡无码视频免费软件-中文字幕亚洲乱码熟女一区二区-日产精品一区二区三区在线观看-亚洲国产亚综合在线区-五月婷婷综合色-亚洲日本视频在线观看-97精品人人妻人人-久久久久久一区二区三区四区别墅-www.免费av-波多野结衣绝顶大高潮-日本在线a一区视频高清视频-强美女免费网站在线视频-亚洲永久免费
機(jī)械社區(qū)
標(biāo)題:
UG后處理tcl語言解釋
[打印本頁]
作者:
我走更遠(yuǎn)
時(shí)間:
2016-8-31 17:12
標(biāo)題:
UG后處理tcl語言解釋
我曾經(jīng)學(xué)習(xí)如何設(shè)置UG的后處理器,進(jìn)入后處理構(gòu)造器后,原來進(jìn)行設(shè)置時(shí),要用到tcl語言,自己不會(huì)但通過搜索網(wǎng)上的教程和程序,也能基本滿足使用要求,但總是心里沒底的感覺。
7 A: L1 Z5 H6 f3 T' v. Y
原來這個(gè)tcl語言是可以學(xué)習(xí)的,有空下載點(diǎn)資料來學(xué)習(xí)一下。
+ x+ B! E8 p. ` c( J
資料:
+ |$ L& h2 t$ E& {8 `6 }" y9 u! v
TCL語言
Tcl (最早稱為“工具命令語言”"Tool Command Language", 但是目前已經(jīng)不是這個(gè)含義,不過我們?nèi)匀环Q呼它為TCL)是一種 腳本語言。 由John Ousterhout創(chuàng)建。 TCL很好學(xué),功能很強(qiáng)大。TCL經(jīng)常被用于 快速原型開發(fā),腳本編程, GUI和測(cè)試等方面。
Tcl (最早稱為“工具命令語言”"Tool Command Language", 但是目前已經(jīng)不是這個(gè)含義,不過我們?nèi)匀环Q呼它為TCL)是一種 腳本語言。 由John Ousterhout創(chuàng)建。 TCL很好學(xué),功能很強(qiáng)大。TCL經(jīng)常被用于 快速原型開發(fā),腳本編程, GUI和測(cè)試等方面。TCL念作“踢叩” "tickle". Tcl的特性包括:
* 任何東西都是一條命令,包括語法結(jié)構(gòu)(for, if等)。 * 任何事物都可以重新定義和重載。 * 所有的數(shù)據(jù)類型都可以看作字符串。 * 語法規(guī)則相當(dāng)簡單
* 提供事件驅(qū)動(dòng)給Socket和文件?;跁r(shí)間或者用戶定義的事件也可以。
* 動(dòng)態(tài)的域定義。
* 很容易用C, C++,或者Java擴(kuò)展。
* 解釋語言,代碼能夠動(dòng)態(tài)的改變。 * 完全的Unicode支持。
* 平臺(tái)無關(guān)。Win32, UNIX, Mac 上都可以跑。 * 和Windows的GUI緊密集成。 Tk * 代碼緊湊,易于維護(hù)。
TCL本身不提供面向?qū)ο蟮闹С?。但是語言本身很容易擴(kuò)展到支持面向?qū)ο?。許多C語言擴(kuò)展都提供面向?qū)ο竽芰?,包括XOTcl, Incr Tcl 等。另外SNIT擴(kuò)展本身就是用TCL寫的。
使用最廣泛的TCL擴(kuò)展是TK。 TK提供了各種OS平臺(tái)下的圖形用戶界面GUI。連強(qiáng)大的Python語言都不單獨(dú)提供自己的GUI,而是提供接口適配到TK上。另一個(gè)流行的擴(kuò)展包是Expect. Expect提供了通過終端自動(dòng)執(zhí)行命令的能力,例如(passwd, ftp, telnet等命令驅(qū)動(dòng)的外殼). 具體例子
下面是TCL程序的例子: #!/bin/sh
# next line restarts using tclsh in path \
; G) }! I8 Z. E5 @
exec tclsh ${1+"$@"} # echo server that can handle multiple # simultaneous connections.
O a F6 S3 N% U6 d
proc newConnection { sock addr port } { # client connections will be handled in # line-buffered, non-blocking mode
( p5 b" {0 W; k: j" m
fconfigure $sock -blocking no -buffering line # call handleData when socket is readable
& g; j# J1 v" T1 }. ?7 Z* I* }
fileevent $sock readable [ list handleData $sock ] }
8 p1 x y, r' T
proc handleData {
/ y! ~) S [7 Z1 V9 [4 Y* n
puts $sock [ gets $sock ] if { [ eof $sock ] } { close $sock } }
: _( W4 c/ d" V
# handle all connections to port given # as argument when server was invoked # by calling newConnection
1 X6 g- C' ?3 a
set port [ lindex $argv 0 ]
! U* J6 ` h7 E7 i# E
socket -server newConnection $port # enter the event loop by waiting
. u$ @. M3 m v0 e
# on a dummy variable that is otherwise # unused.
& p5 w( W, K0 f5 ~ Z, m
vwait forever
/ V& {8 f/ [0 Q6 @
另外一個(gè)TK的例子 (來自 A simple A/D clock) 它使用了定時(shí)器時(shí)間,3行就顯示了一個(gè)時(shí)鐘。
0 n$ x3 W# ]- d2 {: |5 r+ y# |2 @
proc every {ms body} {eval $body; after $ms [info level 0]} pack [label .clock -textvar time]
3 y# N2 N$ I3 y7 I+ ?
every 1000 {set ::time [clock format [clock sec]
" ^2 I3 @3 Q2 T) M/ s7 N
-format %H:%M:%S]} # RS
: R/ e% y) M# j9 q9 h7 l. ]5 U! F% w
解釋:第一行定義了過程every, 每隔ms毫秒,就重新執(zhí)行body代碼。第二行創(chuàng)建了標(biāo)簽起內(nèi)容由time變量決定。第3行中設(shè)置定時(shí)器,time變量從當(dāng)前時(shí)間中每秒更新一次。
) `! F$ X0 t, F, {# _5 r+ a% B* ]$ r3 z
+ y: t) z& W8 Q4 q
$ W8 G A* N! n
2 x% y: f+ ]# V7 R$ ~" Z: [& ]3 W
作者:
未來第一站
時(shí)間:
2016-8-31 21:48
路過,樓主有心人啊.
作者:
FANUC_JKKw3
時(shí)間:
2017-9-8 17:42
看不懂
作者:
moldzsdj
時(shí)間:
2017-10-9 09:44
雖還不懂,努力在看!
作者:
liaocao622
時(shí)間:
2017-11-2 18:58
0 b- d! `7 s9 ^3 b" r: L
路過,樓主有心人啊
作者:
3278361064
時(shí)間:
2017-11-5 15:36
歡迎光臨 機(jī)械社區(qū) (http://www.whclglass.com.cn/)
Powered by Discuz! X3.5