Texterstellungsbaum kopieren

Hallo
Ist es möglich, den Erstellungsbaum von sw2023 in Textdateiform abzurufen? Vielen Dank für Ihre Antworten.

1 „Gefällt mir“

Hallo

Meines Wissens nicht, aber sicherlich werden andere Tricks haben.
Darf ich Sie andererseits aus Neugierde nach dem Grund fragen?

Der Schöpfungsbaum eines Raumes?
Eine Versammlung (Nomenklatur?)
Bitte geben Sie nach Möglichkeit eine Anfrage an.

Ich bin auch interessiert, ich müsste native Dateien teilen, aber mit unterschiedlichen SW-Versionen

Wenn jemand weiß, wie man entweder die Transkription des Baums in Text oder den Screenshot der Funktionen in Stufen automatisiert

Hallo;
Einige Möglichkeiten, die Sie hier erkunden können: (JAVA Script)

oder hier (aber sie sind ein wenig in die Jahre gekommen):

Herzliche Grüße

2 „Gefällt mir“

Hallo
In der Tat ist es der Baum der Schöpfung einer Baugruppe. Vielen Dank.

Hallo
Probieren Sie diesen Code in C# aus, um die Namen der Funktionen der Struktur in einer Assembly zu extrahieren:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Forms;

using SolidWorks.Interop.sldworks;
using SolidWorks.Interop.swconst;
using System.IO;

namespace Lecture_Arbre_Assemblage
{
    public partial class SolidWorksMacro
    {
        public void Main()
        {
            ModelDoc2 swDoc = null;
            Feature swFeat = null;
            swDoc = ((ModelDoc2)(swApp.ActiveDoc));
            swFeat = (Feature)swDoc.FirstFeature();
            string path = @"C:\Users\tm\Documents\tree.txt";
            File.Delete(path);
            string featType;
            string featName = swFeat.GetNameForSelection(out featType);
            while (swFeat != null)
            {
                featName = swFeat.GetNameForSelection(out featType);
                if(featType == "SKETCH")
                    File.AppendAllText(path, "\t" + featName + "\r");
                else
                File.AppendAllText(path, featName + "\r");
                swFeat = (Feature)swFeat.GetNextFeature();
            }
        }
        // The SldWorks swApp variable is pre-assigned for you.
        public SldWorks swApp;
    }
}

Sie müssen diese Codezeile ändern, um den Speicherort der Datei anzugeben:
Zeichenkette Pfad = @" C:\Benutzer\tm\Dokumente\tree.txt ";

Als Anhang gilt die Datei, die freigegeben wurde. Dies ist nur ein Entwurf, es gibt viele Möglichkeiten, je nach Bedarf.
tree.txt (377 Bytes)

Herzliche Grüße

Hallo
Vielen Dank für Ihre Antwort. Ich für meinen Teil habe am Ende dieses Dienstprogramm verwendet:

Es ist langsam, aber es erfüllt meine Bedürfnisse.

Hallo @mw1free ,
Späte Antwort...
Obwohl es sehr alt ist, funktioniert das oben durch @Maclane angegebene Makro perfekt für ein Teil oder eine Baugruppe. Der einzige Nachteil ist, dass es keine Filter für den Import bietet, was ein sehr vollständiges, aber sehr verwirrendes Dokument erzeugt.
Die vorgeschlagene Weiterentwicklung umfasst 3 Filter:

  • eine Tiefe der Erkundung des Baumes;
  • eine Liste von Kontrollkästchen, um zu definieren, welche Objekte im Baum ignoriert werden sollen;
  • Eine Liste von Kontrollkästchen zum Festlegen der Eigenschaften der anzuzeigenden Komponenten (Baugruppen).

Herzliche Grüße.
CopyFeatureTree.swp (141.5 KB)
CopyFeatureTree.pdf (196.4 KB)

2 „Gefällt mir“

Kühl!!!
Vielen Dank für diese willkommenen Entwicklungen @m.blt ... Und mit einer schönen Anleitung als Bonus, stilvoll! :+1: :+1: :+1: