大家在对平面铣设置边界时,经常遇到边界方向与自己期望的不一致,有些人喜欢用检查刀路是否过切来判断,但是对于倒角、负余量等一些情况,刀路本来就是过切的。对于多边界,可以根据选择的曲线来起点和面的方向来确定,也需要写很多情况的判断。在libcamsbuilder里发现,手动选择边界时,绘图区提示用户的三个标识是可以获取到的,如下图,箭头代表边界方向、绿色方块代表边界起点、小球手柄代表内外,通过查找,如下三个函数可以获取到对应的数值:
void UGS::CamBuilder::BoundarySet::GetStartPoint(struct UGS::Math::Point3 *)
void UGS::CamBuilder::BoundarySet::GetDirection(struct UGS::Math::Vector3 *)
bool UGS::CamBuilder::BoundarySet::GetToolPositionData(class UGS::CamBuilder::BoundaryMemberSet *, struct UGS::Math::Point3 * const)
其中GetToolPositionData获取的位置有时候并不是显示的小球位置,但是位置相对于边界肯定是在对应的刀具侧位置。