Hot News aus dem CAD.de-Newsletter:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  Jemand da der Makros programmiert?

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
Autor Thema:   Jemand da der Makros programmiert? (1307 mal gelesen)
D.S.K.
Mitglied



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

Beiträge: 23
Registriert: 20.11.2018

SolidWorks 2017 SP5,0 (Win10 und Win7)

erstellt am: 07. Feb. 2019 14: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

Hallo, ich habe zwei Makros die mir Bauteile vermisst und die Länge x Breite x Höhe ins Eigenschaften schreibt.
Allerdings haben beide ein Mangel (siehe Link).

https://ww3.cad.de/foren/ubb/Forum2/HTML/031763.shtml

Kann mir bitte einer von euch weiter helfen???

Vielen Dank

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: 333
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: 07. Feb. 2019 14: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 D.S.K. 10 Unities + Antwort hilfreich

Guten morgen,
Dein Link funktioniert leider nicht.

Was für einen Mangel haben denn die Makros genau? Was funktioniert dabei nicht? Gibt es eine Fehlermeldung?

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

D.S.K.
Mitglied



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

Beiträge: 23
Registriert: 20.11.2018

SolidWorks 2017 SP5,0 (Win10 und Win7)

erstellt am: 07. Feb. 2019 14: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

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: 333
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: 07. Feb. 2019 14: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 D.S.K. 10 Unities + Antwort hilfreich

Also irgendwie verstehe ich deine Vorgehensweise nicht. Das Problem vom angehängten Thread ist gar nicht gelöst. Du machst einen neuen auf und verweist da auf den alten...Aber egal.

Ich verstehe nämlich noch ganz andere Sachen nicht:
- Der Wert der auf den Bildern ein unterschiedliches Ergebnis hat, um welches Maß handelt es sich überhaupt? Die Dicke des Gesamten Teils? Länge der Fase?
- Wie wird dieses Maß überhaupt ermittelt? Über ein Makro (wenn ja, kannst du das nochmal anhängen?, das am Anfang des Thread scheint ja ein anderes zu sein, als dass das du später verwendest), oder ist das jetzt nur eine zum Maß verknüpfte Eigenschaft?
- Wieso soll eine Rille die gleichen Werte haben wie eine Fase? Bzw. was hat Bild 3 mit den Bilder 1 und 2 zu tun?

Wenn du jetzt sowieso einen neuen Thread hast. fasse doch bitte das Problem nochmal zusammen, dann ist die Chance dass jemand helfen kann weitaus größer.

Gruß Andy

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

D.S.K.
Mitglied



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

Beiträge: 23
Registriert: 20.11.2018

SolidWorks 2017 SP5,0 (Win10 und Win7)

erstellt am: 07. Feb. 2019 14: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

Hallo Andy,
es ist richtig, mein alter Thread ist leider nicht gelöst.
Ich habe jetzt neuen eröffnet um gezielt Programmierer anzusprechen.
Du hast es richtig erkannt, ich habe zwei Makros mit derselben Funktion „Teil vermessen und die gesamte L x B x H des Teils ins Eigenschaften zu schreiben) ausprobiert.


Makro Nr.1:
„SetDimensionProperty“
Dieses Makro rundet die Zahlen auf, somit habe ich keine nach Komma Zahlen (siehe Bild Rohteil).
Da wir über 90% vorgefräste Rohlinge bestellen, ist es uns wichtig, dass Makro auch bis auf 0,1 genau ermittelt.


Makro Nr.2:
„Box_Props“
Bei diesem Makro habe ich das Problem, dass mit bestimmten Feuture (in dem Fall Fase Bild2 und Rillen Bild3) den Wert aus unerklärlichen Gründen verfälschen.
Mach ich statt Fase ein Rotierenden Schnitt (Bild1), habe ich plötzlich richtiges maß.


Ich hoffe, dass ich mich jetzt verständlicher ausgedrückt habe.

Ich danke dir schon mal im Voraus.


Gruß

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

Winni-two
Mitglied
Ing. Maschb.


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

Beiträge: 93
Registriert: 12.03.2010

SW 2018 SP5
Intel Xenon W2135 @3.7GHz
Win 10 64 bit
Graka: Nvidia Quadro P4000
32 GB Ram

erstellt am: 07. Feb. 2019 14: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 D.S.K. 10 Unities + Antwort hilfreich

Hallo,

ich hab bei mir noch ein Makro gefunden, dass ich mal irgendwo runtergeladen habe. Keine Ahnung ob es mit einem deiner zwei Makro identisch ist.

Gruss Winni

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

D.S.K.
Mitglied



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

Beiträge: 23
Registriert: 20.11.2018

SolidWorks 2017 SP5,0 (Win10 und Win7)

erstellt am: 07. Feb. 2019 14: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

Hallo Winni,
vielen Dank.
Leider funktioniert dieses Makro bei mir nicht.

Grüße

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

bk.sc
Ehrenmitglied V.I.P. h.c.
Konstrukteur Sondermaschinenbau



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

Beiträge: 2146
Registriert: 18.07.2012

-Solid Works 2019 SP1
-Pro Engineer WF 3

erstellt am: 07. Feb. 2019 14: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 D.S.K. 10 Unities + Antwort hilfreich

Hallo D.S.K

bei dem Macro "SetDimensionProperty" musst du die Zeilen

Code:
    .X = Ceiling(Round(.X * 10000) / 10)
    .Y = Ceiling(Round(.Y * 10000) / 10)
    .Z = Ceiling(Round(.Z * 10000) / 10)

im PMPClass Modul oder die Funktion die hinter "Ceiling" steckt anpassen das dein gewünschtes Ergebnis raus kommt.

Gruß
Bernd

------------------
--- Man muß nicht alles wissen, man muß nur wissen wo es steht ---

Staatlich anerkannte Deutschniete 

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

D.S.K.
Mitglied



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

Beiträge: 23
Registriert: 20.11.2018

SolidWorks 2017 SP5,0 (Win10 und Win7)

erstellt am: 07. Feb. 2019 14: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

Hallo bk.sc,
was ich da schon alles ausprobiert habe  

Ich bekomme einfach keine Komma rein. 

Ich habe absolut keine Kenntnisse um Makros zu Schreiben.

Gruß

[Diese Nachricht wurde von D.S.K. am 07. Feb. 2019 editiert.]

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

bk.sc
Ehrenmitglied V.I.P. h.c.
Konstrukteur Sondermaschinenbau



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

Beiträge: 2146
Registriert: 18.07.2012

-Solid Works 2019 SP1
-Pro Engineer WF 3

erstellt am: 07. Feb. 2019 14: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 D.S.K. 10 Unities + Antwort hilfreich

Hallo,

wo soll das Macro den hin Runden, normal runden, immer aufrunden, immer abrunden, weitere Nachkommastellen einfach wegschneiden? Und wieviele Nachkommastellen sollen es am Ende den noch sein?

Gruß
Bernd

------------------
--- Man muß nicht alles wissen, man muß nur wissen wo es steht ---

Staatlich anerkannte Deutschniete 

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

D.S.K.
Mitglied



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

Beiträge: 23
Registriert: 20.11.2018

SolidWorks 2017 SP5,0 (Win10 und Win7)

erstellt am: 07. Feb. 2019 14: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

Eine Stelle nach Komma würde uns reichen.
Bei z.B. 23.34mm soll es 23.4mm geben (nach oben aufrunden).


Grüße

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: 333
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: 07. Feb. 2019 14: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 D.S.K. 10 Unities + Antwort hilfreich

Hallo,
ich habe mir die Makros mal angeschaut.
Beide Makros verwenden die Funktion getbodyBox bzw. getBox. Diese Funktion nähert sich nur den Außenmaßen an und liefert gar keine exakten Werte wenn ich die Hilfe richtig verstehe.
(The values returned are approximate and should not be used for comparison or calculation purposes. )
Im Prinzip ist das kein Fehler dass sie keine Kommastellen liefert sondern so gewollt, liefert dafür auch Ergebnisse wenn du kein rechteckiges Teil hast.
(Wenn ich das auf die schnelle richtig verstehe, geht da Makro vom Ursprungspunkt in alle drei Richtungen nach außen, und zwar jeweils ins - und ins + solange bis es nicht mehr im Modell ist. Aus den Werten werden dann die äußeren Eckpunkte berechnet und zurückgegeben. (Ich habe die Funktion nie verwendet, man korrigiere mich wenn das nicht stimmt)

Im Makro SetDimensionProperty wird das aus meiner Sicht mit Absicht so verwendet. Die Ceiling(Round) Funktion wird hier gar nicht zum Runden verwendet, sondern um zu prüfen ob das Ergebnis größer als ein bestimmtes Maße ist.
Entsprechend wird dann korrekt gerundet. Es ist also gewollt dass aus 100,5 101 wird. Das Rohmaße werden bewusst größer gewählt. (Deshalb hat die Änderung der Werte '.X = Ceiling(Round(.X * 10000) / 10)
    '.Y = Ceiling(Round(.Y * 10000) / 10)
    '.Z = Ceiling(Round(.Z * 10000) / 10) auch gar keinen wirklichen Effekt. Die Kommastelle ist da bereits abgeschnitten bzw. war nie da.

Im anderen Makro funktioniert das ähnlich, weshalb auch hier wahrscheinlich die Werte ungenau werden und je nach Feature etwas variieren.

Ein Makro kann ja eigentlich nie von selbst wissen welches Maß dein längstes, Höchstes bzw. breitestes ist.

Um genaue Werte zu bekommen müsstest du also die Maße explizit immer gleich benennen. Dann genau nach diesen Maßen suchen und die Werte aus den Maßen explizit verwenden.


[Diese Nachricht wurde von Baumjäger am 07. Feb. 2019 editiert.]

[Diese Nachricht wurde von Baumjäger am 07. Feb. 2019 editiert.]

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

D.S.K.
Mitglied



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

Beiträge: 23
Registriert: 20.11.2018

SolidWorks 2017 SP5,0 (Win10 und Win7)

erstellt am: 08. Feb. 2019 14: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

Hallo Baumjäger,
vielen Dank für die Erklärung. 

Kann man bei "SetDimensionProperty" die Funktion Kommastelle einbauen? 

Dieses Makro gefällt mir am besten, weil ich selber die Reihenfolge L x B x H oder Ø x L auswählen kann.

Danke

Grüße

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

D.S.K.
Mitglied



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

Beiträge: 23
Registriert: 20.11.2018

SolidWorks 2017 SP5,0 (Win10 und Win7)

erstellt am: 08. Feb. 2019 14: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

Eine spontane Idee ist mir durch Kopf geschossen.
Man kann doch ein Makro schreiben, die mich auffordert Fläche, Punkte, Kante oder Ebene auszuwählen um diese Maße dann in die Eigenschaften zu schreiben.

Platte:
1. Um Länge „L“ zu bestimmen zwei Flächen; Punkte oder Ebene auszuwählen.
2. Um Breite „B“ zu bestimmen zwei Flächen; Punkte oder Ebene auszuwählen.
3. Um Höhe „H“ zu bestimmen zwei Flächen; Punkte oder Ebene auszuwählen.

Drehteil:
1. Um Durchmesser  „Ø“ zu bestimmen eine Fläche oder Kante auszuwählen.
2. Um Länge „L“ zu bestimmen zwei Flächen; Punkte oder Ebene auszuwählen.


Was hält ihr davon?
Ist es so realisierbar?

[Diese Nachricht wurde von D.S.K. am 08. Feb. 2019 editiert.]

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: 333
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: 08. Feb. 2019 14: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 D.S.K. 10 Unities + Antwort hilfreich

Hi,
prinzipiell ist das möglich.
Du bewegst dich da aber aus meiner Sicht schon in ziemlich komplexen Vorgängen. D.h. wenn du, wie du sagst keine Erfahrungen mit Makros hast, wirst du da einen ziemlich rauchigen Kopf bekommen. (Oder du beauftragst jemanden damit)

Falls du wirklich selbst (in angemessener Zeit) zu einem Ergebnis kommen willst, ist es aus meiner am besten du benennst die Maße fest um, und liest genau diese Maße aus.
Das umbenennen der Maße könntest du in einem zweiten Makro machen.
Das beinhaltet natürlich dass ihr eure Konstruktionen so aufbaut dass die entsprechenden Maße auch vorhanden sind.

Hier solltest du aber mittels Makro-Aufzeichnung (für das Maß auswählen) und kleinen Beispielen aus dem Web (Alle Features durchlaufen, Maße auslesen) eine Erfolgschance haben.


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

nahe
Mitglied



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: 1427
Registriert: 18.01.2001

arbeite mit:
HP Z440 Workstation
Xenon (12-Kern) 3.5GHz
32GB RAM
238GB SSD
------------------------
SWX-2016 SP5.0
DBWorks-R15 SP2.17
----------------
Windows 7 64 bit
----------------
VB
VBA
Lotus Notes Datenbanken
erste Schritte mit Swift

erstellt am: 08. Feb. 2019 14: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 D.S.K. 10 Unities + Antwort hilfreich

Hallo,

ich gebe hier auch nochmals meinen Senf dazu.
Mit dem Thema habe ich mich vor einiger Zeit etwas beschäftigt
und es dann wieder auf Eis gelegt, weil ich keine vernünftige Lösung gefunden habe.

Der Ansatz mit den 3 bzw. 2 Maßen die dann die Hauptabmessungen bestimmen, hatte ich auch.
Das Problem dabei ist,
wenn sich die Geometrie ändert, dann müssen diese Maße angepasst werden.
(ich meine damit, wenn an der Außengeometrie Features angefügt werden, oder was weggeschnitten wird)
Es ist absehbar, dass drauf vergessen wird und dann ist wieder alles für die Katz.
(ich spreche da natürlich nur für mich, ev. haben andere das so im Griff, dass so etwas nicht vergessen wird  )

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

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

Torsten Niemeier
Ehrenmitglied V.I.P. h.c.
Maschinenbau Ingenieur



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

Beiträge: 3129
Registriert: 21.06.2001

"ZUSE I.36", 8 BIT, 32 Lämpchen, Service-Ölkännchen "ESSO-Super", Software: AO auf Kuhlmann-Parallelogramm-Plattform
** CSWP 04/2011 **
** CSWE 08/2011 **

erstellt am: 08. Feb. 2019 14: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 D.S.K. 10 Unities + Antwort hilfreich

D.S.K.
Mitglied



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

Beiträge: 23
Registriert: 20.11.2018

SolidWorks 2017 SP5,0 (Win10 und Win7)

erstellt am: 08. Feb. 2019 14: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

Hallo Baumjäger,
wenn ich keine fertige Makros dafür bekomme, muss ich mir überlegen wie ich es lösen kann.
So wie bis jetzt läuft (Teil XY öffnen, ausmessen und die Masse in die Stückliste schreiben) wird bei einer Baugruppe von 200-300 Bauteilen auf Dauer einiges an Zeit und Kosten in Anspruch nehmen.

Wir würden so ein Makro natürlich kaufen.
Brauche aber erst paar Ideen (Konzept).

Gruß

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

Christian_W
Ehrenmitglied V.I.P. h.c.
Konstrukteur (Dipl-Ing)


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

Beiträge: 2172
Registriert: 04.04.2001

SWX 2016sp5 WIN7-64
proAlpha6.2e/calinkV9
(Tactonworks)
(Medusa7, NesCAD2010,
solidEdge19) CSWP 12/2015

erstellt am: 08. Feb. 2019 14: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 D.S.K. 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von nahe:
... wenn sich die Geometrie ändert, dann müssen diese Maße angepasst werden...

Klarer Fall für ein Makrofeature 

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

nahe
Mitglied



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: 1427
Registriert: 18.01.2001

arbeite mit:
HP Z440 Workstation
Xenon (12-Kern) 3.5GHz
32GB RAM
238GB SSD
------------------------
SWX-2016 SP5.0
DBWorks-R15 SP2.17
----------------
Windows 7 64 bit
----------------
VB
VBA
Lotus Notes Datenbanken
erste Schritte mit Swift

erstellt am: 08. Feb. 2019 14: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 D.S.K. 10 Unities + Antwort hilfreich

Schöne Idee,

nur glaube ich nicht, dass das jemand, auf die Schnelle, aus dem Ärmel schüttelt, damit es auch in allen Fällen funktioniert.

Aber vielleicht bin ich diese Woche einfach zu pessimistisch 

PS
erinnert mich ein wenig an meinen Wunsch, auf Knopfdruck ein max und min Volumenmodell
eines Teils, an Hand der Modell-Bemaßungen und -Toleranzen zu erhalten.
Das hört sich auch einfacher an, als es ist.

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

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

Christian_W
Ehrenmitglied V.I.P. h.c.
Konstrukteur (Dipl-Ing)


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

Beiträge: 2172
Registriert: 04.04.2001

SWX 2016sp5 WIN7-64
proAlpha6.2e/calinkV9
(Tactonworks)
(Medusa7, NesCAD2010,
solidEdge19) CSWP 12/2015

erstellt am: 10. Feb. 2019 14: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 D.S.K. 10 Unities + Antwort hilfreich

Aus dem Ärmel schütteln glaub ich auch nicht ganz ... aber wenn ich mal Zeit habe und dann noch eine SWX-Version und ... 

das mit dem vermitteln bzw. max oder min kann - glaub ich - solidCAM.
erzeugt dann Konfigurationen.

Aber wenn die Skizzenbeziehungen und so das nicht zulassen, wird das auch nichts ... 

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

nahe
Mitglied



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: 1427
Registriert: 18.01.2001

arbeite mit:
HP Z440 Workstation
Xenon (12-Kern) 3.5GHz
32GB RAM
238GB SSD
------------------------
SWX-2016 SP5.0
DBWorks-R15 SP2.17
----------------
Windows 7 64 bit
----------------
VB
VBA
Lotus Notes Datenbanken
erste Schritte mit Swift

erstellt am: 11. Feb. 2019 14: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 D.S.K. 10 Unities + Antwort hilfreich

Hallo Christian,

alles auf Toleranzmitte oder Größtmaß/Kleinstmaß ist nicht das Problem.

Das Problem ist max/min Volumen,
weil dabei bilden nicht immer die Größtmaße das max. Volumen und umgekehrt


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

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

Christian_W
Ehrenmitglied V.I.P. h.c.
Konstrukteur (Dipl-Ing)


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

Beiträge: 2172
Registriert: 04.04.2001

SWX 2016sp5 WIN7-64
proAlpha6.2e/calinkV9
(Tactonworks)
(Medusa7, NesCAD2010,
solidEdge19) CSWP 12/2015

erstellt am: 11. Feb. 2019 14: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 D.S.K. 10 Unities + Antwort hilfreich

Hallo Heinz,

oh,
the devil sticks in the detail …

stimmt, das macht es auch bei funktionierendem Modell schwierig … 

Gruß, Christian

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

Winston Wolf
Mitglied
Braucht der Mensch einen Beruf?


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

Beiträge: 510
Registriert: 12.08.2003

überlegen macht überlegen

erstellt am: 11. Feb. 2019 14: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 D.S.K. 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von D.S.K.:
Wir würden so ein Makro natürlich kaufen.
Mit 2018 ist die Bounding Box schon dabei. Ergo: Wartungsgebühr zahlen...
Alternative1: mach aus Deinen Teilen Schweißteile. Dann kannst Du mit dem "Rahmen" auch die Hauptabmessungen abrufen.
Alternative2: frag die SolidWorks Entwickler, die haben dass in 2018 implementiert. Sind vielleicht nur ein paar Zeilen code 

WW

------------------

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

D.S.K.
Mitglied



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

Beiträge: 23
Registriert: 20.11.2018

SolidWorks 2017 SP5,0 (Win10 und Win7)

erstellt am: 11. Feb. 2019 14: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

Hallo Winston Wolf,
Alternative 1 kommt bei 200-300 Bauteilen nicht in Frage.
Alternative 2 ist lauf SolidWorks nicht möglich.

Ein Makro die Feature "Schweißteil" erstellt, LxBxH ins Eigenschaften schreibt und hinterher Feature "Schweißteil" wieder entfernt.

Wird es so funktionieren? 

[Diese Nachricht wurde von D.S.K. am 11. Feb. 2019 editiert.]

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

Torsten Niemeier
Ehrenmitglied V.I.P. h.c.
Maschinenbau Ingenieur



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

Beiträge: 3129
Registriert: 21.06.2001

"ZUSE I.36", 8 BIT, 32 Lämpchen, Service-Ölkännchen "ESSO-Super", Software: AO auf Kuhlmann-Parallelogramm-Plattform
** CSWP 04/2011 **
** CSWE 08/2011 **

erstellt am: 11. Feb. 2019 14: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 D.S.K. 10 Unities + Antwort hilfreich

Steht doch schon in dem Link mit den Alternativen. 
Und bessere Möglichkeiten.

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

bk.sc
Ehrenmitglied V.I.P. h.c.
Konstrukteur Sondermaschinenbau



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

Beiträge: 2146
Registriert: 18.07.2012

-Solid Works 2019 SP1
-Pro Engineer WF 3

erstellt am: 11. Feb. 2019 14: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 D.S.K. 10 Unities + Antwort hilfreich

Hallo D.S.K,

ersetzte mal

Code:
    .X = Ceiling(Round(.X * 10000) / 10)
    .Y = Ceiling(Round(.Y * 10000) / 10)
    .Z = Ceiling(Round(.Z * 10000) / 10)

durch

Code:
    .X = Ceiling(Round(.X * 10000 + 0, 5)) / 10
    .Y = Ceiling(Round(.Y * 10000 + 0, 5)) / 10
    .Z = Ceiling(Round(.Z * 10000 + 0, 5)) / 10

beachte aber das bei dem Macro die Abmasse immer nur parallel zu den Hauptebenen ermittelt werden, also dass bei Teilen die "wild" im Raum liegen nicht zwangsweise auch die kleinsten Rohlingsmaße ermittelt werden.

Gruß
Bernd

------------------
--- Man muß nicht alles wissen, man muß nur wissen wo es steht ---

Staatlich anerkannte Deutschniete 

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

D.S.K.
Mitglied



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

Beiträge: 23
Registriert: 20.11.2018

SolidWorks 2017 SP5,0 (Win10 und Win7)

erstellt am: 12. Feb. 2019 14: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

Hallo bk.sc,
Vielen Dank.
Mit der Kommastelle hat es funktioniert.

Allerdings habe ich dasselbe Problem wie auch bei zweiten Makro, sobald die Rillen oder Fase drin sind, zeigt Makro mir ein anderes Maß an.


[Diese Nachricht wurde von D.S.K. am 12. Feb. 2019 editiert.]

[Diese Nachricht wurde von D.S.K. am 12. Feb. 2019 editiert.]

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

Winston Wolf
Mitglied
Braucht der Mensch einen Beruf?


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

Beiträge: 510
Registriert: 12.08.2003

überlegen macht überlegen

erstellt am: 12. Feb. 2019 14: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 D.S.K. 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von D.S.K.:
Allerdings habe ich dasselbe Problem wie auch bei zweiten Makro, sobald die Rillen oder Fase drin sind, zeigt Makro mir ein anderes Maß an.

...vielleicht weil es auch ein anderes Teil ist?
Immerhin sind die "falschen" Werte die gleichen Werte wie unter "Format" angezeigt (wie auch bei dem "richtigen" Teil). Kannst Du die beiden Dateien mal hochladen. Dann kann man probieren ob das mit 2018 und der Rahmenfunktion auch "falsche" Werte anzeigt.

WW

------------------

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

D.S.K.
Mitglied



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

Beiträge: 23
Registriert: 20.11.2018

SolidWorks 2017 SP5,0 (Win10 und Win7)

erstellt am: 12. Feb. 2019 14: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


8888.sldprt

 
Hallo,
es geht um die letzten drei Feature im Teil.

[Diese Nachricht wurde von D.S.K. am 14. Feb. 2019 editiert.]

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

D.S.K.
Mitglied



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

Beiträge: 23
Registriert: 20.11.2018

SolidWorks 2017 SP5,0 (Win10 und Win7)

erstellt am: 14. Feb. 2019 14:09    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

So, kann zu Ende diskutiert werden 

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

Winston Wolf
Mitglied
Braucht der Mensch einen Beruf?


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

Beiträge: 510
Registriert: 12.08.2003

überlegen macht überlegen

erstellt am: 14. Feb. 2019 15: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 D.S.K. 10 Unities + Antwort hilfreich


031925_BegrenzungsrahmenSWX2018.mp4


031925_BegrenzungsrahmenSWX2017.mp4

 
...also 2018 kein Problem 
Und: 2017 auch kein Problem 

Verwendetes Makro: https://ww3.cad.de/foren/ubb/Forum2/HTML/014451.shtml#000007

WW

------------------

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

D.S.K.
Mitglied



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

Beiträge: 23
Registriert: 20.11.2018

SolidWorks 2017 SP5,0 (Win10 und Win7)

erstellt am: 18. Feb. 2019 10:46    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 Winston Wolf,
dieses Makro funktioniert  überträgt die Länge x Breite x Höhe aber nicht ins Eigenschaften  .

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

Winston Wolf
Mitglied
Braucht der Mensch einen Beruf?


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

Beiträge: 510
Registriert: 12.08.2003

überlegen macht überlegen

erstellt am: 18. Feb. 2019 14: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 D.S.K. 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von D.S.K.:
...aber nicht ins Eigenschaften   .
Stimmt, ich hatte das mal für mich angepasst...
Jetzt für Dich weiter angepasst 
Code:
'Ursprung: https://ww3.cad.de/foren/ubb/Forum2/HTML/014451.shtml#000007
'Ersteller: https://ww3.cad.de/cgi-bin/ubb/ubbmisc.cgi?action=getbio&UserName=PaulB&number=2
'Datei: https://ww3.cad.de/foren/ubb/uploads/PaulB/Begrenzungsbox.zip

Const MinDouble As Double = -1.79769313486231E+308
Const MaxDouble As Double = 1.79769313486231E+308
Dim X_max As Double
Dim X_min As Double
Dim Y_max As Double
Dim Y_min As Double
Dim Z_max As Double
Dim Z_min As Double
Sub main()
    Dim swApp As SldWorks.SldWorks
    Dim swModel As SldWorks.ModelDoc2
    Dim swPart As SldWorks.PartDoc
    Dim vBodies As Variant
    Dim vBox As Variant
    Set swApp = Application.SldWorks
    Set swModel = swApp.ActiveDoc
    If swModel Is Nothing Then
        MsgBox "Nichts geladen!"
        Exit Sub
    End If
    ' Initialise to large/small values
    X_max = MinDouble: X_min = MaxDouble
    Y_max = MinDouble: Y_min = MaxDouble
    Z_max = MinDouble: Z_min = MaxDouble
    Select Case swModel.GetType
    Case swDocPART
        Set swPart = swModel
        ' Solid bodies
        vBodies = swPart.GetBodies2(swSolidBody, True)
        If Not IsEmpty(vBodies) Then: ProcessBodies vBodies, X_max, X_min, Y_max, Y_min, Z_max, Z_min
        ' Surface bodies
        vBodies = swPart.GetBodies2(swSheetBody, True)
        If Not IsEmpty(vBodies) Then: ProcessBodies vBodies, X_max, X_min, Y_max, Y_min, Z_max, Z_min
    Case Else
        Exit Sub
    End Select
    vBox = Array(X_min, Y_min, Z_min, X_max, Y_max, Z_max)
    bool = swModel.DeleteCustomInfo2("", "LxBxH")
    bool = swModel.AddCustomInfo3("", "LxBxH", 30, (CStr(Round(X_max - X_min, 4) * 1000) & "x" & CStr(Round(Y_max - Y_min, 4) * 1000) & "x" & CStr(Round(Z_max - Z_min, 4) * 1000)))
    Set swPart = Nothing
    Set swModel = Nothing
    Set swApp = Nothing
End Sub
Function GetMax(Val1 As Double, Val2 As Double, _
        Val3 As Double, Val4 As Double) As Double
' Finds maximum of four values
    GetMax = Val1
    If Val2 > GetMax Then
        GetMax = Val2
    End If
    If Val3 > GetMax Then
        GetMax = Val3
    End If
    If Val4 > GetMax Then
        GetMax = Val4
    End If
End Function
Function GetMin(Val1 As Double, Val2 As Double, _
        Val3 As Double, Val4 As Double) As Double
' Finds minimum of four values
    GetMin = Val1
    If Val2 < GetMin Then
        GetMin = Val2
    End If
    If Val3 < GetMin Then
        GetMin = Val3
    End If
    If Val4 < GetMin Then
        GetMin = Val4
    End If
End Function
Sub ProcessTessTriangles(vTessTriangles As Variant, _
    X_max As Double, X_min As Double, _
    Y_max As Double, Y_min As Double, _
    Z_max As Double, Z_min As Double)
    Dim i As Long
    For i = 0 To UBound(vTessTriangles) / (1 * 9) - 1
        X_max = GetMax((vTessTriangles(9 * i + 0)), (vTessTriangles(9 * i + 3)), (vTessTriangles(9 * i + 6)), X_max)
        X_min = GetMin((vTessTriangles(9 * i + 0)), (vTessTriangles(9 * i + 3)), (vTessTriangles(9 * i + 6)), X_min)
        Y_max = GetMax((vTessTriangles(9 * i + 1)), (vTessTriangles(9 * i + 4)), (vTessTriangles(9 * i + 7)), Y_max)
        Y_min = GetMin((vTessTriangles(9 * i + 1)), (vTessTriangles(9 * i + 4)), (vTessTriangles(9 * i + 7)), Y_min)
        Z_max = GetMax((vTessTriangles(9 * i + 2)), (vTessTriangles(9 * i + 5)), (vTessTriangles(9 * i + 8)), Z_max)
        Z_min = GetMin((vTessTriangles(9 * i + 2)), (vTessTriangles(9 * i + 5)), (vTessTriangles(9 * i + 8)), Z_min)
    Next i
End Sub
Sub ProcessBodies(vBodies As Variant, _
    X_max As Double, X_min As Double, _
    Y_max As Double, Y_min As Double, _
    Z_max As Double, Z_min As Double)
    Dim swBody As SldWorks.Body2
    Dim swFace As SldWorks.Face2
    Dim vTessTriangles As Variant
    Dim i As Long
    ' Probably empty if no reference surfaces
    If IsEmpty(vBodies) Then Exit Sub
    For i = 0 To UBound(vBodies)
        Set swBody = vBodies(i)
        Set swFace = swBody.GetFirstFace
        While Not swFace Is Nothing
            vTessTriangles = swFace.GetTessTriangles(True)
            ProcessTessTriangles vTessTriangles, X_max, X_min, Y_max, Y_min, Z_max, Z_min
            Set swFace = swFace.GetNextFace
        Wend
    Next i
End Sub
Sub ProcessComponent(swApp As SldWorks.SldWorks, _
    swModel As SldWorks.ModelDoc2, swComp As SldWorks.Component2, _
    nLevel As Long)
    Dim vChildComp As Variant
    Dim swChildComp As SldWorks.Component2
    Dim swCompConfig As SldWorks.Configuration
    Dim vBody As Variant
    Dim i As Long
    vBody = swComp.GetBodies2(swSolidBody) ' Solid bodies
    If swComp.Visible And Not IsEmpty(vBody) Then
        ProcessBodies vBody, X_max, X_min, Y_max, Y_min, Z_max, Z_min
    End If
    vChildComp = swComp.GetChildren
    For i = 0 To UBound(vChildComp)
        Set swChildComp = vChildComp(i)
        ProcessComponent swApp, swModel, swChildComp, nLevel + 1
    Next i
End Sub



WW

------------------

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

Winston Wolf
Mitglied
Braucht der Mensch einen Beruf?


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

Beiträge: 510
Registriert: 12.08.2003

überlegen macht überlegen

erstellt am: 18. Feb. 2019 14: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 D.S.K. 10 Unities + Antwort hilfreich

...Userform hab ich nicht gebraucht 
Deshalb ohne 

WW

------------------

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

D.S.K.
Mitglied



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

Beiträge: 23
Registriert: 20.11.2018

SolidWorks 2017 SP5,0 (Win10 und Win7)

erstellt am: 20. Feb. 2019 12:59    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 WW,
habe es so in Makro übernommen.
Makro macht jetzt kein Mucks mehr 

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

Winston Wolf
Mitglied
Braucht der Mensch einen Beruf?


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

Beiträge: 510
Registriert: 12.08.2003

überlegen macht überlegen

erstellt am: 20. Feb. 2019 13: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 D.S.K. 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von D.S.K.:
Makro macht jetzt kein Mucks mehr  
Soll ja auch keinen Mucks machen 
Hab den Text oben in ein neues Makro eingefügt - funktioniert einwandfrei. Der Eintrag in den Dateieigenschaften LxBxH zeigt das was er soll. Was ich im nachhinein vielleicht noch ergänzen würde:
Code:
Option Explicit
Dim bool As Boolean
Ist aber für die Funktion nicht weiter erforderlich...

WW

------------------

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

D.S.K.
Mitglied



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

Beiträge: 23
Registriert: 20.11.2018

SolidWorks 2017 SP5,0 (Win10 und Win7)

erstellt am: 20. Feb. 2019 15:21    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 Winston Wolf,
es funktioniert  .

Vielen Dank.

Eine Zwischenfrage: Die anderen Makros haben Ø erkannt und haben Bsp. Ø20x50 ins Eigenschaften geschrieben.
Kann man diese Funktion in dieses Makro integrieren?

Gruß

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)2019 CAD.de | Impressum | Datenschutz