青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

eryar

PipeCAD - Plant Piping Design Software.
RvmTranslator - Translate AVEVA RVM to OBJ, glTF, etc.
posts - 603, comments - 590, trackbacks - 0, articles - 0

OpenCASCADE Ring Type Spring Modeling

Posted on 2016-03-05 00:51 eryar 閱讀(2267) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 2.OpenCASCADE

OpenCASCADE Ring Type Spring Modeling

eryar@163.com

Abstract. The general method to directly create an edge is to give a 3D curve as the support(geometric domain) of the edge. The curve maybe defined as a 2D curve in the parametric space of a surface: PCurve. When you understand the pcurve, you can modeling some interesting shapes, such as bottle neck thread, helix spring, ring type spring. Etc. The paper is focus on the Ring Type Spring Modeling in OpenCASCADE Draw Test Harness by Tcl script.

Key Words. Spring, Helix, Tcl/Tk, 環(huán)形彈簧

1. Introduction

在上網(wǎng)的時(shí)候不經(jīng)意看到了ZWCAD論壇上的這么一個(gè)帖子:環(huán)形彈簧三維建模練習(xí):http://www.zwcad.com/community/forum.php?mod=viewthread&tid=2302

wps_clip_image-2001

Figure 1.1 Ring Type Spring

從上圖可見,這個(gè)圖形還是很有趣的,論壇中給出了在ZW中造型的一種方法,即先創(chuàng)建一個(gè)螺旋圓環(huán),再用圓形陳列來(lái)得到這個(gè)環(huán)形彈簧。

如何在OpenCASCADE中來(lái)造型呢?我想的方法是利用掃掠,關(guān)鍵就是掃掠的路徑環(huán)形螺放線的構(gòu)造出來(lái)。因?yàn)樵瓉?lái)使用過pcurve來(lái)生成過一個(gè)普通的彈簧,所以在想能不能在這個(gè)基礎(chǔ)上進(jìn)行擴(kuò)展,來(lái)對(duì)這種環(huán)形彈簧來(lái)造型。

2.PCurve 

根據(jù)pcurve的定義:The curve may be defined as a 2d curve in the parametric space of a surface. 可以看出pcurve的兩個(gè)特點(diǎn):

v pcurve是一條二維曲線;

v 與曲面相關(guān);

即pcurve就是曲面參數(shù)空間中一條二維曲線,pcurve上的點(diǎn)就是曲面參數(shù)空間中的點(diǎn),其映射過程為:pcurve根據(jù)一個(gè)參數(shù)x計(jì)算得到一個(gè)二維點(diǎn)(u,v),將這個(gè)二維點(diǎn)(u,v)作為曲面的參數(shù)計(jì)算出曲面上的點(diǎn)S(u,v),即為pcurve對(duì)應(yīng)到曲面上的曲線。因?yàn)槭黔h(huán)形的,所以我聯(lián)想到了Torus曲面,如下圖所示:

wps_clip_image-2987

Figure 2.1 Torus in OpenCASCADE Draw Test Harness

在Draw Test Harness中生成一個(gè)圓環(huán)面還是很簡(jiǎn)單的,只需要以下幾條命令:

pload ALL 

torus t 
1 0.3 

mkface f t 

vdisplay f 

根據(jù)利用圓柱面來(lái)對(duì)普通彈簧造型的方法“Make Helix Curve in OpenCASCADE”

http://www.shnenglu.com/eryar/archive/2015/07/09/211212.html ,是否可以利用圓環(huán)面來(lái)生成圓環(huán)彈簧呢?實(shí)踐是檢驗(yàn)真理的唯一標(biāo)準(zhǔn),隨便嘗試,反正失敗了也沒有什么損失。要利用pcurve就要找出曲面及其參數(shù)空間的一條二維曲線,現(xiàn)在初步確定了曲面為torus面,下面再來(lái)尋找pcurve。根據(jù)《OpenCASCADE BRep Format》中對(duì)于Torus的參數(shù)表示方程為:

wps_clip_image-16710

wps_clip_image-3246

由參數(shù)方程可知,torus面的參數(shù)空間為0到2PI的一個(gè)正方形區(qū)域,如下圖所示:

wps_clip_image-5822

Figure 2.2 PCurve of Torus Face

當(dāng)u=0或v=0時(shí),曲面的參數(shù)方程為:

wps_clip_image-24802

wps_clip_image-493wps_clip_image-14106

Figure 2.3 Torus curves when u=0 and v=0

對(duì)應(yīng)到參數(shù)空間分別為u軸上的直線和v軸上的直線。當(dāng)u取幾個(gè)固定值,v在參數(shù)空間任意變化時(shí),即可以得到圓環(huán)面上幾個(gè)圓形曲線。當(dāng)u,v參數(shù)連續(xù)變化時(shí),先用最簡(jiǎn)單的一次曲線直線來(lái)嘗試下,Tcl腳本如下所示:

 

# 
# make helix torus in OpenCASCADE. 
# Shing Liu(eryar@163.com) 
# 2016-02-20 21:00 


pload MODELING VISUALIZATION 

# use torus surface. 
torus aTorus 10 2 

set aSlope 
0.05 
line aLine2d 
0 0 $aSlope 1 
trim aSegment aLine2d 
0 2*pi 

# make edge by the pcurve. 
mkedge aHelixEdge aSegment aTorus 0 2*pi/$aSlope 

# there is no curve 3d in the pcurve edge. 
# so need this to approximate one. 

mkedgecurve aHelixEdge 0.01 

# display the edge. 
vdisplay  aHelixEdge 

生成結(jié)果如下圖所示:

wps_clip_image-19095

Figure 2.4 Torus Curve made by pcurve

其中螺距的調(diào)整可以通過調(diào)整pcurve的斜率來(lái)實(shí)現(xiàn)。

wps_clip_image-17217

Figure 2.5 Torus Spring

由圖可見,pcurve使用直線效果比較理想。曲線生成之后,只需要將一個(gè)輪廓沿著曲線掃掠即可。

3.Modeling in Draw Test Harness

將上述放在一起來(lái)實(shí)現(xiàn)一個(gè)環(huán)形彈簧的造型,為了便于測(cè)試,主要是在Draw Test Harness中使用Tcl腳本來(lái)測(cè)試效果。使用Tcl腳本來(lái)測(cè)試效果有很多好處,主要就是不需要編寫C++代碼,也不用編譯,可以實(shí)時(shí)檢驗(yàn)結(jié)果。而且OpenCASCADE的Tcl腳本也可以很方便地翻譯成C++代碼。所以學(xué)習(xí)一下Tcl腳本還是有很多好處的,如Tcl具有跨平臺(tái)的特性,通過使用腳本,可以對(duì)參數(shù)化有更進(jìn)一步的理解等。言歸正傳,下面給出環(huán)形彈簧造型的Tcl腳本:

 

#
# make helix torus(Ring Type Spring) in OpenCASCADE.
# Shing Liu(eryar@163.com)
# 2016-02-20 21:00
#


pload MODELING VISUALIZATION

# use torus surface.
torus aTorus 10 2

set aSlope 
0.05
line aLine2d 
0 0 $aSlope 1
trim aSegment aLine2d 
0 2*pi

# make edge by the pcurve.
mkedge aHelixEdge aSegment aTorus 0 2*pi/$aSlope

# there is no curve 3d in the pcurve edge.
# so need this to approximate one.

mkedgecurve aHelixEdge 0.01

wire aHelixWire aHelixEdge

# make the profile.
circle aProfile 12 0 0 1 1 1 0.3
mkedge aProfile aProfile
wire aProfile aProfile
mkplane aProfile aProfile

# display the profile.
vdisplay aProfile aHelixEdge

# loft the circle along the helix curve.
pipe aSpring aHelixWire aProfile

# display the result.
vdisplay aSpring
#vsetmaterial aSpring steel
vsetgradientbg 180 200 255 180 180 180 2
vsetdispmode 
1
vzbufftrihedron

set ray tracing
if { ! [catch {vrenderparams -raytrace -shadows -reflections -fsaa -rayDepth 5}] } {
  vtextureenv on 
1
}

生成結(jié)果如下圖所示:

wps_clip_image-6995

下圖是使用Ray Tracing后顯示的效果,感覺不錯(cuò):

wps_clip_image-31391

wps_clip_image-23847

4. Conclusion

綜上所述,理解了pcurve后可以對(duì)一些規(guī)則的有趣的曲線進(jìn)行造型。另外學(xué)會(huì)在Draw Test Harness中使用Tcl腳本來(lái)嘗試自己的想法,將會(huì)感覺到腳本的便利性。其實(shí)在OpenCASCADE的官網(wǎng)上也是提倡使用Tcl腳本來(lái)報(bào)告bug。

5. References

1. OpenCASCADE BRep Format

2. Shing Liu. Make Helix Curve in OpenCASCADE. 

http://www.shnenglu.com/eryar/archive/2015/07/09/211212.html

3. ZW3D community topic:

http://www.zwcad.com/community/forum.php?mod=viewthread&tid=2302

 

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美日韩国产欧| 欧美日韩一区精品| 国产精品免费网站在线观看| 一区二区欧美日韩视频| 9久草视频在线视频精品| 欧美三区视频| 欧美一级艳片视频免费观看| 新片速递亚洲合集欧美合集 | 亚洲第一主播视频| 免费欧美高清视频| 一区二区三区精品久久久| 一区二区三区精品视频在线观看| 国产精品制服诱惑| 奶水喷射视频一区| 欧美久久综合| 久久成人av少妇免费| 麻豆精品视频在线观看| 一区二区高清| 久久成人这里只有精品| 亚洲区欧美区| 亚洲欧美在线视频观看| 亚洲国产精品嫩草影院| 亚洲最新色图| 亚洲电影在线免费观看| 亚洲天堂第二页| 亚洲黄色av一区| 亚洲一区二区三区在线播放| 在线看欧美日韩| 在线午夜精品| 亚洲国产专区校园欧美| 午夜久久影院| 一区二区日韩精品| 久久人人爽国产| 午夜精品一区二区三区电影天堂| 卡一卡二国产精品| 欧美在线视屏| 欧美特黄一区| 亚洲黑丝在线| 在线观看91精品国产入口| 亚洲一区二区三区久久| 亚洲免费高清视频| 久久精品综合网| 午夜在线观看免费一区| 欧美日本高清| 欧美刺激性大交免费视频| 国产欧美日韩高清| 这里只有精品在线播放| 亚洲美洲欧洲综合国产一区| 久久天天躁夜夜躁狠狠躁2022| 欧美一区高清| 国产精品色一区二区三区| 亚洲精品乱码久久久久久黑人| 亚洲第一网站免费视频| 久久精品国产亚洲一区二区| 欧美一区二区视频网站| 国产精品久久久久久久久动漫| 亚洲日本中文字幕| 亚洲国产一区二区精品专区| 久久香蕉国产线看观看av| 久久伊人亚洲| 黄色国产精品| 久久亚洲色图| 欧美黑人多人双交| 亚洲国产视频一区二区| 久久综合一区二区| 欧美国产视频日韩| 最新热久久免费视频| 欧美国产激情二区三区| 欧美国产先锋| 亚洲精品日韩激情在线电影| 欧美国产另类| 99精品视频免费| 亚洲欧美中文字幕| 国产欧美大片| 久久男人资源视频| 欧美激情一区二区在线 | 亚洲七七久久综合桃花剧情介绍| 久久一区欧美| 亚洲人精品午夜在线观看| 在线一区二区三区四区五区| 国产精品电影网站| 午夜一区在线| 免费看的黄色欧美网站| 亚洲毛片播放| 国产精品激情电影| 欧美一区免费| 亚洲国产日韩欧美| 亚洲欧美视频在线观看| 黄色成人精品网站| 欧美激情精品久久久久久黑人| 99精品免费视频| 久久久精品国产免费观看同学| 永久91嫩草亚洲精品人人| 欧美精品成人一区二区在线观看| 狠狠色狠狠色综合系列| 久久精精品视频| 久久精品99国产精品| 国产精品久久久久国产精品日日 | 免费人成网站在线观看欧美高清| 亚洲人午夜精品| 亚洲欧美日韩成人| 激情欧美一区二区三区| 欧美日韩国产限制| 久久精品九九| 在线视频欧美一区| 嫩草影视亚洲| 亚洲欧美大片| 亚洲精品日本| 国产一区二区三区在线免费观看| 欧美久久久久久久| 久久久久久国产精品mv| 亚洲视频免费在线| 最新成人av网站| 久久综合成人精品亚洲另类欧美| 日韩一级不卡| 在线日韩精品视频| 国产目拍亚洲精品99久久精品| 欧美二区在线| 狼人社综合社区| 久久成人18免费观看| 亚洲天堂久久| 亚洲另类自拍| 亚洲欧洲精品成人久久奇米网| 久久午夜精品一区二区| 欧美亚洲日本国产| 亚洲午夜久久久久久尤物| 亚洲精选视频免费看| 亚洲成在线观看| 国语自产精品视频在线看一大j8| 国产精品青草久久久久福利99| 欧美日韩免费高清| 欧美va亚洲va日韩∨a综合色| 久久精品国产亚洲a| 欧美一区激情| 久久久久久国产精品mv| 久久福利电影| 久久久久久久综合| 久久久久**毛片大全| 欧美综合国产精品久久丁香| 篠田优中文在线播放第一区| 午夜在线一区二区| 欧美一区二区网站| 欧美一区二区三区在线看| 欧美一区二区私人影院日本| 欧美影院视频| 久久久久久97三级| 久久这里有精品15一区二区三区| 久久黄色级2电影| 久久夜色撩人精品| 欧美+日本+国产+在线a∨观看| 狂野欧美一区| 欧美精品一区二区三区蜜臀| 欧美日韩免费观看一区二区三区 | 欧美区在线观看| 欧美午夜精品理论片a级按摩 | 黄色av一区| 亚洲精品欧美激情| 一区二区欧美在线| 欧美一区亚洲一区| 六月婷婷久久| 亚洲国产精彩中文乱码av在线播放| 亚洲国产欧美国产综合一区| 亚洲久色影视| 午夜老司机精品| 免费视频一区| 国产精品裸体一区二区三区| 国产一区二区丝袜高跟鞋图片| 1769国产精品| 亚洲综合首页| 免费成人毛片| 夜夜嗨av色综合久久久综合网 | 欧美激情久久久| 99re6热只有精品免费观看| 亚洲午夜电影网| 久久夜色精品国产欧美乱| 欧美日韩亚洲一区三区| 国产午夜精品美女视频明星a级 | 永久免费视频成人| 亚洲一区二区三区777| 久久美女艺术照精彩视频福利播放| 欧美国产亚洲视频| 亚洲一区二区精品| 久久综合狠狠综合久久综青草| 欧美亚洲成人网| 亚洲激情一区二区| 欧美一区二区三区喷汁尤物| 亚洲第一区色| 久久xxxx| 国产精品盗摄久久久| 亚洲国产成人一区| 久久精品九九| 一区二区久久久久久| 麻豆免费精品视频| 国产午夜精品一区理论片飘花| 一区二区精品在线观看| 欧美成人一区二区三区| 欧美一二区视频| 国产精品一区久久久| 亚洲深夜av| 亚洲人成网站999久久久综合|