/// <summary> /// Private default constructor /// </summary> private Configurations() { Worktable = new Worktable( new Size(1000, 350), new Size(6, 6), new Point(0, 0), 250, 38); }
private Vector GetTopLeftSiteVector() { var referenceCarrier = _parentCarrier; if (referenceCarrier == null) { referenceCarrier = TempParentCarrier; } Worktable worktable = Configurations.Instance.Worktable; int needGridCnt = 0; if (referenceCarrier != null) { needGridCnt = referenceCarrier.GridID - 1; } double pinPos = needGridCnt * Worktable.DistanceBetweenAdjacentPins + (int)worktable.TopLeftPinPosition.X; double xPos = pinPos; double yPos = worktable.TopLeftPinPosition.Y; if (referenceCarrier != null) { xPos = pinPos - (referenceCarrier.XOffset); //get carrier x start pos yPos -= referenceCarrier.YOffset; int siteIndex = _siteID - 1; var site = referenceCarrier.Sites[siteIndex]; _dimension.XLength = site.XSize; _dimension.YLength = site.YSize; xPos += (int)site.XOffset; //get site x start pos yPos += (int)site.YOffset; } return(new Vector(xPos, yPos)); }