資源簡介
unity版本2018.2.7,這是自己在unity中寫的圖片填充功能,使用的是泛洪算法,需要的可以下載。

代碼片段和文件信息
using?System.Collections;
using?System.Collections.Generic;
using?UnityEngine;
using?UnityEngine.UI;
public?class?Demo_texture?:?MonoBehaviour
{
????//計算鼠標點擊位置?對應的像素位置,一個是image的左下角,一個是圖片的右上角
????public?Transform?textureOrigin;
????public?Transform?textureUPEnd;
????//存儲點擊的圖片的texture2D?getpixel()?使用
????private?Texture2D?clickTexture2D;
????//存儲鼠標點擊位置的像素值
????private?Color?testColor;
????//存儲計算出來的像素點的位置
????private?Vector2?colorPos;
????//存儲圖片定位點的屏幕坐標
????private?Vector3?textureOriginScreenPosition;
????private?Vector3?textureEndUPScreenPosition;
????//測試用的顯示顏色的圖片
????public?Image?image;
????private?void?Start()
????{
????????textureOriginScreenPosition?=?Camera.main.WorldToScreenPoint(textureOrigin.position);
????????textureEndUPScreenPosition?=?Camera.main.WorldToScreenPoint(textureUPEnd.position);
????}
????private?void?Update()
????{
????????Ray?r?=?Camera.main.ScreenPointToRay(Input.mousePosition);
????????RaycastHit?hit;
????????if?(Input.GetMouseButtonDown(0))
????????{
????????????if?(Physics.Raycast(r?out?hit))
????????????{
????????????????HitColorChooseImage(hit);
????????????}
????????}
????}
????private?void?HitColorChooseImage(RaycastHit?hit)
????{
????????//?print(hit.collider.name);
????????if?(hit.collider.name?==?“Image“)
????????{
????????????//??print(3);
????????????clickTexture2D?=?hit.collider.gameobject.GetComponent().sprite.texture;
????????????CaculateVector2();
????????}
????}
????public?Stack?stackX?=?new?Stack();
????public?Stack?stackY?=?new?Stack();
????private?void?CaculateVector2()
????{
????????colorPos.x?=?(Input.mousePosition.x?-?textureOriginScreenPosition.x)?/?(textureEndUPScreenPosition.x?-?textureOriginScreenPosition.x)?*?clickTexture2D.width;
????????colorPos.y?=?(Input.mousePosition.y?-?textureOriginScreenPosition.y)?/?(textureEndUPScreenPosition.y?-?textureOriginScreenPosition.y)?*?clickTexture2D.height;
??????//??print(“x:--“?+?colorPos.x?+?“--y:---“?+?colorPos.y);
????????if?(!(getColor((int)colorPos.x?(int)colorPos.y)?==?Color.white))
????????{
????????????return;
????????}
????????int[]?dx?=?new?int[8]?{?0?1?1?1?0?-1?-1?-1?};
????????int[]?dy?=?new?int[8]?{?-1?-1?0?1?1?1?0?-1?};
????????stackX.Push((int)colorPos.x);
????????stackY.Push((int)colorPos.y);
????????int?x;
????????int?y;
????????int?xx;
????????int?yy;
????????print(clickTexture2D.width?+?“_“?+?clickTexture2D.height);
????????while?(stackX.Count?>?0)
????????{
????????????x?=?stackX.Pop();
????????????y?=?stackY.Pop();
????????????setColor(x?y?Color.green);
????????????for?(int?i?=?0;?i?8;?i++)
????????????{
????????????????xx?=?x?+?dx[i];
????????????????yy?=?y?+?dy[i];
????????????????if?(xx?>?0?&&?xx??0?&&?yy?????????????????{
????????????????????stackX.Push(xx);
????????????????????stackY.Push(yy);
????????????????}
????????????}
????????}
????????clickTexture2D.Apply();
????}
????public?Color?get
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2019-08-09?17:26??Statck_image\
?????目錄???????????0??2019-06-18?18:19??Statck_image\obj\
?????目錄???????????0??2019-08-09?17:06??Statck_image\obj\Debug\
?????文件???????????0??2019-08-09?11:25??Statck_image\obj\Debug\Assembly-CSharp.csproj.CopyComplete
?????文件????????7680??2019-08-09?11:25??Statck_image\obj\Debug\Assembly-CSharp.dll
?????文件????????1752??2019-08-09?11:25??Statck_image\obj\Debug\Assembly-CSharp.pdb
?????文件??????????41??2019-08-09?10:12??Statck_image\obj\Debug\Assembly-CSharp.csproj.CoreCompileInputs.cache
?????文件???????19745??2019-08-09?10:12??Statck_image\obj\Debug\Assembly-CSharp.csproj.FileListAbsolute.txt
?????文件??????350887??2019-08-09?17:06??Statck_image\obj\Debug\Assembly-CSharp.csprojAssemblyReference.cache
?????文件?????????922??2019-06-18?18:19??Statck_image\Statck_image.sln
?????目錄???????????0??2019-06-18?18:19??Statck_image\ProjectSettings\
?????文件???????17798??2019-06-18?18:18??Statck_image\ProjectSettings\ProjectSettings.asset
?????文件????????6088??2018-08-30?10:03??Statck_image\ProjectSettings\InputManager.asset
?????文件?????????195??2018-08-30?10:03??Statck_image\ProjectSettings\TimeManager.asset
?????文件????????1937??2018-08-30?10:03??Statck_image\ProjectSettings\GraphicsSettings.asset
?????文件?????????355??2018-08-30?10:03??Statck_image\ProjectSettings\PresetManager.asset
?????文件?????????812??2019-06-18?18:19??Statck_image\ProjectSettings\UnityConnectSettings.asset
?????文件?????????643??2018-08-30?10:03??Statck_image\ProjectSettings\EditorSettings.asset
?????文件?????????268??2018-08-30?10:03??Statck_image\ProjectSettings\EditorBuildSettings.asset
?????文件?????????120??2018-08-30?10:03??Statck_image\ProjectSettings\ClusterInputManager.asset
?????文件?????????421??2018-08-30?10:03??Statck_image\ProjectSettings\TagManager.asset
?????文件????????1399??2018-08-30?10:03??Statck_image\ProjectSettings\NavMeshAreas.asset
?????文件????????1997??2018-08-30?21:06??Statck_image\ProjectSettings\Physics2DSettings.asset
?????文件?????????159??2018-08-30?10:03??Statck_image\ProjectSettings\NetworkManager.asset
?????文件?????????377??2018-08-30?10:03??Statck_image\ProjectSettings\AudioManager.asset
?????文件????????1044??2018-08-30?21:06??Statck_image\ProjectSettings\DynamicsManager.asset
?????文件????????5037??2018-08-30?10:03??Statck_image\ProjectSettings\QualitySettings.asset
?????文件??????????28??2019-06-18?18:18??Statck_image\ProjectSettings\ProjectVersion.txt
?????目錄???????????0??2019-08-09?17:26??Statck_image\Library\
?????文件???????17798??2019-06-18?18:18??Statck_image\Library\ProjectSettings.asset
?????文件??????????14??2019-06-18?18:18??Statck_image\Library\AssetImportState
............此處省略1335個文件信息
- 上一篇:51單片機100例 匯編
- 下一篇:加油站客戶信息管理系統的設計與實現計算機畢業設計
評論
共有 條評論