Beispiel #1
0
        public static GameObject MakeNewLinkGo(RouteMan rman, LcLink link, float linkRadius, string cname)
        {
            var go     = new GameObject();
            var linkgo = go.AddComponent <LinkGo>();

            linkgo.rman      = rman;
            linkgo.link      = link;
            linkgo.name      = link.name;
            linkgo.linkName  = link.name;
            linkgo.nodeName1 = link.node1.name;
            linkgo.nodeName2 = link.node2.name;



            go.name = link.name; //  + "-go";
            var p1    = link.node1.pt;
            var p2    = link.node2.pt;
            var midpt = (p1 + p2) / 2;

            go.transform.localPosition = midpt;
            var pcyl = GraphUtil.CreatePipe(link.name, p1, p2, linkRadius, cname);

            if (rman != null && rman.garnish != RouterGarnishE.none)
            {
                var text   = link.name;
                var anglat = GraphUtil.GetAngLatDegrees(p1, p2);
                GraphUtil.addFloatingTextStatic(go, midpt, text + "  ang:" + anglat, cname, anglat + 90);
            }
            pcyl.transform.parent = go.transform;
            return(go);
        }
Beispiel #2
0
        private string linkcolor(LcLink link)
        {
            var linkname = link.name;

            if (sman == null)
            {
                return("orange");
            }
            var rmmode  = linkclrdicttran[link.usetype];
            var clrname = sman.getcolorname(rmmode, linkname);

            return(clrname);
        }
Beispiel #3
0
        private float linkradius(LcLink link)
        {
            var linkname = link.name;

            if (sman == null)
            {
                return(0.1f);
            }
            var rmmode = linkclrdicttran[link.usetype];
            var rad    = sman.getradius(rmmode);

            //Debug.Log("link.usetype:" + link.usetype + " rmmode:" + rmmode + " rad:" + rad);
            return(rad);
        }
Beispiel #4
0
        bool CheckCapUseVisibility(LcNode node)
        {
            var rv = true;

            if (filterOnCap)
            {
                rv = LcLink.CanDoCapFromUse(capfilter, node.usetype);
            }
            else if (filterOnUse)
            {
                rv = node.usetype == this.usefilter;
            }
            return(rv);
        }
Beispiel #5
0
        public static GameObject MakeLinkGo(SceneMan sman, LcLink link, float linkRadius, string clrname, float alf, bool flatlink = false)
        {
            var go     = new GameObject();
            var linkgo = go.AddComponent <LinkGo>();

            linkgo.sman      = sman;
            linkgo.link      = link;
            linkgo.name      = link.name;
            linkgo.linkName  = link.name;
            linkgo.nodeName1 = link.node1.name;
            linkgo.nodeName2 = link.node2.name;
            //linkgo.node1 = link.node1.go.GetComponent<NodeGo>();
            //linkgo.node2 = link.node2.go.GetComponent<NodeGo>();


            go.name = link.name; //  + "-go";
            var p1    = link.node1.pt;
            var p2    = link.node2.pt;
            var midpt = (p1 + p2) / 2;

            go.transform.localPosition = midpt;
            GameObject linkcyl;

            if (flatlink)
            {
                linkcyl = GraphUtil.CreateFlatPipe(link.name, p1, p2, linkRadius, clrname, alf);
            }
            else
            {
                linkcyl = GraphUtil.CreatePipe(link.name, p1, p2, linkRadius, clrname, alf);
            }
            if (sman != null && sman.garnish != RouteGarnishE.none)
            {
                var text   = link.name;
                var anglat = GraphUtil.GetAngLatDegrees(p1, p2);
                GraphUtil.addFloatingTextStatic(go, midpt, text + "  ang:" + anglat, clrname, anglat + 90);
            }
            linkcyl.transform.parent = go.transform;
            return(go);
        }