public void Evaluate(int SpreadMax)
        {
            //int i = this.FShapesIn.SliceCount;
            //			bool allconnected = true;
            //			int maxslice = int.MinValue;
            //			for (int i = 0; i < this.FShapesIn.SliceCount; i++)
            //			{
            //				if (((InputPin<AbstractRigidShapeDefinition>)this.FShapesIn[0]).PluginIO.IsConnected)
            //				{
            //					maxslice = this.FShapesIn[i].SliceCount > maxslice ? this.FShapesIn[i].SliceCount : maxslice;
            //					if (this.FShapesIn[i].SliceCount == 0) { allconnected = false; }
            //				}
            //				else
            //				{
            //					allconnected = false;
            //				}
            //			}
            this.FShapesOut.SliceCount = FShapesIn.GetMaxSliceCount();

            //			if (allconnected)
            //			{
            //				this.FShapesOut.SliceCount = maxslice;

                for (int i = 0; i < this.FShapesOut.SliceCount; i++)
                {
                    List<AbstractRigidShapeDefinition> childs = new List<AbstractRigidShapeDefinition>();

                    for (int j = 0; j < this.FShapesIn.SliceCount; j++)
                    {

                        childs.Add(this.FShapesIn[j][i]);
                        //childs.Add(this.FShapes2[i]);
                    }

                    CompoundShapeDefinition def = new CompoundShapeDefinition(childs);
                    this.FShapesOut[i] = def;
                }
            //			}
            //			else
            //			{
            //				this.FShapesOut.SliceCount = 0;
            //			}
        }
Example #2
0
        public void Evaluate(int SpreadMax)
        {
            //int i = this.FShapesIn.SliceCount;
//			bool allconnected = true;
//			int maxslice = int.MinValue;
//			for (int i = 0; i < this.FShapesIn.SliceCount; i++)
//			{
//				if (((InputPin<AbstractRigidShapeDefinition>)this.FShapesIn[0]).PluginIO.IsConnected)
//				{
//					maxslice = this.FShapesIn[i].SliceCount > maxslice ? this.FShapesIn[i].SliceCount : maxslice;
//					if (this.FShapesIn[i].SliceCount == 0) { allconnected = false; }
//				}
//				else
//				{
//					allconnected = false;
//				}
//			}
            this.FShapesOut.SliceCount = FShapesIn.GetMaxSliceCount();

//			if (allconnected)
//			{
//				this.FShapesOut.SliceCount = maxslice;

            for (int i = 0; i < this.FShapesOut.SliceCount; i++)
            {
                List <AbstractRigidShapeDefinition> childs = new List <AbstractRigidShapeDefinition>();

                for (int j = 0; j < this.FShapesIn.SliceCount; j++)
                {
                    childs.Add(this.FShapesIn[j][i]);
                    //childs.Add(this.FShapes2[i]);
                }

                CompoundShapeDefinition def = new CompoundShapeDefinition(childs);
                this.FShapesOut[i] = def;
            }
//			}
//			else
//			{
//				this.FShapesOut.SliceCount = 0;
//			}
        }
Example #3
0
 public void Evaluate(int SpreadMax)
 {
     //if (((GenericInputPin<AbstractRigidShapeDefinition>)this.FShapesIn).PluginIO.IsConnected)
     if (FShapesIn[0] != null)
     {
         this.FShapesOut.SliceCount = this.FShapesIn.SliceCount;
         for (int i = 0; i < this.FShapesIn.SliceCount; i++)
         {
             List <AbstractRigidShapeDefinition> childs = new List <AbstractRigidShapeDefinition>();
             for (int j = 0; j < this.FShapesIn[i].SliceCount; j++)
             {
                 childs.Add(this.FShapesIn[i][j]);
             }
             CompoundShapeDefinition def = new CompoundShapeDefinition(childs);
             this.FShapesOut[i] = def;
         }
     }
     else
     {
         this.FShapesOut.SliceCount = 0;
     }
 }
 public void Evaluate(int SpreadMax)
 {
     //if (((GenericInputPin<AbstractRigidShapeDefinition>)this.FShapesIn).PluginIO.IsConnected)
     if (FShapesIn[0] != null)
     {
         this.FShapesOut.SliceCount = this.FShapesIn.SliceCount;
         for (int i = 0; i < this.FShapesIn.SliceCount; i++)
         {
             List<AbstractRigidShapeDefinition> childs = new List<AbstractRigidShapeDefinition>();
             for (int j = 0; j < this.FShapesIn[i].SliceCount; j++)
             {
                 childs.Add(this.FShapesIn[i][j]);
             }
             CompoundShapeDefinition def = new CompoundShapeDefinition(childs);
             this.FShapesOut[i] = def;
         }
     }
     else
     {
         this.FShapesOut.SliceCount = 0;
     }
 }