static void Main(string[] args) { var logger = LogManager.GetCurrentClassLogger(); logger.Info("Приложение запущено"); try { var vector1 = new Vector(new[] { 56.77, 7.5, 86.8, 6.7, 4.6, 66.8, 90.6, 12.4 }); var vector2 = new Vector(6, new[] { 5.6, 7.7, 6.8 }); Console.Write("Сумма векторов {0} и {1} = ", vector1, vector2); vector1.AddVector(vector2); Console.WriteLine(vector1); Console.WriteLine(); Console.WriteLine("Сумма векторов {0} и {1} = {2}", vector1, vector2, Vector.AddVectors(vector1, vector2)); Console.WriteLine(); var vector3 = new Vector(-2); } catch (Exception e) { logger.Error(e, "Ошибка"); } Console.ReadKey(); }
public void Throw_vector_arithemtic_exception_if_add_called_with_vector_of_different_size() { var firstVector = new Vector(1, 2, 3); var secondVector = new Vector(1, 2, 3, 4); Assert.ThrowsException <VectorArithmeticException>(() => firstVector.AddVector(secondVector)); }
public void Correctly_add_two_vectors_of_equal_length() { var firstVector = new Vector(1, 2, 3, 4); var secondVector = new Vector(4, 3, 2, 1); var expected = new Vector(5, 5, 5, 5); var actual = firstVector.AddVector(secondVector); Assert.AreEqual(expected, actual); }
public void TestAddition() { var vector1 = new Vector(new double[] { 1, 1, 1, 1 }); var vector2 = new Vector(new double[] { 10, 10 }); vector1.AddVector(vector2); Assert.AreEqual(new Vector(new double[] { 11, 11, 1, 1 }), vector1); }
//Transform an occurrence. Occurrence needs to be selected first through the UI private void Button2_Click(object sender, EventArgs e) { { if (((mApp.ActiveDocument != null))) { if ((mApp.ActiveDocument.DocumentType == DocumentTypeEnum.kAssemblyDocumentObject)) { if ((mApp.ActiveDocument.SelectSet.Count == 1)) { if (((mApp.ActiveDocument.SelectSet[1]) is ComponentOccurrence)) { ComponentOccurrence oCompOccurrence = mApp.ActiveDocument.SelectSet[1] as ComponentOccurrence; Matrix oTransfo = mApp.TransientGeometry.CreateMatrix(); if ((mAngleBox.Text.Length == 0)) { mAngleBox.Text = "0"; } double angle = System.Double.Parse(mAngleBox.Text); Vector trans = VectorControl1.Vector; Vector axis = VectorControl2.Vector; if ((axis.Length == 0)) { System.Windows.Forms.MessageBox.Show("Rotation Axis cannot be null", "Error"); return; } oTransfo.SetToRotation(angle * Math.Atan(1) * 4 / 180.0, axis, oCompOccurrence.MassProperties.CenterOfMass); Vector oFinalTx = oTransfo.Translation; oFinalTx.AddVector(trans); oTransfo.SetTranslation(oFinalTx, false); Matrix oNewTransfo = oCompOccurrence.Transformation; oNewTransfo.TransformBy(oTransfo); oCompOccurrence.Transformation = oNewTransfo; mApp.ActiveView.Update(); } else { System.Windows.Forms.MessageBox.Show("Not an occurrence...", "Error"); return; } } else { System.Windows.Forms.MessageBox.Show("A single occurrence must be selected...", "Error"); return; } } else { System.Windows.Forms.MessageBox.Show("An Assembly document must be active...", "Error"); return; } } else { System.Windows.Forms.MessageBox.Show("An Assembly document must be active...", "Error"); return; } } }