System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本成果涉及三维图形领域绞车模拟仿真,特别涉及一种可变运动轨迹的千米缆绳模拟仿真方法。
技术介绍
1、21世纪以来,虚拟仿真技术发展迅速,在教学、游戏、生产等领域被广泛应用。缆绳模拟的典型方式是,通过三维软件建立模型,利用辅助工具生成一个个的圆环,复制圆环形成一圈圈的缆绳,当达到所需宽度时重新生成稍大的圆环,重复上述步骤,直到达成所需的长度,最后从三维软件中导出成fbx等格式模型放入软件中使用。该方式可以生成较为真实的缆绳,但该方式生成的缆绳一旦生成就已固定形态,无法灵活变动,或者生成的缆绳以一种特定的形式重复运动从而达成运动效果,此方式也只适合在固定视角下查看,自由漫游观察的视角容易看出断开的连接点,而且缆绳的运动长度,速度等模拟量控制复杂,仿真效果用途单一。
技术实现思路
1、本专利技术面向虚拟仿真教学等领域绞车收放缆绳模拟的需求,提供一种可变运动轨迹的千米缆绳模拟仿真方法,以分节点方式,通过控制节点运动带动网格运动的方式模拟由圆环缠绕形式、弧线形式和直线形式组合形成的绞车缆绳的收放操作,通过建立一系列的节点表达缆绳,通过建立虚拟节点与网格的联系,经过分割转换,动态加载等处理方式进行千米缆绳的生成与控制,表现缆绳收放动态效果更加优异。
2、本专利技术的技术方案如下:一种可变运动轨迹的千米缆绳模拟仿真方法,包括以下步骤:
3、步骤1,读取父节点队列;
4、步骤2,根据缆绳长度和父节点位置生成子节点或重新设定子节点位置;
5、步骤3,以
6、步骤4,根据展示类型(卷筒缆、弧形缆和直线缆)建立输入控制点;
7、步骤5,由输入控制点计算子节点数量和位置;
8、步骤6,在程序循环中判断输入控制点位置是否变动;若输入控制点位置变动,则重复步骤2,否则进入下一程序循环。
9、进一步,所述步骤1中,父节点决定了子节点的排列方式,父节点可以有多个,一般情况下为一个卷筒缆父节点、一个弧形缆父节点,一个直线缆父节点。
10、进一步,所述步骤4中,其展示类型为卷筒缆、弧形缆、直线缆。其中卷筒缆的生成方式为以当前父节点坐标为圆心为坐标a的起始坐标,以最小半径为初始半径l,每两节点表达缆长为l0,以每段节点最小长度计算旋转角度a1。垂直于y方向旋转从a指向x方向,长度为l的向量l1,每次旋转角度为a1,每次旋转垂直y向上平移r1。平移量计算方式为r0/n,r0为缆的半径,n为旋转一圈所需节点数量。当旋转量达到指定宽度时旋转半径累加r0,平移量乘以-1。依次计算直到所有卷筒缆父节点下所有子节点均设定初始位置。弧形缆以贝塞尔曲线计算,从曲线以步长l0取点。直线缆以平均插值方式取点。
11、进一步,所述步骤5中,卷筒缆的输入控制点控制卷筒父节点上最后一点的位置,其位置取最后一点的x和z值,最后一点的y值以控制点为准。弧形缆的控制点为贝塞尔曲线的端点,当控制点位置改变时重新从曲线上取点。直线缆的控制点为两端点。
12、进一步,所述步骤6每个程序循环为程序帧率刷新周期,在每帧中判断输入控制点位置是否变动,若输入控制点位置变动,则重复步骤2,否则进入下一程序循环。
13、与现有技术相比本专利技术具有以下优点:
14、传统做法中缆绳根据卷筒大小人工画缆,每次制作的缆绳只能在当前场景中使用,大段缆时采用分割处理,而且产生的缆绳无法运动或者采用移动uv的方式产生视觉上的移动效果。本专利技术通过建立一系列的节点表达缆绳,通过建立虚拟节点与网格的联系,经过分割转换,动态加载等处理方式进行千米缆绳的生成与控制,表现缆绳收放动态效果更加优异。
本文档来自技高网...【技术保护点】
1.一种可变运动轨迹的千米缆绳模拟仿真方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的一种可变运动轨迹的千米缆绳模拟仿真方法,其特征在于,所述步骤1中,父节点决定了子节点的排列方式,父节点可以有多个,一般情况下为一个卷筒缆父节点、一个弧形缆父节点,一个直线缆父节点。
3.根据权利要求1所述的一种可变运动轨迹的千米缆绳模拟仿真方法,其特征在于,所述步骤4中,其展示类型为卷筒缆、弧形缆、直线缆,其中卷筒缆的生成方式为以当前父节点坐标为圆心为坐标O1的起始坐标,以最小半径为初始半径L,每两节点表达缆长为L0,以每段节点最小长度计算旋转角度a1;垂直于Y方向旋转从O1指向X方向,长度为L的向量L1,每次旋转角度为a1,每次旋转垂直Y向上平移R1。
4.根据权利要求3所述的一种可变运动轨迹的千米缆绳模拟仿真方法,其特征在于,平移量计算方式为R0/n,R0为缆的半径,n为旋转一圈所需节点数量,当旋转量达到指定宽度时旋转半径累加R0,平移量乘以-1,依次计算直到所有卷筒缆父节点下所有子节点均设定初始位置。
5.根据权利要求3所述的一种可
6.根据权利要求3所述的一种可变运动轨迹的千米缆绳模拟仿真方法,其特征在于,所述步骤5中,卷筒缆的输入控制点控制卷筒父节点上最后一点的位置,其位置取最后一点的X和Z值,最后一点的Y值以控制点为准。
7.根据权利要求6所述的一种可变运动轨迹的千米缆绳模拟仿真方法,其特征在于,所述步骤5中,弧形缆的控制点为贝塞尔曲线的端点,当控制点位置改变时重新从曲线上取点;直线缆的控制点为两端点。
8.根据权利要求1所述的一种可变运动轨迹的千米缆绳模拟仿真方法,其特征在于,所述步骤6中,每个程序循环为程序帧率刷新周期,在每帧中判断输入控制点位置是否变动,若输入控制点位置变动,则重复步骤2,否则进入下一程序循环。
...【技术特征摘要】
1.一种可变运动轨迹的千米缆绳模拟仿真方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的一种可变运动轨迹的千米缆绳模拟仿真方法,其特征在于,所述步骤1中,父节点决定了子节点的排列方式,父节点可以有多个,一般情况下为一个卷筒缆父节点、一个弧形缆父节点,一个直线缆父节点。
3.根据权利要求1所述的一种可变运动轨迹的千米缆绳模拟仿真方法,其特征在于,所述步骤4中,其展示类型为卷筒缆、弧形缆、直线缆,其中卷筒缆的生成方式为以当前父节点坐标为圆心为坐标o1的起始坐标,以最小半径为初始半径l,每两节点表达缆长为l0,以每段节点最小长度计算旋转角度a1;垂直于y方向旋转从o1指向x方向,长度为l的向量l1,每次旋转角度为a1,每次旋转垂直y向上平移r1。
4.根据权利要求3所述的一种可变运动轨迹的千米缆绳模拟仿真方法,其特征在于,平移量计算方式为r0/n,r0为缆的半径,n为旋转一圈所需节点数量,当旋转量达到指定宽度时旋转半径累加r0...
【专利技术属性】
技术研发人员:张威,金晓帆,赵岩,
申请(专利权)人:中国船舶集团有限公司第七一五研究所,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。