EndPointType属性
适用
视觉对象:Contour, Edge, Line, LineInspector
说明
指定用于直线对象的终点类型。
在大多数情况下,终点类型为一个点(通常表示EndPointObject的PixelX和PixelY位置)。但当前直线的EndPointObject是第二个Line对象时,EndPointType属性用于定义第二个条直线上的交点,例如直线中点、终点、起点或垂直位置。
用法
VGet Sequence.Object.EndPointType, var
VSet Sequence.Object.EndPointType, value
- Sequence
- 序列名或表示序列名的字符串变量
- Object
- 对象名或表示对象名的字符串变量对象必须存在于指定的序列中。
- var
- 表示属性值的整数变量
- value
- 表示新属性值的整数或表达式
值
EndPointObject = Line, LineFinder | EndPointObject = Screen, Geometric, Correlation, Blob, Edge, Polar, BoxFinder, CornerFinder, LineInspector, ArcFinder, DefectFinder, Point, Contour对象 |
---|---|
参考详细说明。 默认:2 - MidPoint | 0 - Point 使用上述以外的对象时,EndPointType仅可为Point类型。默认:0 - Point |
详细说明
如上面“值”表中所示,许多EndPointObject属性仅支持EndPointType属性的“0 - Point”。这是因为大部分EndPointObject属性通常使用PixelX和PixelY位置作为参考位置定义直线的起点或终点。因此EndPointObject设为Screen、Blob、Correlation、Edge或Point时,EndPointType始终设为0 - Point。
EndPointType的有效值范围取决于EndPointObject。
EndPointObject为其他的Line对象时,用户必须决定第二条直线与第一条直线相交的位置。选择如下:
- 1 - EndPoint
- 视觉常数:VISION_ENDPNTTYPE_ENDPOINT
- 使用另一条直线的终点作为该直线的终点。
- 2 - MidPoint
- 视觉常数:VISION_ENDPNTTYPE_MIDPOINT
- 平分另一条直线并使用中心(或另一条直线的中点)作为该直线的终点。
- 3 - PerpToLine
- 视觉常数:VISION_ENDPNTTYPE_PERPTOLINE
- 计算2条直线垂直相交于第二条直线的位置,并使用此位置作为终点。
- 4 - StartPoint
- 视觉常数:VISION_ENDPNTTYPE_STARTPOINT
- 使用另一条直线的起点作为该直线的终点。
- 5 - PerpToStartPoint
- 视觉常数:VISION_ENDPNTTYPE_PERPTOSTARTPOINT
- 计算经过第一条直线起点且2条直线垂直相交于第二条直线的位置,并使用此位置作为终点。
- 6 - PerpToMidPoint
- 视觉常数:VISION_ENDPNTTYPE_PERPTOMIDPOINT
- 计算经过第一条直线中点且2条直线垂直相交于第二条直线的位置,并使用此位置作为终点。
- 7 - PerpToEndPoint
- 视觉常数:VISION_ENDPNTTYPE_PERPTOENDPOINT
- 计算经过第一条直线终点且2条直线垂直相交于第二条直线的位置,并使用此位置作为终点。
如果EndPointObject修改为Line对象,则EndPointType自动更改为MidPoint。
如果EndPointObject修改为Screen, Geometric, Correlation, Blob, Edge, Polar, BoxFinder, CornerFinder, LineInspector, ArcFinder, DefectFinder, Point, Contour对象,则EndPointType自动更改为0 - Point。
参照
Contour对象、Edge对象、EndPointObject属性、Line对象、LineInspector对象、StartPointType属性