• 大小: 12.25MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-06-29
  • 语言: 其他
  • 标签: 凹多边形  Unity3D  

资源简介

使用Unity3D来进行凹多边形三角网剖分的代码,我在代码中使用了Vector3这个类,因此代码并不能脱离Unity3D框架来使用,当然作为参考可以。 这个例子对中国区域进行渲染,附赠了中国的边界数据。 工程名字和注释瞎写的,姑且一看吧。我把整个工程直接压缩后打包了。 对这个资源的详细说明,见博客 https://blog.csdn.net/kongxinyue/article/details/91128766

资源截图

代码片段和文件信息

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class DrawRect
{
    MeshFilter meshfilter;
    private MeshRenderer meshrenderer;

    Gameobject go;

    Color meshColor = Color.red;
    public void SetMeshRenderColor(Color color)
    {
        meshColor = color;
    }
    void CreateMesh()
    {
        meshfilter = go.GetComponent();

        if(meshfilter == null)
            meshfilter = go.AddComponent();

        meshrenderer = go.GetComponent();

        if(meshrenderer == null)
            meshrenderer = go.AddComponent();

        if (meshfilter.mesh != null)
        {
            Mesh mesh = new Mesh();


            meshfilter.mesh = mesh;
        }
        meshrenderer.material.color = new Color(meshColor.r meshColor.g meshColor.b meshColor.a);//修改时间 2019/3/12
        meshrenderer.material.shader = Shader.Find(“Transparent/Diffuse“);
    }
   public void SetGameobject(Gameobject _go)
    {
        go = _go;
        CreateMesh();
    }
    public void setDataSource(List data)
    {
        List data3 = new List();

        foreach (Vector2 d in data)
            data3.Add(new Vector3(d.x d.y -1));

        setDataSource(data3);
    }

    public void setDataSource(List data)
    {
        meshfilter.mesh.Clear();
        meshfilter.mesh.SetVertices(data);

        int[] triangle = CreateTriangle(data);

        meshfilter.mesh.triangles = triangle;
    }


    public void setDataSource(List dataint[] triangles)
    {
        meshfilter.mesh.Clear();
        meshfilter.mesh.SetVertices(data);

        meshfilter.mesh.triangles = triangles;
    }
    int[]  CreateTriangle(List data)
    {
        int[] triangles = new int[3 * (data.Count - 2)];

        for (int i = 0; i < data.Count - 2; i++)
        {
            //这个算法好好琢磨一下吧~  
            triangles[3 * i] = 0;
            triangles[3 * i + 1] = i + 2;
            triangles[3 * i + 2] = i + 1;
        }
        return triangles;
    }
 }

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

    ..A..H.    248320  2019-06-07 17:23  NonCoverPolygon\.vs\NonCoverPolygon\v15\.suo

     文件          0  2019-06-07 15:41  NonCoverPolygon\.vs\NonCoverPolygon\v15\Server\sqlite3\db.lock

     文件     929792  2019-06-07 16:42  NonCoverPolygon\.vs\NonCoverPolygon\v15\Server\sqlite3\storage.ide

     文件      32768  2019-06-07 15:41  NonCoverPolygon\.vs\NonCoverPolygon\v15\Server\sqlite3\storage.ide-shm

     文件    4128272  2019-06-07 17:23  NonCoverPolygon\.vs\NonCoverPolygon\v15\Server\sqlite3\storage.ide-wal

     文件      43717  2019-06-07 15:40  NonCoverPolygon\Assembly-CSharp.csproj

    I.A....     11882  2019-06-07 17:23  NonCoverPolygon\Assets\Scenes\SampleScene.unity

     文件        155  2019-06-07 15:37  NonCoverPolygon\Assets\Scenes\SampleScene.unity.meta

     文件        172  2019-06-07 15:37  NonCoverPolygon\Assets\Scenes.meta

     文件       2205  2019-06-05 23:06  NonCoverPolygon\Assets\script\DrawRect.cs

     文件        243  2019-06-07 15:40  NonCoverPolygon\Assets\script\DrawRect.cs.meta

     文件        786  2019-06-05 23:16  NonCoverPolygon\Assets\script\LoadData.cs

     文件        243  2019-06-07 15:39  NonCoverPolygon\Assets\script\LoadData.cs.meta

     文件        685  2019-06-04 06:22  NonCoverPolygon\Assets\script\MeshDrawbase.cs

     文件        243  2019-06-07 15:40  NonCoverPolygon\Assets\script\MeshDrawbase.cs.meta

     文件       3597  2019-06-07 17:10  NonCoverPolygon\Assets\script\Polygon.cs

     文件        243  2019-06-07 15:39  NonCoverPolygon\Assets\script\Polygon.cs.meta

     文件      13154  2019-06-07 17:10  NonCoverPolygon\Assets\script\Triangular.cs

     文件        243  2019-06-07 15:39  NonCoverPolygon\Assets\script\Triangular.cs.meta

     文件        172  2019-06-07 15:39  NonCoverPolygon\Assets\script.meta

     文件     183572  2019-06-07 17:11  NonCoverPolygon\China_1.at

     文件       4768  2019-06-07 17:11  NonCoverPolygon\China_2.at

     文件       1154  2019-06-07 17:11  NonCoverPolygon\China_3.at

     文件       6003  2019-06-07 17:11  NonCoverPolygon\China_4.at

    I.A....      4116  2019-06-07 15:37  NonCoverPolygon\Library\AnnotationManager

    I.A....   4209016  2019-06-07 17:23  NonCoverPolygon\Library\assetDatabase3

    I.A....        10  2019-06-07 15:37  NonCoverPolygon\Library\AssetImportState

    I.A....         0  2019-06-07 15:37  NonCoverPolygon\Library\BuildPlayer.prefs

    I.A....      4152  2019-06-07 15:37  NonCoverPolygon\Library\BuildSettings.asset

    I.A....     16048  2019-06-07 17:24  NonCoverPolygon\Library\CurrentLayout.dwlt

............此处省略2274个文件信息

评论

共有 条评论