AnchoredSnapper函数使用说明

原文发布时间:2010-07-28

作者:Peri

今天在看AnchoredSnapper函数帮助时,看了半天都不是很懂,即使把英文说明翻译过来后,依然一知半解,后来通过实例测试,才大概明白个所以然。于是我把测试记录跟大家分享,希望有助于各位更好的理解这个函数的使用。

 

1.       函数说明

对一组符合输入标准的要素(Candidate端口输入要素)执行捕捉,捕捉到小于指定容差且符合输入标准的要素(Anchor端口输入要素)上;

其中:

Anchor:主动捕捉要素;

Candidate:被捕捉要素;

Snapped:捕捉到要素(Candidate的变化要素);

Untouched:未捕捉到要素(Candidate的未变要素);

 

输出端口(Output Ports

 l  SNAPPED:在处理过程中,几何形状发生改变的Candidate要素输出到SNAPPED端口;

 l  UNTOUCHED:没有发生改变的Candidate要素输出到UNTOUCHED端口;


捕捉类型(Snapping Type):

 l  终点捕捉

a.       CANDIDATE端口输入要素的终点捕捉到ANCHOR端口输入的要素终点上,ANCHOR要素不输出;

b.       ANCHOR CANDIDATE要素都可以是点要素,并且CANDIDATE 要素的所有节点也都会捕捉到一起(或者捕捉到线型的ANCHOR要素上);

c.       函数操作会改变面状要素;

d.       参数“添加附件节点(Add Additional Vertex)”可用;

 

 l  结点捕捉:

a.       CANDIDATE端口输入的要素的节点捕捉到ANCHOR端口输入的要素节点上,ANCHOR输入的要素不输出;

b.       ANCHOR CANDIDATE要素都可以是点要素,并且CANDIDATE 要素的所有节点也都会捕捉到一起(或者捕捉到线型的ANCHOR要素上);

c.       函数操作会改变面状要素;

d.       参数“添加附件节点(Add Additional Vertex)”不可用;

 

捕捉容差(Snapping Tolerance

  也就是执行捕捉操作结点之间的距离必须小于容差值。

 

2.       实例测试

1)  Anchor输入线要素、Candidate输入点要素、Type结点捕捉——(线捕捉点)将点要素捕捉到临近的线要素的结点上,点与结点之间的距离小于容差;Snapped输出要素为捕捉后的点要素(位置已经变化);Untouched输出为没有被捕捉的点要素(位置没变化);


                     原始数据                                      容差0.00005                                    容差0.00008


2)  Anchor输入点要素、Candidate输入线要素、Type结点捕捉——(点捕捉线)将线上的结点捕捉到邻近的点要素上(位置变化),不能捕捉的结点保持不变,重新连接结点生成线要素;Snapped输出为有结点变化的线要素,Untouched输出为没有结点变化的线要素;

           

                             容差0.0001                            容差0.00005                             容差0.00001
           说明:绿色为原始要素,紫色和深蓝色为 Snapped输出要素,天蓝色为 Untouched输出要素,
                    
3)   Anchor 输入面要素、 Candidate 输入点要素、 Type 结点捕捉——(面捕捉点)将满足条件的点要素捕捉到面要素的结点上, Snapped 输出捕捉后的点要素(位置变化), Untouched 输出为捕捉到的点要素(位置保持不变)
                               
                                              原始数据                             容差0.0001

4)  Anchor输入点要素、Candidate输入面要素、Type结点捕捉——(点捕捉面)将满足条件的面要素的结点捕捉到点要素上,Snapped输出有结点变化的面要素(形状变化),Untouched输出没有结点变化的面要素(形状未变);

                 

                                原始数据                              容差0.00005                        容差0.00003

说明:天蓝色为原始面要素,橘色为Snapped输出面要素,粉红色为Untouched输出面要素;
 

5)  Anchor输入面要素、Candidate输入面要素、Type结点捕捉——(面捕捉面)将满足条件的面要素(Candidate要素)的结点捕捉到另一组面要素(Anchor要素)结点上,捕捉结点间的距离小于容差,Snapped输出有结点被捕捉到的Candidate要素,Untouched输出没有结点被捕捉到的Candidate要素;

         

                                                                     容差0.00003

 

说明:天蓝色为Anchor输入要素、橘色为Candidate输入要素、紫色为Snapped输出要素;最后一个是局部放大效果。

 

6)  AnchorCandidate要素交换,其它条件不变,结果如下

      

                                                            容差0.000001

说明: 天蓝色为 Snapped 结果,绿色为 Untouched 结果。


 

 


猜你喜欢

转载自blog.csdn.net/fmechina/article/details/80927397