发明名称 一种基于位置动力学的角度弯曲模型的仿真方法
摘要 本发明涉及一种基于位置动力学的角度弯曲模型的仿真方法,其包括以下步骤:1、制作需要仿真的可变形体的网格模型文件,将网格模型文件的数据导入到可变形体仿真系统中;2、定义可变形体的网格模型文件的变量;3、根据牛顿第二定律和质点的运动定理,计算可变形体网格模型在受外力f<sub>ext</sub>作用了时间步长Δt之后的节点预测位置p<sub>i</sub>;4、在可变形体网格模型的节点之间构建角度弯曲模型;5、输出可变形体网格模型在节点准确位置x<sub>i</sub>处的图像,同时把节点准确位置x<sub>i</sub>作为下一个时间步长的节点初始位置;6、重复步骤3~5,依次输出可变形体网格模型的每一帧图像,直到得到可变形体弯曲变形的仿真动画为止。本发明的方法降低了计算过程的复杂度,减少了计算代价。
申请公布号 CN104268305A 申请公布日期 2015.01.07
申请号 CN201410374226.8 申请日期 2014.07.31
申请人 西安电子科技大学 发明人 王义峰;吴晓婷;王罡
分类号 G06F17/50(2006.01)I 主分类号 G06F17/50(2006.01)I
代理机构 北京世誉鑫诚专利代理事务所(普通合伙) 11368 代理人 郭官厚
主权项 一种基于位置动力学的角度弯曲模型的仿真方法,其特征在于,包括以下步骤:(1)、用图形设计软件制作需要仿真的可变形体的网格模型文件,通过软件接口将所述网格模型文件的数据导入到可变形体仿真系统中;(2)、定义步骤(1)所述可变形体的网格模型文件的三个变量,即仿真过程中第i个节点的位置x<sub>i</sub>、速度ν<sub>i</sub>、质量m<sub>i</sub>,其中i∈[1,n],n为所述网格模型的节点总数,第i个节点的初始位置<img file="FDA0000546860870000017.GIF" wi="51" he="65" />为所述网格模型导入时初始坐标,初始速度<img file="FDA0000546860870000011.GIF" wi="169" he="81" />m<sub>i</sub>的值为1/n;(3)、设所述仿真系统每一帧图像的时间步长为Δt,所述可变形体网格模型在仿真过程中受到的外力为f<sub>ext</sub>;根据牛顿第二定律和质点的运动定理,计算所述可变形体网格模型在受外力f<sub>ext</sub>作用了时间步长Δt之后的节点预测位置p<sub>i</sub>,p<sub>i</sub>的计算公式为:<maths num="0001" id="cmaths0001"><math><![CDATA[<mfenced open='{' close=''><mtable><mtr><mtd><msub><mi>v</mi><mi>i</mi></msub><mo>=</mo><msubsup><mi>v</mi><mi>i</mi><mn>0</mn></msubsup><mo>+</mo><mi>&Delta;t</mi><mo>&CenterDot;</mo><msub><mi>&omega;</mi><mi>i</mi></msub><mo>&CenterDot;</mo><msub><mi>f</mi><mi>ext</mi></msub></mtd></mtr><mtr><mtd><msub><mi>p</mi><mi>i</mi></msub><mo>=</mo><msubsup><mi>x</mi><mi>i</mi><mn>0</mn></msubsup><mo>+</mo><mi>&Delta;t</mi><mo>&CenterDot;</mo><msub><mi>v</mi><mi>i</mi></msub></mtd></mtr></mtable></mfenced>]]></math><img file="FDA0000546860870000012.GIF" wi="431" he="173" /></maths>其中:ω<sub>i</sub>=1/m<sub>i</sub>,m<sub>i</sub>为第i个节点的质量,ν<sub>i</sub>为第i个节点的速度,<img file="FDA0000546860870000013.GIF" wi="125" he="79" />分别为第i个节点在该时间步长Δt起始时刻的初始准确位置和初始速度;(4)、在所述可变形体网格模型的节点之间构建角度弯曲模型,包括以下步骤:(4a)、根据节点的网格剖分关系建立相邻节点集,定义M<sub>i</sub>为可变形体网格模型第i个节点v<sub>i</sub>的相邻节点集;(4b)、为所述相邻节点集M<sub>i</sub>中的每个节点v<sub>k</sub>找到该相邻节点集中另一个节点v<sub>best</sub>,构成节点串[v<sub>best</sub>,v<sub>k</sub>,v<sub>i</sub>],使得边v<sub>i</sub>v<sub>k</sub>和边v<sub>i</sub>v<sub>best</sub>夹角<img file="FDA0000546860870000014.GIF" wi="95" he="68" />为最大角,<img file="FDA0000546860870000015.GIF" wi="280" he="83" />其中k∈[1,m],m为所述相邻节点集M<sub>i</sub>中的节点总数;(4c)、在步骤(4b)所述节点串[v<sub>best</sub>,v<sub>k</sub>,v<sub>i</sub>]组成的三角形Δv<sub>k</sub>v<sub>i</sub>v<sub>best</sub>上构建角度弯曲模型:<img file="FDA0000546860870000016.GIF" wi="761" he="71" />其中p<sub>1</sub>,p<sub>2</sub>,p<sub>3</sub>分别为v<sub>best</sub>,v<sub>k</sub>,v<sub>i</sub>的节点预测位置,n<sub>1</sub>为边v<sub>i</sub>v<sub>k</sub>的单位向量,n<sub>2</sub>为边v<sub>i</sub>v<sub>best</sub>的单位向量,<img file="FDA0000546860870000021.GIF" wi="63" he="61" />为所述可变形体网格模型导入仿真系统时边v<sub>i</sub>v<sub>k</sub>和边v<sub>i</sub>v<sub>best</sub>的初始夹角;(4d)由步骤(4c)所述角度弯曲模型求出节点预测位置和节点准确位置之间的误差修正量Δp<sub>i</sub>,将该误差修正量Δp<sub>i</sub>与节点预测位置p<sub>i</sub>相加,得到节点准确位置x<sub>i</sub>,其中Δp<sub>i</sub>的计算公式为:<img file="FDA0000546860870000022.GIF" wi="986" he="190" />其中:<img file="FDA0000546860870000023.GIF" wi="675" he="150" />q<sub>3</sub>=‑q<sub>1</sub>‑q<sub>2</sub>,d=n<sub>1</sub>·n<sub>2</sub>;p<sub>1</sub>,p<sub>2</sub>,p<sub>3</sub>分别对应虚拟三角形中三个顶点的节点预测位置,n<sub>1</sub>和n<sub>2</sub>为构成最大角的两条边的单位向量;(5)输出所述可变形体网格模型在节点准确位置x<sub>i</sub>处的图像,同时把节点准确位置x<sub>i</sub>作为下一个时间步长的节点起始位置,返回步骤(3),得到可变形体网格模型的下一帧图像;(6)重复步骤(3)~(5),依次输出可变形体网格模型的每一帧图像,直到得到所述可变形体弯曲变形的仿真动画为止。
地址 710071 陕西省西安市太白南路二号