Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public bool QueryCollidables(IElementGeometry other, out IGeometryBase collided) {
- collided = null;
- var collidables = from geometry in geometries
- where (geometry != other) &&
- (geometry is GdiText2 && !geometry.Location.IsEmpty) || // all text elements which are set
- (((geometry.FormElement != geometry.FormElement) || (other.FormElement.ElementType == ElementType.HOOK || other.FormElement.ElementType == ElementType.MARKA) || geometry.FormElement.ElementType == ElementType.HOOK)
- && (!(other.FormElement.ElementType == ElementType.MARKHW && IsHorOrVert(geometry as Line2))) //H/W Text dont collide with right Lines
- && (!(geometry.FormElement.ElementType == ElementType.MARKHW && geometry is GdiText2))
- )
- select geometry;
- foreach (var c in collidables)
- if (c.IntersectsWith((other))) {
- collided = c;
- return true;
- }
- return false;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement