| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS | | | | Im Fokus: CAD Automation & CPQE |
Autor
|
Thema: Anzahl der Achsen auslesen (419 / mal gelesen)
|
JZühlke Mitglied Data Science Consultant
Beiträge: 16 Registriert: 28.04.2022
|
erstellt am: 02. Aug. 2022 15:41 <-- editieren / zitieren --> Unities abgeben:
Moin zusammen, Ich suche gerade nach einer Möglichkeit, die Anzahl an Achsen in meinem 3D-Modell per Marko zu bestimmen. Hintergrund ist, dass ich neue Achsen erzeugen möchte und diese per ID ansprechen muss (Gibt es da eigentlich eine Alternative?). Wenn in dem Modell nun schon Achsen vorhanden sind, funktionieren meine statischen Namen nicht und ich muss die Namen dynamisch anpassen können. Kennt jemand eine Lösung? Viele Grüße, Jörn Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RBE Mitglied TechSupport; Bechtle PLM Deutschland GmbH
Beiträge: 291 Registriert: 11.02.2002 HP ZBook 17 G5 Core i9 2.9GHz 32GB RAM Quadro P4200 Win11 SolidWorks2024 SP1
|
erstellt am: 02. Aug. 2022 16:05 <-- editieren / zitieren --> Unities abgeben: Nur für JZühlke
Hi, Du könntest die Features durchlaufen und mit Feature::GetTypeName schauen, ob es Features vom Typ "RefAxis" vorhanden sind. Mittels FeatureManager::IsNameUsed kannst Du schauen, ob ein Name bereits vergeben ist. ------------------ Grüße, RBE ---------- Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
JZühlke Mitglied Data Science Consultant
Beiträge: 16 Registriert: 28.04.2022
|
erstellt am: 03. Aug. 2022 15:30 <-- editieren / zitieren --> Unities abgeben:
Hallo RBE, Hat geklappt. FeatureManager::IsNameUsed hat mir weitergeholfen. Danke Jetzt scheitere ich gerade noch daran, dass die Selection manchmal daran scheitert, einen Punkt korrekt auszuwählen. Das finde ich super lästig.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RBE Mitglied TechSupport; Bechtle PLM Deutschland GmbH
Beiträge: 291 Registriert: 11.02.2002 HP ZBook 17 G5 Core i9 2.9GHz 32GB RAM Quadro P4200 Win11 SolidWorks2024 SP1
|
erstellt am: 03. Aug. 2022 15:38 <-- editieren / zitieren --> Unities abgeben: Nur für JZühlke
Um was für einen Punkt handelt es sich denn? Eckpunkt, Referenzpunkt, Skizzenpunkt? Außer- oder innerhalb der Skizze? Wie versuchst Du denn, den Punkt auszuwählen? ModelDocExtension::SelectByID2? ------------------ Grüße, RBE ---------- Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
JZühlke Mitglied Data Science Consultant
Beiträge: 16 Registriert: 28.04.2022
|
erstellt am: 03. Aug. 2022 15:48 <-- editieren / zitieren --> Unities abgeben:
Ich habe zwei Skizzen. Die erste erzeugt drei Linien entlang des Schwerpunkt-Hauptträgheitsachsensystems. In der zweiten Skizze organisiere ich die Extrempunkte entlang der drei Hauptträgheitsachsen. Hier der Beispielcode für den ersten Punkt (Er heißt Point2, weil ich in der Skizze noch den Schwerpunkt mit drin habe) Code:
boolstatus = Part.Extension.SelectByID2("Point2@" + SketchName, "EXTSKETCHPOINT", Extrempunkt1Max(0), Extrempunkt1Max(1), Extrempunkt1Max(2), True, 0, Nothing, 0) boolstatus = Part.Extension.SelectByID2("Line1@" + SketchNameLinie, "EXTSKETCHSEGMENT", vXaxis(0), vXaxis(1), vXaxis(2), True, 1, Nothing, 0) Dim myRefPlane As Object Set myRefPlane = Part.FeatureManager.InsertRefPlane(4, 0, 2, 0, 0, 0)
Bei Punkt 5 (dem ersten entlang der Z-Achse) scheitert das Makro immer wieder, allerdings nur bei diesem Teil. Andere Bauteile funktionieren... meistens. Ich bin verwirrt Code:
boolstatus = Part.Extension.SelectByID2("Point6@" + SketchName, "EXTSKETCHPOINT", Extrempunkt3Max(0), Extrempunkt3Max(1), Extrempunkt3Max(2), True, 0, Nothing, 0) If boolstatus = False Then boolstatus = Part.Extension.SelectByID2("", "EXTSKETCHPOINT", Extrempunkt3Max(0), Extrempunkt3Max(1), Extrempunkt3Max(2), True, 1, Nothing, 0) End If
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|