Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  API Komponenten Name einlesen

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
Autor Thema:  API Komponenten Name einlesen (1844 mal gelesen)
gegy3
Mitglied



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

Beiträge: 300
Registriert: 26.04.2006

SolidWorks 2012 SP 5.0

erstellt am: 14. Apr. 2008 10:05    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.

Kann mir jemand sagen, wie ich in SWXSolidWorks mit Hilfe der API den kompletten
Komponentennamen, also in dieser Form: "Teil -1@Baugruppe" in eine Variable einlesen kann?

Danke.

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

SLDW-FEM
Mitglied
Simulations-Ingenieur


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

Beiträge: 643
Registriert: 21.02.2005

Solidworks 2017+2019+20+22
SpaceClaim
Windows 11 64bit
HP-ZBook 32gbRAM NVIDIA

erstellt am: 14. Apr. 2008 11:38    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 Nur für gegy3 10 Unities + Antwort hilfreich

Hallo auch

Such mal in der api-Hilfe nach bom 
Da steht alles mit Beispielen

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

gegy3
Mitglied



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

Beiträge: 300
Registriert: 26.04.2006

SolidWorks 2012 SP 5.0

erstellt am: 14. Apr. 2008 11:45    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

 
Zitat:
Original erstellt von SLDW-FEM:
Hallo auch

Such mal in der api-Hilfe nach bom 
Da steht alles mit Beispielen


Funktionieren die bom befehle denn auch in einer Baugruppe? Dachte das funktioniert nur auf einer Zeichnung?

[Diese Nachricht wurde von gegy3 am 14. Apr. 2008 editiert.]

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

nahe
Ehrenmitglied



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

Beiträge: 1764
Registriert: 18.01.2001

arbeite mit:
Dell Precision 7750
i7 2,6 GHz 6 Kerne
32GB RAM
512GB SSD
NVIDIA Quadro RTX 4000
------------------------
SWX-2020 SP5.0
EPDM
----------------
Windows 10
----------------
VB.net
VB
VBA
ein wenig Swift am Mac

erstellt am: 14. Apr. 2008 11:57    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 Nur für gegy3 10 Unities + Antwort hilfreich

hallo

wie wärs einfach mit

Component2.Name2 + "@" + modeldoc.GetTitle


------------------
Grüße
Heinz

[Diese Nachricht wurde von nahe am 14. Apr. 2008 editiert.]

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

tbd
Mitglied
Teamleiter


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

Beiträge: 825
Registriert: 26.01.2006

Dell Percision T5400
Intel(R) Xeon(R) CPU
X5460 @ 3.16GHz
3,25 GB RAM
Nvidia Quadro FX 4600
-----
Win XP Prof SP 3
SW 2008 SP 5.0
PARTsolutions 8.1.08
Cideon SAP PLM 5.103.5.17
Visual Studio 2008

erstellt am: 14. Apr. 2008 12:03    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 Nur für gegy3 10 Unities + Antwort hilfreich

Hallo,

ohne es jetzt sicher besser zu wissen, aber besser währe doch:

Code:
Component2.Name2 & "@" & Component2.GetParent.Name

------------------
Mfg Daniel

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

gegy3
Mitglied



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

Beiträge: 300
Registriert: 26.04.2006

SolidWorks 2012 SP 5.0

erstellt am: 14. Apr. 2008 12:34    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

klingt gut!

weiß jetzt nur noch nicht, wie ich den namen meiner Selektion im featuremanager in eine Variable schreibe. und ähmmm.. ja, ich steh ziemlich am Anfang mit der Programmierung in der solidworks API *g*

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

gegy3
Mitglied



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

Beiträge: 300
Registriert: 26.04.2006

SolidWorks 2012 SP 5.0

erstellt am: 14. Apr. 2008 14:32    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

Also wenn ich den code

dim name as object

name = Component2.Name2()

nutze, sagt er mir als Fehler "Object benötigt". in der API Hilfe steht aber,
das der name der selektierten Komponente zurückgegeben wird. Wenn ich aber nun eine komponente händisch markiert habe müsste es doch so funktionieren, oder?

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

Lutz Federbusch
Ehrenmitglied V.I.P. h.c.
Dipl.-Ing. Maschinenbau



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

Beiträge: 3094
Registriert: 03.12.2001

alle SW seit 97+
AutoCAD2016-2022
ERP ProAlpha + CA-Link
Intel Core i7-7820K 32GB
Win10x64 Quadro K5000
SpacePilot

erstellt am: 14. Apr. 2008 15:26    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 Nur für gegy3 10 Unities + Antwort hilfreich

Also erstmal ist name bei Dir ein String und kein Object. Component2 wäre das Object, von dem Du den Namen ausliest. Das Object solltest Du mit dem Set- Befehl schon zugewiesen haben...

------------------
Lutz Federbusch
Mein Gästebuch
Der Mensch, Herr oder Sklave der Technik?

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

tbd
Mitglied
Teamleiter


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

Beiträge: 825
Registriert: 26.01.2006

Dell Percision T5400
Intel(R) Xeon(R) CPU
X5460 @ 3.16GHz
3,25 GB RAM
Nvidia Quadro FX 4600
-----
Win XP Prof SP 3
SW 2008 SP 5.0
PARTsolutions 8.1.08
Cideon SAP PLM 5.103.5.17
Visual Studio 2008

erstellt am: 14. Apr. 2008 15:49    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 Nur für gegy3 10 Unities + Antwort hilfreich

Hallo Gegy3,

Hier ein Beispiel wie man ein Objekt der selektierten Komponente initialisiert und desen Namen ermittelt.

Code:

Sub main()
    Dim oSwApp As SldWorks.SldWorks
    Dim oSwModel As SldWorks.ModelDoc2
    Dim oSwSelManager As SldWorks.SelectionMgr
    Dim oSwComponent As SldWorks.Component2
    'SolidWorks Application
    Set oSwApp = Application.SldWorks
    'Aktuelles Dokument
    Set oSwModel = oSwApp.ActiveDoc
    If oSwModel Is Nothing Then Exit Sub
    'Selektionsmanager
    Set oSwSelManager = oSwModel.SelectionManager
    'Ist etwas selektiert?
    If oSwSelManager.GetSelectedObjectCount > 0 Then
        'Besitz die Selektion eine Komponente oder
        'handelt es sich um eine solche?
        Set oSwComponent = _
        oSwSelManager.GetSelectedObjectsComponent2(1)
    End If
    If Not oSwComponent Is Nothing Then
        'Name
        Debug.Print ( _
            "Name der selektierten Komponente : " & _
            oSwComponent.Name2)
    End If     
End Sub

------------------
Mfg Daniel

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

gegy3
Mitglied



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

Beiträge: 300
Registriert: 26.04.2006

SolidWorks 2012 SP 5.0

erstellt am: 14. Apr. 2008 16:12    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

Set oSwComponent = _
        oSwSelManager.GetSelectedObjectsComponent2(1)

ich glaub das hab ich gesucht 

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

gegy3
Mitglied



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

Beiträge: 300
Registriert: 26.04.2006

SolidWorks 2012 SP 5.0

erstellt am: 14. Apr. 2008 16:15    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

ach ja, wofür steht denn die 1 in GetSelectedObjectsComponent2 (1)
Das was da in der API Hilfe als Erklärung steht, versteh ich nicht so ganz

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

tbd
Mitglied
Teamleiter


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

Beiträge: 825
Registriert: 26.01.2006

Dell Percision T5400
Intel(R) Xeon(R) CPU
X5460 @ 3.16GHz
3,25 GB RAM
Nvidia Quadro FX 4600
-----
Win XP Prof SP 3
SW 2008 SP 5.0
PARTsolutions 8.1.08
Cideon SAP PLM 5.103.5.17
Visual Studio 2008

erstellt am: 14. Apr. 2008 16:29    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 Nur für gegy3 10 Unities + Antwort hilfreich

Hallo gegy3,

die 1 steht für das erste selektierte Element. Man kann ja schließlich in SolidWorks mehrere verschiedene Elemente selektieren. Bei mehreren Selektionen muss man hochzählen.
In einem Makro kannst du alle Selektionen z.B. in einer For-Next-Schleife verarbeiten.

------------------
Mfg Daniel

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

gegy3
Mitglied



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

Beiträge: 300
Registriert: 26.04.2006

SolidWorks 2012 SP 5.0

erstellt am: 14. Apr. 2008 16:44    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

Hmmm... wie könnte denn ein Code aussehen, der folgendes macht:

überprüfe jeden Komponentennamen im Feature Baum ob "abc" enthalten ist?
ich meine, ohne das etwas selektiert ist. Haben die Teile im Featurebaum eine aufsteigende nummer? ist das erste teil im Featurebau, das Teil1 ?

[Diese Nachricht wurde von gegy3 am 14. Apr. 2008 editiert.]

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

tbd
Mitglied
Teamleiter


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

Beiträge: 825
Registriert: 26.01.2006

Dell Percision T5400
Intel(R) Xeon(R) CPU
X5460 @ 3.16GHz
3,25 GB RAM
Nvidia Quadro FX 4600
-----
Win XP Prof SP 3
SW 2008 SP 5.0
PARTsolutions 8.1.08
Cideon SAP PLM 5.103.5.17
Visual Studio 2008

erstellt am: 14. Apr. 2008 16:51    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 Nur für gegy3 10 Unities + Antwort hilfreich

Hallo gegy3,

alles werde ich dir leider nicht vorkauen, ein bisschen musst du dich schon auch anstrengen.
In der API Hilfe gibt es das Beispiel Make All Assembly Components Visible Example (VB), dort sieht du schon mal wie man alle Komponenten rekursiv in einer Baugruppe durchlaufen kann.
Den Teil mit Visible kannst du ja löschen und dort deine eigene Abfrage mit der Komponente einbauen.

------------------
Mfg Daniel

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



Anzeige:Infos zum Werbeplatz >>

GeoVisual Civil Engineer CAD APP für 3D, Tiefbau, AEC - Architektur-, Ingenieur- und Bauwesen

Die benutzerfreundliche Softwarelösung zur Visualisierung von Infrastrukturplanungen

gegy3
Mitglied



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

Beiträge: 300
Registriert: 26.04.2006

SolidWorks 2012 SP 5.0

erstellt am: 14. Apr. 2008 16:53    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

Zitat:
Original erstellt von tbd:
alles werde ich dir leider nicht vorkauen, ein bisschen musst du dich schon auch anstrengen
[/i]

Hab ich mir schon gedacht  aber einen Versuch war es wert 

Und dennoch, hast Du mir mit dem Tip :" Make All Assembly Components Visible Example (VB)" wieder sehr viel weiter geholfen. Vielen Dank!

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