SolidWorks und Normen: eine erhebliche Verzögerung

Seid gegrüßt, SolidWorkers!

Ich öffne dieses Thema, weil es Fragen gibt, die immer häufiger zu SolidWorks auftauchen und auf die ich viel zu oft (wenn nicht immer) gezwungen bin, sie zu verneinen.

Diese Fragen können mit der folgenden Formel verallgemeinert werden:

Wie kann ich meinen Plan mit SolidWorks nach aktuellen Standards kommentieren/bewerten?

Es ist klar, dass SolidWorks in diesem Punkt deutlich hinterherhinkt.
Zwischen fehlenden Symbolen (u.a. ex. ISO 25178, ISO 10135, ISO 13715), nicht konformen Anzeigeoptionen (ISO 124-24:2014), unmöglichen Anmerkungskombinationen (Anhängen eines Oberflächengütesymbols an einen geometrischen Toleranzrahmen (ISO 1302-ISO 1101), fehlenden ISO-Gewindeklassen, Toolbox-Komponenten, deren Abmessungen nicht konform sind (glücklicherweise gibt es CAD BOOSTER )...

Es hat fast 4 Jahre und viele Beschwerden gedauert, bis SolidWorks die in der Version 2025 verfügbare ISO 21920-1 implementiert hat.

Diesen Punkt werden wir bei der nächsten Erneuerung langsam aber sicher als Verhandlungshebel mit unserem VAR nutzen, um ihn dazu zu bringen, unser Recht auf eine konforme Software angesichts ihres Preises durchzusetzen...

Leiden andere (Unternehmen, Anwender) genauso sehr unter diesen Unzulänglichkeiten und Lücken in dieser Software?

6 „Gefällt mir“

" Solidworks und Normen; die große Verspätung "

4 „Gefällt mir“

Ich stelle fest, dass Sie sich nicht getraut haben, über GPS-Standards zu sprechen. :grinning:
ISO 14638:2014 ist eine grundlegende ISO-GPS-Norm.

1 „Gefällt mir“

Wenn es den 21920

1 „Gefällt mir“

ist zu stark für Sie :slight_smile:

1 „Gefällt mir“

Und nochmal: Es dauerte mehr als zehn Jahre und 3 oder 4 SRs, bis sie Steigungsfehler bei metrischen Gewinden korrigierten, die nicht sehr häufig vorkommen (einschließlich des M33 aus dem Gedächtnis): Die von Solidworks angegebene Steigung stimmte nicht mit der ISO-Teilung überein.

1 „Gefällt mir“

Deshalb lieben wir ihn :crazy_face:

2 „Gefällt mir“

Offensichtlich gibt es nur wenige, wenn überhaupt, BE-Vertreter, die sich bei der Verwendung von SolidWorks bei diesem Thema schuldig fühlen...

Schade: Ich hatte wirklich gehofft, das Thema dazu zu bewegen, Wege zu finden, dieses Problem effizienter als durch ihre TTL an den Editor zu eskalieren (mit der sie selbst sicherlich verloren sein müssen), vielleicht sogar etwas Visiativ in diese Diskussion einzubeziehen.

Ich werde das Thema zum Ende des Monats abschließen, wenn sich die gesammelten Antworten nicht ändern oder wenn die Nachrichten tendenziell bestätigen, dass diese Abweichung von den Standards insgesamt kein Problem darstellt.

3 „Gefällt mir“

Hallo;

Ich denke, dass wir uns angesichts der Unbeweglichkeit der Softwarehersteller bei diesem Thema eher mit einer Form des Verzichts auseinandersetzen müssen.
Auf der Softwareseite denke ich, dass die Aussicht, dass Publisher jedes Jahr mehrere tausend Euro oder Dollar$ bezahlen, um Standards zu kaufen, um sie ein Jahr später auf ihre Software anzuwenden, nicht sehr "bankfähig " ist.

Man braucht sich nur die Tarife von Afinor anzusehen, um die Summen zu erkennen, die anfallen müssen, um dies zu realisieren (ich habe sogar gerade entdeckt, dass sie im Abonnement ein System zur "Entschlüsselung " ihrer eigenen Standards verkaufen).

Multiplizieren Sie diese Summen mit der Anzahl der Normen pro Land und dann mit der Anzahl der Länder, Organisationen, Kommissionen usw. Es ist exorbitant und endlos.

Nichtsdestotrotz sollte sich Solidworks bemühen, uns einen würdigen Herausgeber für die Symbole anzubieten, und wenn man sich auf die Community verlässt, wäre es möglich, ziemlich schnell einen Katalog zu erstellen, der diesen Namen verdient.

weil... In aller Deutlichkeit:

; Format:
;;
;; #<Name of library>,<Description of library>
;; *<Name of symbol>,<Description of symbol>
;; A,LINE xStart,yStart,xEnd,yEnd
;; A,CIRCLE xCenter,yCenter,radius
;; A,ARC xCenter,yCenter,radius,startAngle,endAngle
;; A,SARC xCenter,yCenter,radius,startAngle,endAngle
;; A,TEXT xLowerLeft,yLowerLeft,<letter(s)>
;; A,POLY x1,y1,x2,y2,x3,y3
;; A,BOUND x1,x2
;;
;; Units:
;;
;; All x, y, and radius values are in the symbols grid space (0.0 to 1.0),
;; where 0,0 is the lower left corner and 1,1 is the upper right corner.
;; The grid space is considered to be the height of a character squared.
;; All angle values are in degrees.

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

Es ist nicht sehr benutzerfreundlich...
(Quelle)

Also, gut... Ja, auf der Seite der BE-Repräsentanten begnügen wir uns in Ermangelung von etwas Besserem... Aber wir hätten nichts dagegen, ein Plus zu haben...

4 „Gefällt mir“

Verbesserungsidee vor 2 Jahren eingereicht: Symbolerstellungstool

Glaubst du, sie würden es schlecht aufnehmen, wenn ich eine Verbesserungsanfrage wie diese schreiben würde?

Geben Sie weniger Geld für Ihre 3DExperience World-Veranstaltungen aus, um in Standards zu investieren und Ihre Software auf dem neuesten Stand zu halten.

4 „Gefällt mir“

Hallo

Ich denke, SW ist nicht die einzige Software mit diesem Problem. Ich bin in etwa der gleichen Meinung wie @Maclane , was die Kosten der Standards betrifft, die für eine geringe Rentabilität für den Verlag befolgt werden müssen (es gibt so viele Besonderheiten je nach Beruf).
Meiner Meinung nach haben sie die meisten " Standards " (geometrische Spezifikationen, Oberflächengüten und Schweißsymbole) gesetzt, nachdem tatsächlich einige Symbole (Kanten mit undefinierten Formen) gefehlt haben, aber ich bin mir nicht sicher, ob alle ISO-GPS-Prinzipien auf die Zielgruppe der SW-Unternehmen angewendet werden, auf die DS abzielt.

3 „Gefällt mir“

Hmmm :thinking: :thinking:... unsicher... Aber Vorsicht, sie sind immer noch anfällig.
Und dann... Es gibt nur einen Weg, das herauszufinden. :laughing: :laughing: :laughing:

Ich werde es grenzwertig off-topic machen...

Perplexity bietet mir ein Python-Skript (mit der ezdxf-Bibliothek) an, das angeblich in der Lage wäre, eine DXF-Datei in ein Symbol umzuwandeln, das mit der Solidworks *.sym-Bibliothek verwendet werden kann:

import ezdxf

# Fonction pour normaliser une valeur selon l'étendue min-max à l'intervalle [0,1]
def normalize(value, min_val, max_val):
    return (value - min_val) / (max_val - min_val) if max_val > min_val else 0.0

# Fonction principale de conversion DXF -> fichier .sym
def dxf_to_sym(dxf_path, sym_path):
    # Charger le fichier DXF
    dwg = ezdxf.readfile(dxf_path)
    msp = dwg.modelspace()

    # Récupérer toutes les coordonnées (x,y) pour une normalisation correcte
    coords_x = []
    coords_y = []
    for e in msp:
        if e.dxftype() == 'LINE':
            coords_x.extend([e.dxf.start.x, e.dxf.end.x])
            coords_y.extend([e.dxf.start.y, e.dxf.end.y])
        elif e.dxftype() in ('CIRCLE', 'ARC'):
            coords_x.append(e.dxf.center.x)
            coords_y.append(e.dxf.center.y)
        elif e.dxftype() == 'TEXT':
            coords_x.append(e.dxf.insert.x)
            coords_y.append(e.dxf.insert.y)

    # Définir les bornes min et max
    min_x, max_x = min(coords_x), max(coords_x)
    min_y, max_y = min(coords_y), max(coords_y)

    with open(sym_path, 'w', encoding='utf-8') as file:
        file.write(";; Bibliothèque de symboles générée automatiquement\n")
        file.write("#MySymbols, Bibliothèque personnelle\n")

        # Parcourir les entités pour exporter en format .sym
        for e in msp:
            if e.dxftype() == 'LINE':
                x1 = normalize(e.dxf.start.x, min_x, max_x)
                y1 = normalize(e.dxf.start.y, min_y, max_y)
                x2 = normalize(e.dxf.end.x, min_x, max_x)
                y2 = normalize(e.dxf.end.y, min_y, max_y)
                file.write(f"*LineSymbol,Ligne simple\n")
                file.write(f"A,LINE {x1:.3f},{y1:.3f},{x2:.3f},{y2:.3f}\n")

            elif e.dxftype() == 'CIRCLE':
                cx = normalize(e.dxf.center.x, min_x, max_x)
                cy = normalize(e.dxf.center.y, min_y, max_y)
                # Normalisation du rayon approximative selon largeur (ajustable)
                r = e.dxf.radius / (max_x - min_x) if max_x != min_x else 0
                file.write(f"*CircleSymbol,Cercle simple\n")
                file.write(f"A,CIRCLE {cx:.3f},{cy:.3f},{r:.3f}\n")

            elif e.dxftype() == 'ARC':
                cx = normalize(e.dxf.center.x, min_x, max_x)
                cy = normalize(e.dxf.center.y, min_y, max_y)
                r = e.dxf.radius / (max_x - min_x) if max_x != min_x else 0
                start_angle = int(e.dxf.start_angle)
                end_angle = int(e.dxf.end_angle)
                file.write(f"*ArcSymbol,Arc simple\n")
                file.write(f"A,ARC {cx:.3f},{cy:.3f},{r:.3f},{start_angle},{end_angle}\n")

            elif e.dxftype() == 'TEXT':
                x = normalize(e.dxf.insert.x, min_x, max_x)
                y = normalize(e.dxf.insert.y, min_y, max_y)
                text = e.text.replace(',', '')  # enlever virgules
                file.write(f"*TextSymbol,Texte simple\n")
                file.write(f"A,TEXT {x:.3f},{y:.3f},<{text}>\n")

if __name__ == "__main__":
    dxf_to_sym('votre_fichier.dxf', 'symboles.sym')

Erklärungen:

ezdxf charge et lit les entités 2D du fichier DXF à partir du "modelspace".

On collecte toutes les coordonnées X et Y de toutes les entités pour calculer les bornes min/max, ce qui permet de normaliser chaque coordonnée entre 0 et 1. Cette normalisation est nécessaire car SolidWorks attend des coordonnées relatives dans la grille de symbole.

On traite les types essentiels : LINE, CIRCLE, ARC, TEXT ; pour chacun, on écrit une ligne dans le format lisible par SolidWorks.
Le rayon d’un cercle ou d’un arc est normalisé aussi, approximativement selon la largeur du dessin.
Le texte est nettoyé pour éviter les virgules incompatibles.
Le fichier .sym produit peut être ajouté à la bibliothèque de SolidWorks et utilisé directement.

Und da höre ich auf... Bis heute habe ich noch nie ein Python-Skript verwendet/erstellt und bin im Moment nicht in der Lage, die Relevanz dieses Skripts zu interpretieren oder zu bewerten.
Darüber hinaus handelt es sich um ein " direkt von der KI (Perplexity) " mit all den Problemen, die diesem Postulat innewohnen.
Wenn Abenteuerlustiger als ich dieses Skript gut testen wollen ... Vielen Dank und viel Glück...

2 „Gefällt mir“

Wenn es direkt mit KI funktioniert, ist es schön.

2 „Gefällt mir“

Hallo @Maclane
Ich denke, es sollte möglich sein, dieses Skript an vba anzupassen, um einen SW-Sketch in ein Symbol umzuwandeln.

Im Gesamtjahr 2024 erzielte Dassault Systèmes einen Umsatz von 6,21 Milliarden Euro, was einem Anstieg von 5 % zu konstanten Wechselkursen entspricht, und einen Nettogewinn von 1,2 Milliarden Euro, was einem Anstieg von 14 % gegenüber 2023 entspricht.

Und schließlich: Können die Kosten für Standards wirklich eine Entschuldigung sein?

Auf der anderen Seite, wenn man sich in die Lage eines Unternehmers versetzt (vielleicht ein wenig verrückt), der sich mit einer neuen CAD-Software auf diesem Markt platzieren möchte, sind dann nicht all diese Standards (ihre Integration und Wartung) Eingabedaten für die Entwicklung einer solchen Software?

2 „Gefällt mir“

Ich stimme Ihnen in dieser Frage nicht wirklich zu, und ich finde, dass Sie sich mit Dassault bei diesem Thema sehr schwer tun.

Zugegebenermaßen ist das Management von Standards nicht optimal ... Aber ich könnte genauso gut von der Prämisse ausgehen, dass sie es nie drücken wird und ich es sowieso nie sein kann. Zu viele spezifische Standards für jeden Beruf/jede Arbeitsregion.

Auf der anderen Seite ist es bedauerlich, dass Solidworks ausgehend von diesem Stand der Dinge nicht beschlossen hat, seine Software ein wenig zu "öffnen ", damit wir sie autonom implementieren können.
In Creo zum Beispiel war die Darstellung der Schweißnähte wirklich schlecht: Aber die Software erlaubte es Ihnen, die Symbole nach Belieben zu ändern, so dass das Problem schnell gelöst war.

Es scheint mir wichtiger zu sein, zu versuchen, auf dieser Seite zu kämpfen, als alle Standards in Solidworks sehen zu wollen :slight_smile:

3 „Gefällt mir“

Die Lösung ist einfach; Es würde ausreichen, wenn SW in der Lage wäre, auf die Datenbanken der " Standardisierer " zuzugreifen, um das Laden der verwendeten Standards, einschließlich der neuesten oder geänderten, zu ermöglichen, ohne dass Dassault die SW aktualisieren muss, wie dies bei Bibliotheken von Modellen und Datenherstellern/-lieferanten der Fall ist.

2 „Gefällt mir“

Es scheint mir, dass es eine Möglichkeit gibt, verschiedene Symbole über Blöcke zu modifizieren? Aber es ist sehr undurchsichtig.
Wir haben versucht, zwei Immobilien in eine Blase zu packen, aber es war unmöglich, die Form zu ändern. Es gibt Möglichkeiten, die den Benutzern unbekannt sind und die es uns ermöglichen, Formen zu ändern. Die Hilfe beschränkt sich jedoch auf die Nutzung der Software.

1 „Gefällt mir“