主权项 |
一种三维曲线单侧光顺方法,包括以下步骤:1)、在冲压坐标系内对原始三维曲线进行等弧长Δs离散,原始三维曲线被离散成多个离散点,第一个离散点为起点,最后一个离散点为终点,离散点两两之间按顺序均连成直线段;2)、确定冲压方向,将所有直线段的矢量方向分别与冲压方向进行叉乘,获得所有直线段的正向偏置方向;3)、以正向偏置方向为基准,计算相邻两直线段的夹角θ,根据夹角θ的大小判断两相邻直线段所交点的离散点的类型;若θ为0°、180°或360°,则所述离散点为平直点;若180°θ<360°,则所述离散点为内凹点;若0°<θ<180°,则所述离散点为外凸点;4)、过第一段直线段L<sub>1</sub>(P<sub>L1,1</sub>,P<sub>L1,2</sub>)并以冲压方向为法向生成一基准平面,在所述基准平面上,以起点P<sub>L1,1</sub>的正向偏置方向为基准,距离起点P<sub>L1,1</sub>为R的位置生成一个半径为R的R圆,所述R圆过起点P<sub>L1,1</sub>并与第一段直线段L<sub>1</sub>(P<sub>L1,1</sub>,P<sub>L1,2</sub>)相切;5)、将R圆在第一段直线段L<sub>1</sub>(P<sub>L1,1</sub>,P<sub>L1,2</sub>)上进行滚动,可获得R圆所滚过的区域,判断R圆所滚过的区域与其他直线段的相交关系;根据P<sub>L1,2</sub>点类型,执行不同步骤,若P<sub>L1,2</sub>点为平直点或外凸点执行步骤6),若P<sub>L1,2</sub>点为内凹点则执行步骤7);6)、R圆从P<sub>L1,1</sub>滚至P<sub>L1,2</sub>点时,判断R圆所滚过的区域与其他直线段进行相交关系判断;无直线段与所述区域相交则执行步骤8),有直线段与所述区域相交则执行步骤9);7)、R圆从P<sub>L1,1</sub>滚至P<sub>L1,2</sub>点时,继续滚动,直到R圆与第一段直线段L<sub>1</sub>(P<sub>L1,1</sub>,P<sub>L1,2</sub>)的相邻直线段L<sub>2</sub>(P<sub>L2,2</sub>,P<sub>L2,3</sub>)在P<sub>L2,2</sub>(P<sub>L1,2</sub>)点相切时为止;在R圆继续滚动过程中,R圆与P<sub>L1,2</sub>点的接触轨迹未发生变化,而R圆的圆心轨迹在变化;以R圆滚动所覆盖的区域与其他直线段进行相交关系判断;无直线段与所述区域相交则执行步骤8),有直线段与所述区域相交则执行步骤9);8)、记录R圆的接触轨迹和圆心轨迹,接触轨迹即为原始曲线光顺后的曲线,圆心轨迹为原始曲线单向偏置R后的曲线,执行步骤10);9)、统计所有与R圆所滚过的区域相交的直线段集合,计算出最先与圆滚区域发生接触的直线段L<sub>K</sub>,并记录R圆与L<sub>1</sub>和L<sub>K</sub>两条线段恰好接触时的切点(A,B),两切点之间以R圆的圆弧进行过渡,则光顺后的曲线由相切的(P<sub>L1,1</sub>,A)的直线段和(A,B)的圆弧段组成,R圆的圆心轨迹为单向偏置的曲线;以切点B为直线L<sub>k</sub>的新起点,得到新的直线段L<sub>K1</sub>(B,P<sub>LK,K+1</sub>)替换原有的直线段L<sub>K</sub>;将L<sub>K1</sub>设置为L<sub>1</sub>的相邻直线段;执行下一步骤(10);10)、以L<sub>1</sub>的相邻直线段作为L<sub>1</sub>,重复上述4)~9)的步骤,直到最后一段离散直线段;获得R圆滚动的接触轨迹,将接触轨迹拟合成一条样条曲线,获得原始三维曲线在光顺误差为R时的单侧光顺曲线;获得R圆滚动时的圆心路径,将所述圆心路径拟合成一条样条曲线,得到原始三维曲线偏置距离为R的光顺偏置曲线。 |