SE_shape_find_relation |
Returns a mask defining all the relationships between the supplied shapes
LONG SE_shape_find_relation (const SE_SHAPE primary_shape, const SE_SHAPE secondary_shape, LONG *mask);
primary_shape | A handle to an active shape object |
secondary_shape | A handle to an active shape object |
mask | Contains the relationships of the supplied shapes |
SE_shape_find_relation returns a mask defining all the relationships between the supplied shapes. The mask returns a flag for each of the relation types that is satisfied: equal, touch, cross, intersect, disjoint, and overlap.
RM_LINE_CROSS | Line intersection; the boundaries of shapes intersect. The point of intersection is not a contained vertex for at least one of the shapes. |
RM_COMMON_PT | The primary and secondary shapes have at least one point in common |
RM_EMBEDDED_PT | A vertex is embedded in a line |
RM_CBOUND_SAME | A common boundary exists between the primary and secondary shapes. The direction of flow (point storage order) of the common boundary is the same in both shapes. |
RM_CBOUND_DIFF | A common boundary exists between the primary and secondary shapes. The direction of flow (point storage order) of the common boundary is opposite in the shapes. |
RM_EMBEDDED_PT | A vertex is embedded in a line |
RM_PARALLEL_OVERLAPPING | Similar to the common boundary masks but one of the shapes has a common boundary with the interior of the other shape |
RM_IDENTICAL | The primary and secondary shapes are identical in terms of shape type and coordinate description |
RM_INTERIOR_INTERSECT | The interior of both shapes must intersect. For example, if comparing two area shapes, one must cross within the other one. If two area shapes touch but do not overlap, their interiors do not intersect. |
RM_AREA_INTERSECT | Same as RM_INTERIOR_INTERSECT |
RM_BOUNDARY_INTERSECT | The endpoint of a linestring intersects the endpoint of another linestring or the boundary of an area feature |
RM_PRIM_LEP_INTERIOR | The endpoint of the primary feature intersects the interior of the secondary feature. Occurs when a linear feature’s endpoint (primary) intersects a point feature. |
RM_SEC_LEP_INTERIOR | The primary feature intersects the endpoint of the secondary feature. Occurs when a point feature (primary) intersects a linear features endpoint. |
RM_PRIM_CONTAINED | The primary shape is wholly contained by the secondary shape. If the secondary shape is an area shape, the primary shape is wholly inside the secondary shapes boundary. If both shapes are linear, the primary shapes path is wholly included in the secondary shapes path. If the primary shape is a point shape, the primary shape is one of the secondary shapes vertices. |
RM_SEC_CONTAINED | The secondary shape is wholly contained by the primary shape. If the primary shape is an area shape, the secondary shape is wholly inside the primary shapes boundary. If both shapes are linear, the secondary shapes path is wholly included in the primary shapes path. If the secondary shape is a point shape, the secondary shape is one of the primary shapes vertices. |
SE_SUCCESS
SE_INCOMPATIBLE_COORDREFS
SE_INVALID_POINTER
SE_INVALID_SHAPE
SE_INVALID_SHAPE_OBJECT
∙ Ignores any CAD data