public bool IsYEq(XPoint P) { return(Y == P.Y); }
// ======================================================= static public XPoint Fit(XPoint dest, XPoint source) { return(Fit(dest, source, scaleFlags.autoScale)); }
public bool IsYLEq(XPoint P) { return(IsYG(P) & IsYG(P)); }
public bool IsXEq(XPoint P) { return(X == P.X); }
public XPoint GetRation(XPoint dst) { return(dst / this); }
public bool IsXLEq(XPoint P) { return(IsXG(P) & IsXG(P)); }
public bool IsYL(XPoint P) { return(Y < P.Y); }
/// <summary>same as FlattenPoint overload without boolean</summary> static public XPoint FlattenDown(XPoint _pin) { return(FlattenPoint(_pin)); }
public bool IsYG(XPoint P) { return(Y > P.Y); }
public bool IsXL(XPoint P) { return(X < P.X); }
public bool IsXG(XPoint P) { return(X > P.X); }
public XPoint Translate(XPoint offset, XPoint zoom) { return((this + offset) * zoom); }
public XPoint GetScaledRation(XPoint dst) { return(this * (dst / this)); }
public void CopyPoint(XPoint inPoint) { X = inPoint.X; Y = inPoint.Y; }
public bool IsLEq(XPoint p) { return((X <= p.X) && (Y <= p.Y)); }
static public XPoint FlattenPoint(XPoint _pin) { return(FlattenPoint(_pin, false)); }
public bool IsGEq(XPoint p) { return((X >= p.X) && (Y >= p.Y)); }
static public XPoint FlattenUp(XPoint _pin) { return(FlattenPoint(_pin, true)); }
/// <summary>Flattens the calling point</summary> public void Flatten(bool roundUp) { XPoint f = Flat(roundUp); this.X = f.X; this.Y = f.Y; f = null; }