Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  Per API Materialdaten (z.B. Zugfestigkeit) ans Teil hängen

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
  
Mobil ans Ziel: PARAVAN gibt Gas mit SOLIDWORKS Simulation
Autor Thema:  Per API Materialdaten (z.B. Zugfestigkeit) ans Teil hängen (3166 mal gelesen)
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: 28. Jul. 2005 10:43    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

Gibt es die Möglichkeit, per API einem Teil Materialeigenschaften zuzuweisen, die von CosmosWorksExpress verwendet werden?

Hintergrund:
Da wir von der EU-Richtlinie RoHS (bleifrei und ähnliches) betroffen sind, gibt es bei uns eine Excel-Datei mit Materialbezeichnungen und Verweisen zur RoHS-Kompatibilität. Wir wollen daher die Materialien von Fertigungsteilen mittels eines Makros aus dieser Tabelle auswählen. Dabei wäre es natürlich praktisch, wenn man in dieser Tabelle die übrigen Stoffwerte unterbringen könnte und automatisch mit zuweisen.

In der API-Hilfe hab ich keine entsprechenden Begriffe gefunden.

Piet

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: 01. Aug. 2005 10: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

Für den Fall, das es jemanden außer mir interessiert habe ich hier die Antwort vom SWXSolidWorks-Support angehängt (Vielen Dank an das TeamWorks-Team).

Piet


To be able to get and set the material on a Part that is used by CosmosExpress, please have a look at:

    PartDoc.GetMaterialPropertyName2
    PartDoc::SetMaterialPropertyName2

    SldWorks::GetMaterialDatabases

    SldWorks::GetMaterialSchemaPathName

The XML containing the material definitions for a particular material database can be obtained using:


    ModelDocExtension::GetStream
    ModelDocExtension::ReleaseStream


See the examples coming with these last 2 methods. You can use the DOM object model to process the XML.

You can add to the list of physical properties of a material by changing the XML scheme. This is an unsupported kind of customization. Please refer to the outline  at the end of this email of how to do this.
__________________________________________________________________________________________________

Suppose you want to add a physical property "MYPROP". You will need to add this "MYPROP" type to:
    C:\Program Files\SolidWorks2005\data\xmlschema\sldmaterials.xsd

Look for this tag:

    <xsd:element name="physicalproperties" minOccurs="0">

and add something like this:

    <xsd:element name="MYPROP" type="sldmaterials:curveControlled" minOccurs="0"/>

Now for the materials in the material database "solidworks materials.sldmat", add a line like this inside the <physical properties> node:

    <MYPROP displayname="My Property" value="11.11E+8"/>

like so:

  <material name="AISI 304" matid="1">
      <shaders>
            <pwshader name="stainless steel"/> <!-- OK -->
            <cgshader name="SteelAISI304"/>
            <swtexture path="images\textures\metal\cast\cast_fine.jpg"/>
      </shaders>
      <swatchcolor RGB="9DA4AC">
            <sldcolorswatch ptical Ambient='0.520000' Transparency='0.000000' Diffuse='0.800000' Specularity='1.000000' Shininess='0.400000' Emission='0.000000'/>
      </swatchcolor>
      <xhatch name="ANSI32 (Steel)" angle="0.0" scale="1.0"/>
      <physicalproperties>
            <EX displayname="Elastic Modulus" value="0.19E+12"/>
            <NUXY displayname="Poissons Ratio" value="0.29"/>
            <GXY displayname="Shear Modulus" value="0.75E+11"/>
            <ALPX displayname="Thermal Expansion Coefficient" value="0.18E-4"/>
            <DENS displayname="Density" value="0.80E+04"/>
            <KX displayname="Thermal Conductivity" value="16."/>
            <C displayname="Specific Heat" value="0.50E+03"/>
            <SIGXT displayname="Tensile Strength" value="5.17017E+8"/>
            <SIGYLD displayname="Yield Strength" value="2.06807E+8"/>
            <MYPROP displayname="My Property" value="11.11E+8"/>
      </physicalproperties>
  </material>



Please note there is a different "solidworks materials.sldmat" file for each language supported by SolidWorks.

__________________________________________________________________________________________________

Option Explicit

Sub main()

    Dim swApp                      As SldWorks.SldWorks
    Dim swModel                    As SldWorks.ModelDoc2
    Dim swPart                      As SldWorks.PartDoc
    Dim sMatName                    As String
    Dim sMatDB                      As String
    Dim bRet                        As Boolean
    Dim vMatDBarr                  As Variant
    Dim vMatDB                      As Variant

   

    Set swApp = Application.SldWorks

    Set swModel = swApp.ActiveDoc

    Set swPart = swModel

   
    Debug.Print "MaterialSchemaPathName = " & swApp.GetMaterialSchemaPathName

    vMatDBarr = swApp.GetMaterialDatabases

    For Each vMatDB In vMatDBarr

        Debug.Print "  " & vMatDB

    Next



    sMatName = swPart.GetMaterialPropertyName2("Default", sMatDB)

   

    Debug.Print "File = " & swModel.GetPathName

    Debug.Print "  Material = " & sMatName & " (" & sMatDB & ")"
   

End Sub


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

G. Dawg
Ehrenmitglied V.I.P. h.c.
Teamleiter FEM Simulation



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

Beiträge: 2622
Registriert: 12.07.2004

SolidWorks_2o2o SP3.o
Win10_x64, Quadro_P2ooo.
VisualStudio_2o19_Pro.
FEM: Forge_NxT_HPC, ANSYS_WB.
3D-Printer: Ultimaker_2, Tinker_Gnome.

erstellt am: 27. Mrz. 2006 11:18    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 Piet 10 Unities + Antwort hilfreich

Hallo, Piet!

Ich wollte Dich mal fragen, ob Du das hinbekommen hast! Ich habe versucht die Zugfestigkeit <SIGXT ... > aus der Datenbank in ein Dokument (Benutzerdef.Eigenschaft) einzufügen. Habe es nicht geschafft den Wert auszulesen (habe nach dem Eintrag in die MaterialDB immer eine Fehlermeldung bekommen, dass diese Zeile mit dem Benutzerdef. Wert nicht dem DTD/Schema entsprincht!!!). Hat das bei Dir, nach dieser Anleitung, geklappt?
Wenn ja, kannst Du mir sagen, wie, wo und was genau Du gemacht hast?!
Danke!!

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: 29. Mrz. 2006 08:23    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

Tut mir leid, da muss ich passen. Ich hab das nicht weiter verfolgt, da wir nur extrem selten was mit Cosmos Express machen.

Piet

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



Technischer Systemplaner / Zeichner / Konstrukteur m/w/d
<...
Anzeige ansehenTechnischer Zeichner, Bauzeichner
G. Dawg
Ehrenmitglied V.I.P. h.c.
Teamleiter FEM Simulation



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

Beiträge: 2622
Registriert: 12.07.2004

SolidWorks_2o2o SP3.o
Win10_x64, Quadro_P2ooo.
VisualStudio_2o19_Pro.
FEM: Forge_NxT_HPC, ANSYS_WB.
3D-Printer: Ultimaker_2, Tinker_Gnome.

erstellt am: 29. Mrz. 2006 08:25    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 Piet 10 Unities + Antwort hilfreich

Naja.... danke trotzdem!!!

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