當前位置: 首頁>>代碼示例>>C#>>正文


C# Rect.ScaleSizeBy方法代碼示例

本文整理匯總了C#中UnityEngine.Rect.ScaleSizeBy方法的典型用法代碼示例。如果您正苦於以下問題:C# Rect.ScaleSizeBy方法的具體用法?C# Rect.ScaleSizeBy怎麽用?C# Rect.ScaleSizeBy使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在UnityEngine.Rect的用法示例。


在下文中一共展示了Rect.ScaleSizeBy方法的8個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。

示例1: DrawSprite

		public static void DrawSprite(Sprite sprite, Rect rect, float texCoordsScale)
		{
			if (sprite != null)
			{
				Texture tex = sprite.texture;
				Rect texRect = sprite.textureRect;
				Rect texCoordsRect = new Rect(texRect.x / tex.width, texRect.y / tex.height, texRect.width / tex.width, texRect.height / tex.height);
				texCoordsRect = texCoordsRect.ScaleSizeBy(texCoordsScale);

				GUI.DrawTextureWithTexCoords(rect, tex, texCoordsRect);
			}
		}
開發者ID:paveltimofeev,項目名稱:GameJamFramework,代碼行數:12,代碼來源:GuiUtilities.cs

示例2: Begin

 public static Rect Begin(float zoomScale, Rect screenCoordsArea)
 {
     GUI.EndGroup();
     Rect clippedArea = screenCoordsArea.ScaleSizeBy(1.0f / zoomScale, screenCoordsArea.TopLeft());
     clippedArea.y += BonWindow.TopOffset;
     GUI.BeginGroup(clippedArea);
     _prevGuiMatrix = GUI.matrix;
     Matrix4x4 translation = Matrix4x4.TRS(clippedArea.TopLeft(), Quaternion.identity, Vector3.one);
     _tmpScaleVector.Set(zoomScale, zoomScale, 1.0f);
     Matrix4x4 scale = Matrix4x4.Scale(_tmpScaleVector);
     GUI.matrix = translation * scale * translation.inverse * GUI.matrix;
     return clippedArea;
 }
開發者ID:RudraNilBasu,項目名稱:BrotherhoodOfNode,代碼行數:13,代碼來源:EditorZoomArea.cs

示例3: Begin

        public static Rect Begin(float zoomScale, Rect screenCoordsArea)
        {
            GUI.EndGroup();        // End the group Unity begins automatically for an EditorWindow to clip out the window tab. This allows us to draw outside of the size of the EditorWindow.
            
            Rect clippedArea = screenCoordsArea.ScaleSizeBy(1.0f / zoomScale, screenCoordsArea.TopLeft());
            clippedArea.y += kEditorWindowTabHeight;
            GUI.BeginGroup(clippedArea);
            
            _prevGuiMatrix = GUI.matrix;

            Matrix4x4 translation = Matrix4x4.TRS(clippedArea.TopLeft(), Quaternion.identity, Vector3.one);
            Matrix4x4 scale = Matrix4x4.Scale(new Vector3(zoomScale, zoomScale, 1.0f));
            GUI.matrix = translation * scale * translation.inverse * GUI.matrix;
            

            return clippedArea;
        }
開發者ID:KRUR,項目名稱:NotJustASheep,代碼行數:17,代碼來源:EditorZoomArea.cs

示例4: ContainsRect

		public bool ContainsRect(Rect sourceRect) {
			
			if (this.zoomDrawer.GetZoom() < 1f) {
				
				return true;
				
			}
			
			var scrollPos = -FlowSystem.GetScrollPosition();
			var rect = new Rect(scrollPos.x - this.scrollRect.width * 0.5f + this.scrollRect.x,
			                    scrollPos.y + this.scrollRect.y,
			                    this.scrollRect.width + FlowSystemEditorWindow.GetSettingsWidth(),
			                    this.scrollRect.height);
			
			var scaledRect = rect.ScaleSizeBy(this.zoomDrawer.GetZoom());
			var scaledWin = sourceRect.ScaleSizeBy(this.zoomDrawer.GetZoom());

			return scaledRect.Overlaps(scaledWin);

		}
開發者ID:MJunak,項目名稱:Unity3d.UI.Windows,代碼行數:20,代碼來源:EditorWindow.cs

示例5: Begin

		public Rect Begin(Rect area, Rect contentSize) {

			GUI.EndGroup();        // End the group Unity begins automatically for an EditorWindow to clip out the window tab. This allows us to draw outside of the size of the EditorWindow.
			
			Rect clippedArea = area.ScaleSizeBy(1f / this.zoomValue, this.screenCoordsArea.MiddleMiddle());
			//this.screenCoordsArea.ScaleSizeBy(1f / this.zoomValue, this.screenCoordsArea.TopLeft());
			clippedArea.y += EditorZoomArea.EDITOR_TAB_HEIGHT;
			GUI.BeginGroup(clippedArea);
			
			this.prevGuiMatrix = GUI.matrix;
			Matrix4x4 translation = Matrix4x4.TRS(clippedArea.MiddleMiddle(), Quaternion.identity, Vector3.one);
			Matrix4x4 scale = Matrix4x4.Scale(new Vector3(this.zoomValue, this.zoomValue, 1f));
			GUI.matrix = translation * scale * translation.inverse * GUI.matrix;
			
			GUI.BeginGroup(new Rect(this.zoomCoordsOrigin.x, this.zoomCoordsOrigin.y, contentSize.width, contentSize.height));

			return clippedArea;

		}
開發者ID:bartez,項目名稱:Unity3d.UI.Windows,代碼行數:19,代碼來源:EditorZoomHelper.cs

示例6: BeginZoomArea

        public static Rect BeginZoomArea(float zoomScale, Rect screenCoordsArea)
        {
            GUI.EndGroup();

            Rect clippedArea = screenCoordsArea.ScaleSizeBy(1.0f / zoomScale, screenCoordsArea.TopLeft());
            clippedArea.y += kEditorWindowTabHeight;
            GUI.BeginGroup(clippedArea);

            preZoomGUIMatrix = GUI.matrix;
            Matrix4x4 translation = Matrix4x4.TRS(clippedArea.TopLeft(), Quaternion.identity, Vector3.one);
            Matrix4x4 scale = Matrix4x4.Scale(new Vector3(zoomScale, zoomScale, 1.0f));
            GUI.matrix = translation * scale * translation.inverse * GUI.matrix;

            return clippedArea;
        }
開發者ID:anneomcl,項目名稱:LetsMake,代碼行數:15,代碼來源:NodifyEditorUtilities.cs

示例7: Begin

		public static Rect Begin(Rect screenCoordsArea, float zoomScale)
		{
			GUI.EndGroup();
			Rect rect = screenCoordsArea.ScaleSizeBy(1f / zoomScale, screenCoordsArea.TopLeft());
			rect.y += 21f;
			GUI.BeginGroup(rect);
			EditorZoomArea._prevGuiMatrix = GUI.matrix;
			Matrix4x4 lhs = Matrix4x4.TRS(rect.TopLeft(), Quaternion.identity, Vector3.one);
			Vector3 one = Vector3.one;
			one.y = zoomScale;
			one.x = zoomScale;
			Matrix4x4 rhs = Matrix4x4.Scale(one);
			GUI.matrix = lhs * rhs * lhs.inverse * GUI.matrix;
			return rect;
		}
開發者ID:learnUnity,項目名稱:KU_NET,代碼行數:15,代碼來源:GUITools.cs

示例8: IsVisible

		public bool IsVisible(FD.FlowWindow window) {

			if (this.zoomDrawer.GetZoom() < 1f) {

				return true;

			}

			var scrollPos = -FlowSystem.GetScrollPosition();
			var rect = new Rect(scrollPos.x - this.scrollRect.width * 0.5f + this.scrollRect.x,
			                    scrollPos.y + this.scrollRect.y,
			                    this.scrollRect.width + FlowSystemEditorWindow.GetSettingsWidth(),
			                    this.scrollRect.height);

			var scaledRect = rect.ScaleSizeBy(this.zoomDrawer.GetZoom());
			var scaledWin = window.rect.ScaleSizeBy(this.zoomDrawer.GetZoom());
			
			//scaledRect.x += FlowSystemEditorWindow.GetSettingsWidth();

			return window.isVisibleState = scaledRect.Overlaps(scaledWin);

		}
開發者ID:anton-nesterenko,項目名稱:Unity3d.UI.Windows,代碼行數:22,代碼來源:EditorWindow.cs


注:本文中的UnityEngine.Rect.ScaleSizeBy方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。