Официальный форум российского программного комплекса T-FLEX PLM


Поиск  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Помогите с Т-flex, Редактор макросов Т-flex
 
вот код который должен сохранять в ХМЛ файл всю инфу.....
[CODE]using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Xml;
using System.IO;

namespace Form1
{
   public partial class Form1 : Form
   {
       public Form1()
       {
           InitializeComponent();
       }

       private void button1_Click(object sender, EventArgs e)
       {
            // Этот пример записывает xml в строку
           var buffer = new StringBuilder();
           var settings = new XmlWriterSettings { Indent = true };

           // Измените вызов метода Create, если надо писать в файл, например.
           using (var writer = XmlTextWriter.Create(buffer, settings))
           {
               writer.WriteStartElement("nodes");
               Traverse(treeView1.Nodes[0], writer);
               writer.WriteEndDocument();
           }

           File.WriteAllText(@"C:\output.xml", buffer.ToString());
       }

       void Traverse(TreeNode root, XmlWriter w)
       {
           if (root == null) return;

           
           {
               w.WriteStartElement("node");
               w.WriteAttributeString("id", root.Text);
               Traverse(root.FirstNode, w);
               w.WriteEndElement();
           }
           Traverse(root.NextNode, w);
 
       }
   }
}
[/CODE]

В визуал студио написан код,точки все в дереве созданы в ручную были.Тоисть он рабочий. как эго подсоединить к уже работающей программе?? просто когда подсоединяю и добавляю библиотеки недостающие для этого кода выдает ошибки....как избежат этого???
нужно просто теперь всю инфу которая компилируется в дерево сохранить в файлик.
дерево построений API, как сделать в так чтобы выделялся обьект
 
Ну ниужели никто не знает как такое реализовать??? Я пробовал Edges привязать еще. но ничего не получилось.
дерево построений API, как сделать в так чтобы выделялся обьект
 
Здравствуйте. Пытаюсь сделать нечто подобное. Чтобы при кликанни в дереве построений на определенный обьект, он вы делялся на самой детали. Как это реализовать?? при таком коде выделяется всего лишь только обьект сам. А как так сделать чтобы выделялась грань, или ребро?? (В дереве построений есть все данные, нужно чтобы только выделяло область)

Вот тот код который я использовал.
[CODE]...
private void treeView1_AfterSelect(object sender, System.Windows.Forms.TreeViewEventArgs e)
{
  Document Doc = TFlex.Application.ActiveDocument;
  Doc.Selection.DeselectAll();
          try
           {
               Doc.Selection.Select(Doc.GetObjectByName(treeView1.SelectedNode.Text));
           }
           catch
           {
           }

}
...[/CODE]
Спасибо за внимание. Буду очень признателен за ответ.
Изменено: Антон Рожик - 02.12.2011 14:16:15
Помогите с Т-flex, Редактор макросов Т-flex
 
Вот когда создал маленькое приложение в редакторе макросов, где использовалась форма, в которой был чекбокс и там выводились фигура и ее параметры. как ее перегнать в какой то текстовый файл типу ворда и тп.
Помогите с Т-flex, Редактор макросов Т-flex
 
Нашел траблу. в строчке не ту функцию задал.
там должно быть. ForwardLenght . Осталось только разобраться как задать выталкивание в разные стороны на разное расстояние.

EXT.ForwardLenghth = ХХ;
EXT.BackwardLength = YY;
не катит
Помогите с Т-flex, Редактор макросов Т-flex
 
Osiris2000   делал по твоему примеру все, но не пашет так же.....
Изменено: Антон Рожик - 07.11.2011 23:42:42
Помогите с Т-flex, Редактор макросов Т-flex
 
Здравствуйте. В редакторе макросов пытался по учебному пособию повторить ростроеие 3Д модели выталкиванием.
Оно то выталкивает, но только на высоту 10 милиметров.
Сколько не подставляю, все равно высота равна 10 миллиметров. В чем трабла??? Баг редактора или у меня руки кривоваты?
Вот сам код программы макроса:

using System;
using TFlex.Model;
using TFlex.Model.Model2D;
using TFlex.Model.Model3D;

namespace NewMacroNamespace
{
 public class NewMacroClass
 {
   public static void NewMacro()
   {
     // Выбираем документ
     Document tfdoc = TFlex.Application.ActiveDocument;

     // блок изменений
     tfdoc.BeginChanges("тест");

     // Создаем свободные узлы контура
     FreeNode fn1 = new FreeNode(tfdoc, 0, 0);
     FreeNode fn2 = new FreeNode(tfdoc, 50, 50);
     FreeNode fn3 = new FreeNode(tfdoc, 100, 50);  
     FreeNode fn4 = new FreeNode(tfdoc, 100, 0);  

     // Замыкаем контур
     ConstructionOutline c1 = new
     ConstructionOutline (tfdoc, fn1, fn2);
     ConstructionOutline c2 = new
     ConstructionOutline (tfdoc, fn2, fn3);  
     ConstructionOutline c3 = new
     ConstructionOutline (tfdoc, fn3, fn4);
     ConstructionOutline c4 = new
     ConstructionOutline (tfdoc, fn4, fn1);  

     // Создаем штриховку
     Area ar1 = new Area (tfdoc);
     Contour cn = ar1.AppendContour();

     // Описываем контур штриховки сегментами
     ConstructionContourSegment ccs1 = new
     ConstructionContourSegment(cn);
     ccs1.StartNode = fn1;
     ccs1.EndNode = fn2;  

     ConstructionContourSegment ccs2 = new
     ConstructionContourSegment(cn);
     ccs2.StartNode = fn2;
     ccs2.EndNode = fn3;

     ConstructionContourSegment ccs3 = new
     ConstructionContourSegment(cn);
     ccs3.StartNode = fn3;
     ccs3.EndNode = fn4;

     ConstructionContourSegment ccs4 = new
     ConstructionContourSegment(cn);
     ccs4.StartNode = fn4;
     ccs4.EndNode = fn1;

     // Создаем стандартную рабочую плоскость
     StandardWorkplane swp1 = new
     StandardWorkplane(tfdoc, StandardWorkplane.StandardType.Top);

     // Создаем 3D на основе штриховки и рабочей плоскости
     AreaProfile ap1 = new AreaProfile(tfdoc);
     ap1.Area = ar1;
     ap1.WorkSurface = swp1;

     // Создаем операцию выталкивания
     ThickenExtrusion extr = new ThickenExtrusion(tfdoc);

     // Длина выталкивания (вот тут баг какой то. Выталкивает только на 10 мм)
     extr.Thickness1 = 50;

     // Профиль для выталкивания
     extr.Profile.Add(ap1.Geometry.SheetContour);

     // Закрываем блок изменений
     tfdoc.EndChanges();
   }

 }
}
Изменено: Антон Рожик - 27.10.2011 22:01:14
Помогите чайнику с Т-flex, T-flex программирование
 
Здравствуйте. У меня вопрос по поводу програмирования в Т-флексе. Мне дали задание написать модуль под т-флекс, в котором 3-д модель будет раскладыватся на линии, а линии потом уже в точки. Вот и не знаю с чего начать! Имеется база знаний програмирования в С-шарп и Делфи. С какой програмой работать для создания модуля? С чего начать? Жду ответа. Очень буду благодарен.
Страницы: 1