Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Property Density (Dichte) ändern

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:  Property Density (Dichte) ändern (2540 mal gelesen)
hawu
Mitglied
Auszubildender


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

Beiträge: 53
Registriert: 09.09.2007

erstellt am: 09. Jan. 2009 10:55    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,

mit folgendem Makro lässt dich die Dichte eines geöffneten Parts auslesen.


'****************************************
Sub CATMain()

Set oPart = CATIA.ActiveDocument

Set partRoot = oPart.Part

MsgBox "The density is " & partRoot.Density

End Sub
'*******************************************

Aber wie kann man den Wert für die Eigenschaft Dichte ändern?

Ich habs mit:

        NewInertia.Density = 10

versucht. Das gab aber ein Fehlermeldung.

Viele Grüsse


HaWu

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

denyo_1
Moderator
Manager


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

Beiträge: 2506
Registriert: 10.08.2005

HP Compaq 8710w, Intel Core Duo T7700, 2,40 Ghz, 3GB RAM, Windows XP Professionel @32bit, Quadro FX 1600M, CATIA V5 R19 SP3

erstellt am: 09. Jan. 2009 11:47    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 hawu 10 Unities + Antwort hilfreich

Hallo HaWu,

die Eigenschaft der Dichte eines Parts ist eine READ-ONLY Eigenschaft und lässt sich deshab nicht ändern.
Falls du aber eine Messung mit einer anderen Dichte durchführen willst dann schau dir mal mein Code an. Mit der Variablen newDensity kannst du weiterrechnen falls dies gewünscht wird.

Code:

Sub CATMain()

    Dim oPart As Document
    Dim partRoot As Part
    Dim oDensity As Double
    Dim newDensity As Double
    Dim togo As Boolean
   
    togo = False
   
    Do
        On Error Resume Next
        newDensity = InputBox("Bitte geben Sie die neue Dichte an (Double!)", "new density", 1)
        If Err.Number <> 0 Then
            On Error GoTo 0
            Box = MsgBox("Bitte geben Sie nur eine Gleitkommazahl ein!", vbCritical + vbOKCancel, "Falsche Eingabe")
            If Box = vbCancel Then
                Box = MsgBox("Sie haben die Eingabe abgebrochen" + Chr(10) + "Das Makro wird beendet", vbInformation + vbOKOnly, "Abbruch duch Anwender")
            Else
                togo = False
            End If
        Else
            togo = True
        End If
    Loop Until togo = True

    Set oPart = CATIA.ActiveDocument
    Set SPAWorkbench = oPart.GetWorkbench("SPAWorkbench")
    Set partRoot = oPart.Part

    Set oInertias = SPAWorkbench.Inertias
    Set oInertia = oInertias.Add(partRoot)
    oDensity = oInertia.Density

    oInertia.Density = newDensity
   
    MsgBox "The density is " & newDensity
   
End Sub


------------------
MFG Daniel

Die KATJA ist halt doch nur ne zickige Französin

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

hawu
Mitglied
Auszubildender


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

Beiträge: 53
Registriert: 09.09.2007

erstellt am: 09. Jan. 2009 12:16    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


partproperties.jpg

 
Hallo Denyo

wo wird der Wert gespeichert. "Nur" innerhalb der Variabeln?

In den PartProperties ist eine Registrierkarte Masse und dort ist das

Feld Dichte. Wenn man sich mit dem obigem Makro, die Dichte Anzeigen

lässt, wird die Dichte angezeigt, die dem Feld Dichte in der

Registrierkarte Masse ("siehe Anhang") steht.


Ich habe gehofft diesen Wert per makro irgenwie verändern zu können.

wenn ich mit deinem makro den wert für density neu setze, und ihn mir

mit obigen makro wieder anzeigen lasse, wird immer noch der in den

properties steht angezeigt welcher sich auch nicht verändert hat..


grüsse Harry

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

denyo_1
Moderator
Manager


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

Beiträge: 2506
Registriert: 10.08.2005

HP Compaq 8710w, Intel Core Duo T7700, 2,40 Ghz, 3GB RAM, Windows XP Professionel @32bit, Quadro FX 1600M, CATIA V5 R19 SP3

erstellt am: 09. Jan. 2009 12: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 Nur für hawu 10 Unities + Antwort hilfreich

Hallo hawu,

ja diesen Wert in dem Feld Density (in den Part Eigenschaften) kann man definitiv NICHT ändern da er nur READ-ONLY ist (daher kannst du die Masse auch nicht ändern). Du muss dir sozusagen einen zweiten Parameter "Dichte" erzeugen mit dem du die neue Masse ausrechnest.

------------------
MFG Daniel

Die KATJA ist halt doch nur ne zickige Französin

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

hawu
Mitglied
Auszubildender


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

Beiträge: 53
Registriert: 09.09.2007

erstellt am: 09. Jan. 2009 12:37    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 daniel,

danke.


viele grüsse harry

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

ogard1
Mitglied
Verfahrenstechniker


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

Beiträge: 442
Registriert: 12.09.2004

R19 SP2

erstellt am: 11. Jan. 2009 15: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 hawu 10 Unities + Antwort hilfreich

Hallo Daniel,
wehre es nicht möglich die Materialeigenschaften auslesen und über den Parameter
SAMDensity zu verändern.

anlysisMaterial.PutValue "SAMDensity", "20"

Gruß

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

denyo_1
Moderator
Manager


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

Beiträge: 2506
Registriert: 10.08.2005

HP Compaq 8710w, Intel Core Duo T7700, 2,40 Ghz, 3GB RAM, Windows XP Professionel @32bit, Quadro FX 1600M, CATIA V5 R19 SP3

erstellt am: 12. Jan. 2009 08:41    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 hawu 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von ogard1:
Hallo Daniel,
wehre es nicht möglich die Materialeigenschaften auslesen und über den Parameter
SAMDensity zu verändern.

anlysisMaterial.PutValue "SAMDensity", "20"

Gruß


Hallo,

ja das geht schon aber NUR wenn du dem Teil auch ein Material zugeordnet hat. Außerdem änderst du damit ständig die Dichte in deinem Material und somit müsstest du für jede "neue" Dichte auch ein eigenes Material definieren.
Die Dichte in den Parteigenschaften (die standartmäßig 1000kg_m3 ist) kannst du damit nicht ändern, da diese Eigenschaft read-only ist.

------------------
MFG Daniel

Die KATJA ist halt doch nur ne zickige Französin

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 12. Jan. 2009 09:17    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 hawu 10 Unities + Antwort hilfreich

Servus
Jetzt misch ich mich auch mal ein 
Meiner Ansicht nach sollte die Gesamtmasse nicht über einen Parameter "Dichte" berechnet werden, denn sonst kann man andere Funktionen, wie Schwerpunktsbestimmung und Trägheitmomente nicht verwenden werden können.
IMHOIn my humble oppinion (Meiner Meinung nach) sollte ein Skript die Baugruppe rekursiv durchgehen, und bei jedem Part/Körper (wenn dieser nicht mit boole'schen Operationen "verbaut" ist) ohne Material eine Warung ausgeben bzw. direkt auffordern, ein Material auszuwählen.

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

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

denyo_1
Moderator
Manager


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

Beiträge: 2506
Registriert: 10.08.2005

HP Compaq 8710w, Intel Core Duo T7700, 2,40 Ghz, 3GB RAM, Windows XP Professionel @32bit, Quadro FX 1600M, CATIA V5 R19 SP3

erstellt am: 12. Jan. 2009 10: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 hawu 10 Unities + Antwort hilfreich

Hallo Bernd,

das sehe ich auch so aber ich denke Hawu benötigst das Script nur um eine schnelle Aussage zum Gewicht (z.B. für den Einkauf) zu machen. Sind nun in der firma nicht alle Materialien (die verbaut wurden) vorhanden muss man sie nicht erst erstellen um das Gewicht zu bestimmen.

------------------
MFG Daniel

Die KATJA ist halt doch nur ne zickige Französin

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