|
类型 |
数学函数 |
|
描述 |
将TABLE中的数据进行B样条平滑。 |
|
语法 |
B_SPLINE(type, data_start, points, data_out, ratio) type:类型,目前只支持1-B样条 data_start:图形数据在TABLE中的起始位置 points:图形数据的个数 data_out:平滑后的图形数据在TABLE中起始位置 ratio:B_SPLINE 函数的平滑比率,平滑后的个数为points * ratio
新增加样条控制点的自动计算功能,此功能配合MOVESPLINE样条曲线运动使用,4系列以上产品支持,4系列控制器固件版本20170621 B_SPLINE(type, axises, dtstartpos, dtendpos, dtlastpos, dtnexpos, dtoutcontrol1, dtoutcontrol2) type: 1 兼容原来的功能 11 为连续线段的第一条线段计算样条拟合的控制点. 12 为连续线段的中间线段计算样条拟合的控制点. 13 为连续线段的最后一条线段计算样条拟合的控制点. axises:参与样条插补的轴数 dtstartpos:线段起点坐标位于的table数组索引,多个轴连续存储不同的table,下同 dtendpos:线段终点坐标位于的table数组索引 dtlastpos:线段起点的前面点的坐标索引,用于计算参考,第一条线段此参数无用 dtnexpos:线段终点的后面点的坐标索引,用于计算参考,最后一天线段此参数无用 dtoutcontrol1:输出样条的控制点数据,贝塞尔的第1个控制点(起点也作为控制点除外) dtoutcontrol2:输出样条的控制点数据,贝塞尔的第2个控制点
起点、dtoutcontrol1、dtoutcontrol2、终点一起构成贝塞尔的4个控制点。 |
|
适用控制器 |
通用 |
|
例子 |
例一 type1 B_SPLINE(1,0,10,100,10) '平滑一个10点的图形数据,源图形点在table的位置为从0到9,平滑为100点的数据,并且平滑后的数据从table地址100开始存放
例二 新增模式 TABLE(0,0,0,0,100,100,100,200,100) 'XY两轴连续4点的坐标数据 B_SPLINE(11, 2, 0, 2, -1, 4, 100,200) '第1条线段 ?TABLE(100),TABLE(101),TABLE(200),TABLE(201) B_SPLINE(12, 2, 2, 4, 0, 6, 100,200) '第2条线段 ?TABLE(100),TABLE(101),TABLE(200),TABLE(201) B_SPLINE(13, 2, 4, 6, 2, 6, 100,200) '第3条线段 ?TABLE(100),TABLE(101),TABLE(200),TABLE(201) |