public void DrawEndLineByMouse(BlueprintEntityPinType pinType) { if (_connectorOverlay == null || _connectorOverlay.Equals(null)) { return; } _connectorOverlay.transform.position = Input.mousePosition; var connectorLineRenderer = lineRenderer; if (pinType == BlueprintEntityPinType.Out) { connectorLineRenderer.Points[1] = _connectorOverlay.anchoredPosition; } else { connectorLineRenderer.Points[0] = _connectorOverlay.anchoredPosition; } connectorLineRenderer.OnRebuildRequested(); if (_flagShownConnectorLine == 2) { connectorLineRenderer.gameObject.SetActive(true); } else { ++_flagShownConnectorLine; } connectorLineRenderer = null; // updating remove button position UpdateRemoveButtonPosition(); }
Vector2 ComputeRealAnchoredPosition(RectTransform rect, RectTransform rectParent, BlueprintEntityPinType pinType) { var direction = pinType == BlueprintEntityPinType.In ? -1 : 1; var rect_anchoredPosition = rect.anchoredPosition; var rectParent_anchoredPosition = rectParent.anchoredPosition; var widthParent = rectParent.sizeDelta.x; var anchor_realAnchoredPositionX = rectParent_anchoredPosition.x + widthParent * rectParent.pivot.x * direction; var anchor_realAnchoredPositionY = rectParent_anchoredPosition.y + rect_anchoredPosition.y; var realAnchoredPosition = new Vector2(anchor_realAnchoredPositionX, anchor_realAnchoredPositionY); return(realAnchoredPosition); }