本帖最后由 zdqwy19 于 2014-8-6 22:30 编辑
自己用的一个删除AcGePoint3dArray中重复点的代码,采用双循环方法。
- //赵德强 2014.8.6 发
- //删除AcGePoint3dArray小于指定距离的点
- AcGePoint3dArray deletePoint(AcGePoint3dArray ptA,double minl)
- {
- //删除重复点
- //AcGeTol pan;
- //pan.setEqualPoint(minl);
- if(ptA.length()>0)
- {
- //双循环法删除重复元素,适应元素不太多
- for(int i=0;i<ptA.length()-1;i++)
- {
- for(int j=ptA.length()-1;j>i;j--)
- {
- //if((ptA.at(i)).isEqualTo(ptA.at(j)))
- if((ptA.at(i)).distanceTo(ptA.at(j))<=minl)
- {
- ptA.removeAt(j);
- }
- }
- }
- }
- return ptA;
- }
|