飞扬 发表于 2006-10-9 10:18:08

沿曲线等弦长阵列 - trajpar_of_pnt 函数的应用

1、点在曲线上的比例

[ 本帖最后由 萤火虫 于 2007-3-5 11:24 编辑 ]

飞扬 发表于 2006-10-9 10:19:54

再测量一下弧长~~~:oo
基本上相等(误差很小,可以忽略):

飞扬 发表于 2006-10-9 10:21:06

2、点在曲线上的长度
很明显,这也是等弧长:(

飞扬 发表于 2006-10-9 10:41:54

那么,可以得到用传统的方法是做不到等弦长阵列的了(曲线为直线或圆时不算,呵呵),只好另想方法了~~~~~~~~~~
我们先从最简单的开始,假设曲线为2D曲线
以PNT0为起点,做一个长为300的弦交于曲线于一点,如图,可知,第一条弦的终点为第二条弦的起点,以此类推

飞扬 发表于 2006-10-9 10:43:12

通常,以第一点PNT0为圆心,做一段R=弦长的圆弧,交于曲线于一点PNT1,两点间的距离便是所要的弦长,再以PNT1为圆心,以下类推下去

飞扬 发表于 2006-10-9 10:43:55

剩下的问题,是如何才能做到下一段圆弧的圆心正好在上一段圆弧与曲线的交点上?
这里,要用到一个函数,叫trajpar_of_pnt,以下是该函数的说明

飞扬 发表于 2006-10-9 10:44:26

阵列思路是采用关系式阵列,利用trajpar_of_pnt得到上一段圆弧与曲线交点的值,付于下一段圆弧圆点所在点的值,因此,还得用到一个字符串处理函数itos

飞扬 发表于 2006-10-9 10:45:17

基本知识讲完了,以下分别通过2D曲线和3D曲线为例子~~
以ratio的方式在曲线上建一点

飞扬 发表于 2006-10-9 10:45:57

过点做一轴与曲线相切

飞扬 发表于 2006-10-9 10:46:40

先点与轴为参照,以点为圆心画一个半圆
页: [1] 2 3 4
查看完整版本: 沿曲线等弦长阵列 - trajpar_of_pnt 函数的应用