Ejemplo n.º 1
0
 void btnAnalize_Click(object sender, EventArgs e)
 {
     tvSa1.Nodes.Clear();
     tvSa2.Nodes.Clear();
     try
     {
         STNode[] arrRootX = sa.Analize(tbPhrase1.Text);
         sa.SetActants(arrRootX, gpDict);
         sa.RemovePrepositions(arrRootX);
         TreeNode[] arrNodeX = sa.CreateTreeNodes(arrRootX);
         tvSa1.Nodes.AddRange(arrNodeX);
         tvSa1.ExpandAll();
         STNode[] arrRootY = sa.Analize(tbPhrase2.Text);
         sa.SetActants(arrRootY, gpDict);
         sa.RemovePrepositions(arrRootY);
         TreeNode[] arrNodeY = sa.CreateTreeNodes(arrRootY);
         tvSa2.Nodes.AddRange(arrNodeY);
         tvSa2.ExpandAll();
         PhraseComparer pc = new PhraseComparer(sa, lfDict);
         STNode[]       arrRoot;
         double[,] matrCmp, matrParent, matr;
         int[]  arrIndex;
         double res = pc.Analize(arrRootX, arrRootY,
                                 out arrRoot, out matrCmp, out matrParent,
                                 out matr, out arrIndex);
         ResForm rForm = new ResForm(arrRoot, arrRootY, matrCmp,
                                     matrParent, matr, arrIndex, sa, res);
         rForm.ShowDialog();
     }
     catch
     {
         MessageBox.Show("Ошибка анализа");
     }
 }
Ejemplo n.º 2
0
 void btnAdd_Click(object sender, EventArgs e)
 {
     try
     {
         PhraseComparer pc = new PhraseComparer(sa, lfDict);
         //Actant[] arrActArg, arrActVal;
         LexFunction lf = (LexFunction)(lvLf.SelectedIndices[0] + 1);
         //if (lf == LexFunction.Conv)
         //    pc.ParseConvParam(tbParam.Text, out arrActArg, out arrActVal);
         lfDict.AddLF(new LFArgVal(wArg, wVal, lf, tbParam.Text));
     }
     catch
     {
         MessageBox.Show("Ошибка добавления лексической функции");
         return;
     }
     tbVal.Text = "";
 }