| 1234567891011121314151617181920212223242526 |
- using System.Windows;
- namespace SHJX.Service.WorkFlowEdit
- {
- public class RectPort : PortBase
- {
- static RectPort()
- {
- FrameworkElement.DefaultStyleKeyProperty.OverrideMetadata(
- typeof(RectPort), new FrameworkPropertyMetadata(typeof(RectPort)));
- }
- public override Point GetEdgePoint(Point target)
- {
- var rect = new Rect(Center.X - ActualWidth / 2, Center.Y - ActualHeight / 2, ActualWidth, ActualHeight);
- return GeometryHelper.RectLineIntersection(rect, target);
- }
- public override bool IsNear(Point point)
- {
- var rect = new Rect(Center.X - ActualWidth / 2, Center.Y - ActualHeight / 2, ActualWidth, ActualHeight);
- rect.Inflate(Sensitivity, Sensitivity);
- return GeometryHelper.RectContains(rect, point);
- }
- }
- }
|