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

eryar

PipeCAD - Plant Piping Design Software.
PlantAssistant - Translate AVEVA RVM/SP3D VUE to glTF, STEP, etc.
posts - 606, comments - 590, trackbacks - 0, articles - 0

OpenCASCADE Ring Type Spring Modeling

Posted on 2016-03-05 00:51 eryar 閱讀(2290) 評(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),再用圓形陳列來得到這個(gè)環(huán)形彈簧。

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

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)面還是很簡單的,只需要以下幾條命令:

pload ALL 

torus t 
1 0.3 

mkface f t 

vdisplay f 

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

http://m.shnenglu.com/eryar/archive/2015/07/09/211212.html ,是否可以利用圓環(huán)面來生成圓環(huán)彈簧呢?實(shí)踐是檢驗(yàn)真理的唯一標(biāo)準(zhǔn),隨便嘗試,反正失敗了也沒有什么損失。要利用pcurve就要找出曲面及其參數(shù)空間的一條二維曲線,現(xiàn)在初步確定了曲面為torus面,下面再來尋找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í),先用最簡單的一次曲線直線來嘗試下,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的斜率來實(shí)現(xiàn)。

wps_clip_image-17217

Figure 2.5 Torus Spring

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

3.Modeling in Draw Test Harness

將上述放在一起來實(shí)現(xiàn)一個(gè)環(huán)形彈簧的造型,為了便于測(cè)試,主要是在Draw Test Harness中使用Tcl腳本來測(cè)試效果。使用Tcl腳本來測(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腳本來嘗試自己的想法,將會(huì)感覺到腳本的便利性。其實(shí)在OpenCASCADE的官網(wǎng)上也是提倡使用Tcl腳本來報(bào)告bug。

5. References

1. OpenCASCADE BRep Format

2. Shing Liu. Make Helix Curve in OpenCASCADE. 

http://m.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>
            欧美在线视频全部完| 国产综合香蕉五月婷在线| 一本久道久久综合狠狠爱| 一区二区三区.www| 国产精品精品视频| 午夜在线精品偷拍| 欧美大片国产精品| 亚洲少妇中出一区| 国产日韩精品视频一区二区三区| 久久久久久999| 亚洲精品视频在线播放| 欧美一级在线播放| 亚洲福利一区| 国产精品第2页| 久久精品国亚洲| 日韩一级在线观看| 久久久之久亚州精品露出| 亚洲精品孕妇| 国产香蕉97碰碰久久人人| 欧美成人免费全部观看天天性色| 99热免费精品| 噜噜爱69成人精品| 国产精品99久久久久久宅男| 国产一区二区三区在线观看视频| 欧美国产视频在线| 欧美专区在线播放| 日韩视频第一页| 噜噜噜久久亚洲精品国产品小说| 在线视频中文亚洲| 伊人久久综合97精品| 国产精品二区二区三区| 女女同性精品视频| 欧美一区影院| 一区二区三区波多野结衣在线观看| 可以看av的网站久久看| 亚洲一区二区三区乱码aⅴ蜜桃女 亚洲一区二区三区乱码aⅴ | 午夜精品亚洲一区二区三区嫩草| 在线观看欧美| 国产精品女人久久久久久| 欧美成年人视频| 久久精品一本久久99精品| 亚洲视频二区| 亚洲三级视频| 久久综合狠狠综合久久激情| 亚洲一区二区精品视频| 亚洲精品久久久久久下一站| 国内久久婷婷综合| 国产欧美日韩三区| 国产精品成人一区二区三区吃奶 | 亚洲午夜免费视频| 亚洲激情在线播放| 在线观看成人小视频| 国产伦精品一区二区三区在线观看 | 亚洲大片在线| 欧美aa国产视频| 久久久最新网址| 欧美中文字幕久久| 欧美亚洲免费高清在线观看| 亚洲午夜极品| 中文一区字幕| 宅男精品视频| 亚洲视频一区二区| 亚洲深夜av| 亚洲一级黄色| 亚洲影视综合| 校园春色国产精品| 久久成人这里只有精品| 欧美亚洲免费在线| 久久成人免费电影| 久久精品国产免费看久久精品| 欧美一区二区视频在线观看| 香蕉成人啪国产精品视频综合网| 亚洲一区欧美一区| 欧美在线免费视屏| 久久九九免费| 蜜桃久久av一区| 欧美成人资源| 亚洲久久一区| 亚洲欧美国产一区二区三区| 亚洲欧美在线aaa| 欧美一区二区三区精品电影| 欧美中文字幕| 麻豆av一区二区三区| 女同性一区二区三区人了人一 | 精品999日本| 亚洲国产精品一区制服丝袜 | 久久久xxx| 猫咪成人在线观看| 亚洲国产精品一区制服丝袜| 亚洲人精品午夜在线观看| 亚洲理论在线| 亚洲欧美激情视频| 久久久久久久久岛国免费| 欧美承认网站| 欧美三级不卡| 国内精品视频666| 亚洲美女网站| 欧美一区二区私人影院日本| 久久伊伊香蕉| 亚洲精品乱码久久久久久日本蜜臀 | 牛夜精品久久久久久久99黑人| 欧美人在线观看| 国产欧美日韩综合精品二区| 在线观看国产成人av片| 一区二区三区欧美| 久久精品综合网| 亚洲国产精品一区在线观看不卡| 亚洲素人一区二区| 久久亚洲视频| 国产精品久久久久999| 伊人久久亚洲美女图片| 这里是久久伊人| 噜噜噜91成人网| 亚洲视频免费看| 欧美成人中文字幕| 国产日韩一区欧美| 一区二区三区高清在线| 久久免费视频网| a4yy欧美一区二区三区| 久久亚洲美女| 国产亚洲欧美激情| 一本综合精品| 欧美xx视频| 午夜精品久久久久久99热软件| 欧美激情精品久久久久久久变态| 国产伦理精品不卡| 亚洲视频中文字幕| 欧美福利电影网| 久久精品1区| 国产农村妇女精品| 一本一本久久a久久精品综合妖精| 卡一卡二国产精品| 亚洲欧美另类综合偷拍| 欧美日韩免费一区二区三区| 一区二区三区在线不卡| 欧美怡红院视频| 99精品国产福利在线观看免费| 久久一区二区三区四区| 国产丝袜一区二区| 欧美在线播放一区二区| 一区二区不卡在线视频 午夜欧美不卡'| 久久综合九色九九| 精品成人一区二区| 久久久精品五月天| 午夜电影亚洲| 国产精品免费aⅴ片在线观看| 99热精品在线观看| 亚洲精品1区2区| 欧美h视频在线| 亚洲日本欧美日韩高观看| 久久综合色88| 久久精品亚洲一区二区| 好吊色欧美一区二区三区四区| 小处雏高清一区二区三区| 亚洲一区二区在线免费观看| 欧美亚韩一区| 亚洲女人天堂成人av在线| 在线视频欧美一区| 国产精品久久午夜夜伦鲁鲁| 亚洲综合色婷婷| 亚洲影视在线| 国产免费成人av| 久久久999精品| 久久国产高清| 亚洲高清123| 亚洲黄色av| 欧美日韩另类综合| 亚洲自拍偷拍麻豆| 性欧美暴力猛交69hd| 国产在线观看一区| 麻豆精品网站| 欧美91大片| 亚洲欧美国产精品va在线观看| 亚洲一区二区三区在线视频| 国产精品私人影院| 久久亚洲影音av资源网| 开心色5月久久精品| 亚洲卡通欧美制服中文| 夜夜精品视频一区二区| 国产精品永久免费观看| 久久人人爽人人爽爽久久| 免费久久99精品国产自在现线| 99热在线精品观看| 亚洲欧美日韩国产一区| 一区二区在线观看视频在线观看| 欧美顶级少妇做爰| 欧美午夜精品久久久久免费视| 性欧美激情精品| 久久久久女教师免费一区| 亚洲美女电影在线| 亚洲免费一区二区| 亚洲福利小视频| 亚洲视频一区在线观看| 一区二区三区在线高清| 亚洲毛片在线免费观看| 国产午夜精品久久久久久免费视 | 欧美国产视频日韩| 欧美午夜视频在线观看| 久久久一二三| 欧美午夜精品久久久久久久|