在 http://blog.csdn.net/autodeskinventorapi/article/details/17678983 文中提到,目前API没有关于草图实体剪裁,延伸,打断等具体方法,因此,只能摸索Inventor的功能,自行设计出算法。本文探讨延伸(Extend)。
如果你手动操作,会发现延伸有很多种情况,即便是对最简单的直线进行延伸。我能发现的规律是,Inventor首先判断你拾取直线时靠近起点还是终点,如果是起点,则沿着起点的延伸方向,看直线会和哪个草图实体做实质性的相交。所谓实质性相交指的是延长线的确和草图实体有交点,而不是和其延生部分有交点。如下图1,直线1的将和圆弧有实质性相交。
而如果没有找到实质性的相交,则看是否和草图直线(注意只有草图直线)有延长部分的相交。如图2,直线1将和直线2延长部分相交。
若找到可用相交,则将起点延长到对应交点。如果没有,则看终点是否有可用的相交,则将终点延长到对应交点。即使是靠近起点拾取直线!!
如果都没有,则什么都不做。
图1: