Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  Hab da was für Euch

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
  
Schmucker Sound am Ohr: NOVA Audio Ohrringe
Autor Thema:  Hab da was für Euch (1745 mal gelesen)
Abele
Mitglied



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

Beiträge: 71
Registriert: 09.06.2004

SWX2007 / SP1

erstellt am: 12. Jul. 2007 14:24    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


Features_einblenden.zip

 
Hallo zusammen,

wie manche bereits mitbekommen haben, mache ich gerade meine ersten Gehversuche mit Solid Works.

Nun ist mein erstes VBA-Tool anwendbar und ich dachte ich enthalte es Euch nicht vor.

Wenn ich in SWXSolidWorks ein Feature unterdrücke, dann unterdrückt er ja auch die Features die auf selbiges basieren. (Kinder)
Hebe ich die Unterdückung auf, so hebt er diese nur bei dem angewählten Teil auf und die Kinder bleiben unterdrückt.

Das hat mich ordentlich genervt und so habe ich Abhilfe geschaffen.

Vielleicht gibt es in SWXSolidWorks diese Funktion ja, aber ich hab nix gefunden.
Sollte es diese Funktion nicht geben und Ihr hättet auch gern die Möglichkeit beim ausgewählten Feature UND seinen Kindern
die Unterdrückung in einem Zug aufzuheben, so könnt Ihr gerne mal mein Tool testen und bei Gefallen verwenden.

Haftung übernehme ich natürlich keine.

So funktionierts:

Unterdrücktes Feature im Feature Baum anklicken, Makro starten schon gehts los.

Das Tool sagt Euch dann noch genau welche Unterdrückungen aufgehoben wurden.

Bei Features die ### im Namen haben wird die Unterdrückung nicht aufgehoben.
Das habe ich eingebaut um es zu ermöglichen dass bestimmte Teile bei Ausführung des Makros ignoriert werden.
Sind Features im Featurebaum die nicht eingeblendet werden sollen, einfach in den Namen ein ### und schon werden
sie ignoriert.

Für eine Schaltfläche hab ich auch gleich ein bmp angehängt.

Hoffe Ihr habt Verwendung für das Tool.

Viele Grüße
Ralph

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: 12. Jul. 2007 15:00    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 Abele 10 Unities + Antwort hilfreich

Hallo Ralph,

eine recht nützlich Funktion.
Wüsste jetzt persönlich auch nicht ob dies mit SolidWorks bereits möglich ist.
Ich habe zumindest in 2006 und 2007 auf die Schnelle nichts gefunden.

Jedoch solltest du in der Zeile
Set CurModelDoc = swApp.ActiveDoc()
Die Klammern weg machen, sonst kommt es zu einem Laufzeitfehler. So gehts:
Set CurModelDoc = swApp.ActiveDoc

Anmerkung:
Deklariere die SolidWorks Objekte richtig, in deinem Fall die Variablen
Dim swApp As SldWorks.SldWorks
Dim SelectionMgr As sldworks.SelectionMgr
und nicht als Object. Bei den meisten SolidWorks Objekten hast du es ja schon gemacht.
Damit lassen sich auch solche Fehler wie mit der Klammer leichter vermeiden, da durch das IntelliSense der VBA-Entwicklungsumgebung die Methodennamen vorgeschlagen werden.

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

Wer A sagt, der muss nicht B sagen. Er kann auch erkennen, dass A falsch war. Bertolt Brecht
------------------
SolidWorks | API | Makro | Schulung | Freeware | Schuler Design Automation GmbH

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

wildcad
Mitglied
Konstrukteur


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

Beiträge: 469
Registriert: 13.01.2005

Core 2 Duo E8600
8 Gb RAM
Quadro FX3500
Win PRO x64 SP2
SWX 2006 SP 5.1
SWX 2007 SP 5.0
SWX 2008 SP 5.0
Office 2003

erstellt am: 12. Jul. 2007 15:04    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 Abele 10 Unities + Antwort hilfreich

Super Sache!

Hat mich auch schon immer genervt.

------------------
Grüße
David

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: 12. Jul. 2007 15: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 Nur für Abele 10 Unities + Antwort hilfreich

Ich habe mich mal ein bisschen mit diesem Thema beschäftigt, da ich es schon recht interessant finde.

Wenn man auf die Möglichkeit verzichten kann bestimmte Kindfeatures auszuschließen, wie es Ralph durch "###" getan hat kann man diese Aufgabe durch einen einzigen API Befehl erledigen.
Denn im Gegensatz zu SolidWorks, bietet die API einen schaltet alla "Alle Kinder berücksichtigen".

Hier die Funktion:

Code:

Sub Unterdrueckung_aufheben()

    Dim oSwApp As SldWorks.SldWorks
    Dim bStatus As Boolean
    Dim oSwModelDoc As SldWorks.ModelDoc2
    Dim oSwFeature As SldWorks.Feature
    Dim oSwSelectionMgr As SldWorks.SelectionMgr

    On Error GoTo Errhandle

    Set oSwApp = Application.SldWorks
    Set oSwModelDoc = oSwApp.ActiveDoc
    Set oSwSelectionMgr = oSwModelDoc.SelectionManager

    If oSwSelectionMgr.GetSelectedObjectCount = 1 Then
        If oSwSelectionMgr.GetSelectedObjectType2(1) = _
                SwConst.swSelBODYFEATURES Then
            Set oSwFeature = oSwSelectionMgr.GetSelectedObject5(1)
            bStatus = oSwFeature.SetSuppression2( _
                SwConst.swUnSuppressDependent, _
                SwConst.swAllConfiguration, Nothing)
        End If
    End If

    Exit Sub
Errhandle:
    MsgBox "Bei der Ausführung kam es zu einem Fehler. Aktion abgebrochen", vbCritical, "Fehler"
End Sub


Die Zeile

Code:
bStatus = oSwFeature.SetSuppression2( _
                SwConst.swUnSuppressDependent, _
                SwConst.swAllConfiguration, Nothing)

ist die entscheidente. Durch den Parameter suppressionState kann man mit Hilfe der swconst Konstanten swUnSuppressDependent alle Kinder aus der Unterdrückung holen.

Diese Funktion wäre etwas für unser Tool SDA-4Free. Mit Hilfe des Add-Ins einen Eintrag in das Kontextmenü des FeatureBaums hinzufügen und schon wäre diese Funktion bequem in SolidWorks verfüg und erreichbar.

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

Wer A sagt, der muss nicht B sagen. Er kann auch erkennen, dass A falsch war. Bertolt Brecht
------------------
SolidWorks | API | Makro | Schulung | Freeware | Schuler Design Automation GmbH

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

rOb.
Mitglied
Konstrukteur


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

Beiträge: 514
Registriert: 05.02.2003

erstellt am: 12. Jul. 2007 15:36    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 Abele 10 Unities + Antwort hilfreich

Im Menü Bearbeiten gibts den Punkt "Unterdrückung mit abhängigen Elementen aufheben", und schwups sind alle Kinder wieder da. Nicht nur zum Weltkindertag :-)

Gruß, Robert

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

Piet
Mitglied
Konstruktionsleiter & Konstrukteur


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

Beiträge: 661
Registriert: 20.11.2001

SWx 2021

erstellt am: 12. Jul. 2007 16:06    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 Abele 10 Unities + Antwort hilfreich


Unterdrueckung_aufheben.JPG

 
Nicht, dass ich euch ärgern will, aber diese Funktion gibt es in SWXSolidWorks mindestens seit Version 2001, denke ich. Wie man es über die Menüs findet, weiß ich auch nicht, aber ich hab seit eh und jeh einen Button dafür in meiner Featuresymbolleiste.

Piet

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

wildcad
Mitglied
Konstrukteur


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

Beiträge: 469
Registriert: 13.01.2005

Core 2 Duo E8600
8 Gb RAM
Quadro FX3500
Win PRO x64 SP2
SWX 2006 SP 5.1
SWX 2007 SP 5.0
SWX 2008 SP 5.0
Office 2003

erstellt am: 12. Jul. 2007 16:31    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 Abele 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Piet:
...gibt es in SWX mindestens seit Version 2001...

und ich noch nie bemerkt 

------------------
Grüße
David

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

Cummins
Mitglied
Konstrukteur


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

Beiträge: 15
Registriert: 12.02.2005

SolidWorks 2005 SP4.0

erstellt am: 12. Jul. 2007 16:52    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 Abele 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Piet:
.... Wie man es über die Menüs findet, weiß ich auch nicht, aber ich hab seit eh und jeh einen Button dafür in meiner Featuresymbolleiste.

Piet


RMT in der Befehlsleiste / Anpassen / Befehle / Features 

------------------
Gruß

Chris 
 

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

rOb.
Mitglied
Konstrukteur


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

Beiträge: 514
Registriert: 05.02.2003

erstellt am: 12. Jul. 2007 16:56    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 Abele 10 Unities + Antwort hilfreich

Noch was. Es sieht so aus, als lassen sich übers Menü auch die Konfigurationen steuern, wärend man mit dem Button nur die aktuelle Konfiguration beeinflusst.

Ich brauchs sehr selten, da ich nicht so der Unterdrücker bin, auch wenn mir die armen unterdrückten Kinder so leid tun :-D

@Abele
trotdem sehr nett von dir deine Gehversuche gleich anderen zur Verfügung zu stellen.

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: 12. Jul. 2007 17: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 Nur für Abele 10 Unities + Antwort hilfreich

Ich hatte es mir ja fast schon gedacht, nach dem dies per API so einfach geht.
Da bin ich zumindest wieder etwas schlauer  geworden.

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

Wer A sagt, der muss nicht B sagen. Er kann auch erkennen, dass A falsch war. Bertolt Brecht
------------------
SolidWorks | API | Makro | Schulung | Freeware | Schuler Design Automation GmbH

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

Abele
Mitglied



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

Beiträge: 71
Registriert: 09.06.2004

SWX2007 / SP1

erstellt am: 13. Jul. 2007 08:27    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

Eigentlich schade.

Aber vielleicht kann der Eine oder Andere das Tool brauchen wegen der ###-Funktion, dass kann die SWXSolidWorks und die API ja anscheinend nicht. lol

Viele Grüße
Ralph

[Diese Nachricht wurde von Abele am 13. Jul. 2007 editiert.]

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

StefanBerlitz
Guter-Geist-Moderator
IT Admin (CAx)



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

Beiträge: 8756
Registriert: 02.03.2000

SunZu sagt:
Analysiere die Vorteile, die
du aus meinem Ratschlag ziehst.
Dann gliedere deine Kräfte
entsprechend und mache dir
außergewöhnliche Taktiken zunutze.

erstellt am: 13. Jul. 2007 11:33    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 Abele 10 Unities + Antwort hilfreich

Hallo Ralph,

nicht traurig sein, sondern stolz. Ich finde das super, dass du dich da mit Hilfe des Forums und der Leute drum gekümmert hast, dich in die API eingearbeitet hast, konstruktive Fragen und Antworten gestellt hast und dann dein Ergebnis hier mit den anderen teilst. Chapeau, wenn nur alle so wären.

Selbst wenn es diese Funktion schon gibt ist es ein gutes Lehrstück. Wieder ein öffentlich zugängliches Beispiel mehr, bei dem man sich ggf. etwas abschauen oder drauß lernen kann  

   

Ciao,
Stefan

------------------
Inoffizielle deutsche SolidWorks Hilfeseite    http://solidworks.cad.de

Member of CAD.de BOINC Team  -   | Seti@Home | CPDN | Einstein@Home

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

Baumjäger
Mitglied
CAD/PDM Administrator


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

Beiträge: 339
Registriert: 21.06.2006

SW2017 - S5.0
AutoCAD Mechanical 2018
Win10
Intel Xeon E3-1240 V2 3,4GHz
16GB RAM
NVIDIA Quadro 4000

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


Unterdrückung.rar

 
Hallo zusammen,

Ich habe das Makro mal ein bisschen erweitert um es als Shortcut nutzen zu können.
so kann es jetzt (nach auswahl eines Features) entweder unterdrücken oder eben "mit Kindern unterdrückung aufheben", je nachdem ob das Feature unterdrückt ist oder nicht.
Hoffe sowas gibt es nicht schon..

Danke an Daniel für die Steilvorlage....

viele Grüße
Andy

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