protected override void SolveInstance(IGH_DataAccess DA)
        {
            Mesh inputMesh = new Mesh();

            if (!DA.GetData("Mesh", ref inputMesh))
            {
                return;
            }

            BuilderMeshEnvironment bme = new BuilderMeshEnvironment(inputMesh);

            DA.SetData("Environment", bme);
        }
Exemple #2
0
        protected override void SolveInstance(IGH_DataAccess DA)
        {
            BuilderMeshEnvironment builderMeshEnv = (BuilderMeshEnvironment)null;
            List <BuilderAgent>    tempAgents     = new List <BuilderAgent>();

            DA.GetData <BuilderMeshEnvironment>("RB-Env", ref builderMeshEnv);
            DA.GetDataList <BuilderAgent>("RB-Agents", tempAgents);

            bool reload = false;

            if (localAgents.Count != tempAgents.Count || firstRun)
            {
                reload = true;
            }
            else
            {
                for (int index = 0; index < localAgents.Count; ++index)
                {
                    if (this.localAgents[index] != tempAgents[index])
                    {
                        reload = true;
                        break;
                    }
                }
            }
            localAgents = tempAgents;
            if (reload)
            {
                agentSystem = new BuilderAgentSystem(localAgents, builderMeshEnv);
            }
            agentSystem.BuilderEnvironment = builderMeshEnv;
            if (agentSystem != null)
            {
                DA.SetData("RB-Sys", (object)this.agentSystem);
            }
        }