Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  Rekursion der Baugruppe/Zeichnung suchen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS
  
Innovationstag mit SolidCAM und Plogmann bei HEDELIUS in Meppen
Autor Thema:  Rekursion der Baugruppe/Zeichnung suchen (520 mal gelesen)
manie
Mitglied
angehender Ing,


Sehen Sie sich das Profil von manie an!   Senden Sie eine Private Message an manie  Schreiben Sie einen Gästebucheintrag für manie

Beiträge: 55
Registriert: 07.09.2015

Solidworks 2017 SP2
Solidworks PDM Standart 2017 SP2
Intel Xeon
NVIDIA Quadro M4000 8Gb
512 GB SSD

erstellt am: 12. Dez. 2017 11:10    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo zusammen,
ich habe mal ein paar Fragen zur API.


1. Der Code unten ist im Groben aus der Hilfe. Ich durchlaufe die Baugruppe des Aktiven Models mit Hilfe der Rekursion. Dabei werden die Informationen in einer Liste gespeichert.
Ich habe jetzt ein Problem, was ich mir nicht so ganz erklären kann. Wenn ich die Baugruppe im Einzelschritt durchlaufe, gehe ich dabei auch in jede Baugruppe. Wenn ich aber den Code so durchlaufen lasse bekomme ich nur die  Ebene der Baugruppe die aktive ist.

2.Das Add-In soll später auch nach den Zeichnungen suchen. Wie muss ich das anstellen: Muss ich dabei in den Pfad von meinem Model gehen und dann in den Zeichnungen nach der Komponente suchen. Oder wie läuft das.

Gruß
Marc

Code:

        /// <summary>
        /// Durchläuft den Baugruppenbaum und speichert alles in einer Liste
        /// </summary>
        /// <param name="swKomponente">Der Baum der aktiven Baugruppe</param>
        /// <param name="nLevel">Level im Baum. Default =1</param>
        /// <param name="dateiname">Der Name der Datei</param>
        /// <param name="dateipfad">Der Pfad der Datei</param>

        private static List<BaugruppenHierchie> DurchlaelftBaugruppeEbene(Component2 swKomponente, long nLevel, string dateipfad, string dateiname)
        {
            var listItem = new List<BaugruppenHierchie>();

            //Part oder Baugruppe, was durchlaufen wird um die "Kinder" zu suchen.
            object[] elternBaugruppe;

            // Hilfsvariabel um die "Kinder zu durchlaufen.
            Component2 kindKomponente;

            //TODO Wenn die Datei ein Part ist muss diese nicht durchlaufen werden. Abfangen.

            //Holt die "Kinder" der Baugruppe
            elternBaugruppe = (object[])swKomponente.GetChildren();


            foreach (var itemElternBaugruppe in elternBaugruppe)
            {

                //Hier wird von einer Unterbaugruppe die darin enthalten Teile und Unterbaugruppen gefunden.
                kindKomponente = (Component2)itemElternBaugruppe;

                //Dateipfad der Kinderkomponenten
                string dateiPfadKind = kindKomponente.GetPathName();

                //Der Name von dem Part oder der Baugruppe
                //? Muss noch überarbeitet werden
                string nurmmerModel = FindeName(dateiPfadKind);

                //Hinzufügen zur Liste
                listItem.Add(new BaugruppenHierchie { Pfad = dateiPfadKind, Dokumentennummer = nurmmerModel, LevelBaugruppe = nLevel });

               
                //Erneutest durchlaufen
                DurchlaelftBaugruppeEbene(kindKomponente, nLevel + 1, dateiPfadKind, nurmmerModel);
            }

            return listItem;
        }


Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2024 CAD.de | Impressum | Datenschutz