Exemple #1
0
        public void TestDuplicateOffset()
        {
            // create new offset
            GsaOffset offset = new GsaOffset();

            offset.X1 = -1.57;
            offset.X2 = 2.5;
            offset.Y  = -4.2;
            offset.Z  = 10.5;

            // duplicate original
            GsaOffset dup = offset.Duplicate();

            // make some changes to original
            offset.X1 = -1000;
            offset.X2 = 0.0025;
            offset.Y  = 42;
            offset.Z  = 0;

            Assert.AreEqual(-1.57, dup.X1);
            Assert.AreEqual(2.5, dup.X2);
            Assert.AreEqual(-4.2, dup.Y);
            Assert.AreEqual(10.5, dup.Z);

            Assert.AreEqual(-1000, offset.X1);
            Assert.AreEqual(0.0025, offset.X2);
            Assert.AreEqual(42, offset.Y);
            Assert.AreEqual(0, offset.Z);
        }
Exemple #2
0
        protected override void SolveInstance(IGH_DataAccess DA)
        {
            GsaOffset offset    = new GsaOffset();
            GsaOffset gsaoffset = new GsaOffset();

            if (DA.GetData(0, ref gsaoffset))
            {
                offset = gsaoffset.Duplicate();
            }
            if (offset != null)
            {
                //inputs
                double x1 = 0;
                if (DA.GetData(1, ref x1))
                {
                    offset.X1 = x1;
                }
                double x2 = 0;
                if (DA.GetData(2, ref x2))
                {
                    offset.X2 = x2;
                }
                double y = 0;
                if (DA.GetData(3, ref y))
                {
                    offset.Y = y;
                }
                double z = 0;
                if (DA.GetData(4, ref z))
                {
                    offset.Z = z;
                }

                //outputs
                DA.SetData(0, new GsaOffsetGoo(offset));
                DA.SetData(1, offset.X1);
                DA.SetData(2, offset.X2);
                DA.SetData(3, offset.Y);
                DA.SetData(4, offset.Z);
            }
        }
        protected override void SolveInstance(IGH_DataAccess DA)
        {
            double    x1         = 0;
            double    x2         = 0;
            double    y          = 0;
            double    z          = 0;
            GH_Number ghOffsetX1 = new GH_Number();

            if (DA.GetData(0, ref ghOffsetX1))
            {
                GH_Convert.ToDouble(ghOffsetX1, out x1, GH_Conversion.Both);
            }
            GH_Number ghOffsetX2 = new GH_Number();

            if (DA.GetData(1, ref ghOffsetX2))
            {
                GH_Convert.ToDouble(ghOffsetX2, out x2, GH_Conversion.Both);
            }
            GH_Number ghOffsetY = new GH_Number();

            if (DA.GetData(2, ref ghOffsetY))
            {
                GH_Convert.ToDouble(ghOffsetY, out y, GH_Conversion.Both);
            }
            GH_Number ghOffsetZ = new GH_Number();

            if (DA.GetData(3, ref ghOffsetZ))
            {
                GH_Convert.ToDouble(ghOffsetZ, out z, GH_Conversion.Both);
            }

            GsaOffset offset = new GsaOffset
            {
                X1 = x1,
                X2 = x2,
                Y  = y,
                Z  = z
            };

            DA.SetData(0, new GsaOffsetGoo(offset.Duplicate()));
        }