| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für PTC CREO |
| |
| NEU: SF Distance Check – Schnelle Abstandsprüfung für PTC Creo, eine Pressemitteilung
|
Autor
|
Thema: Abmaße in Parameter text (5167 mal gelesen)
|
weko Mitglied Masch.-Techniker
Beiträge: 861 Registriert: 28.07.2005 creo2/M240 aktuell Creo 3.0 zeitweise
|
erstellt am: 31. Aug. 2009 16:30 <-- editieren / zitieren --> Unities abgeben:
wie bekomme ich meine Abmaße (Länge Breite Dicke) in einen Parameter als text dxx = Bemassuungswert aus der Skizze lg=ceil(dxx,1) br=ceil(dxx,1) dick=ceil(dxx,1) document_number=itos(lg)+"x"+itos(br)+"x"+itos(dick) soweit so gut die Parameter lg, br und dick sind reelle Zahlen, mit einer Kommastelle "dxx,1" jedoch bei itos(lg) kommen nur ganze Zahlen; Nachkommawerte werden nicht übernommen itos(lg)[.1] wird nicht angenommen, geht nur in der Zeichnung als "&lg[.1]" wer kann helfen gruss weko ------------------ leben und leben lassen! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CAMicro Mitglied CAD -Systembetreuer
Beiträge: 11 Registriert: 12.09.2008 Windows XP Professioal x64 SP2, NVIDIA Quadro FX 1600M. Wildfire 2 M250 (32 bit)
|
erstellt am: 31. Aug. 2009 16:44 <-- editieren / zitieren --> Unities abgeben: Nur für weko
Hallo weko, Fliesskommazahlen mit ihren Nachkommastellen in Zeichenketten verwenden. Beispiel, wenn es sich um 2 Nachkommastellen handelt.
z.B. Laenge = 100.25, Breite = 50.55 rund_laenge=floor(laenge) rung_breite=floor(breite) nachkomma_laenge=laenge-rund_laenge nachkomma_breite=breite-rund_breite nachkomma100_laenge=nachkomma_laenge*100 nachkomma100_breite=nachkomma_breite*100 Parameter = "Laenge"+itos(rund_laenge)+"."+itos(nachkomma100_laenge)+" x "+"Breite"+itos(rund_breite)+"."+itos(nachkomma100_breite) Ergebnis fuer Parameter: Laenge100.25 x Breite50.55
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
weko Mitglied Masch.-Techniker
Beiträge: 861 Registriert: 28.07.2005 creo2/M240 aktuell Creo 3.0 zeitweise
|
erstellt am: 31. Aug. 2009 16:55 <-- editieren / zitieren --> Unities abgeben:
ja sowas hab ich auch schon mal gesehen d.h. ich muß die Vorkomma-Zahlen und die Nachkomma-Zahlen extra auslesen und in Text umwandeln und wieder zusammensetzen das ist ja ein sehr langer Ausdruck ich werds mal probieren danke gruss weko ------------------ leben und leben lassen! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
kmueller22 Mitglied Geschäftsführer und Einzelkämpfer
Beiträge: 406 Registriert: 07.05.2009
|
erstellt am: 01. Sep. 2009 10:28 <-- editieren / zitieren --> Unities abgeben: Nur für weko
Ja ja, die Auswahl an (mathematischen) Funktionen ist wirklich überwältigend . Kann man eigentlich so eine Art Bibliothek in VBA, Java, wasauchimmer schreiben, die dann, zwar zu Lasten der Austauschbarkeit, schmerzlich vermisste Funktionen zur Verfügung stellt? Gruesze Karsten ------------------ Lieber Gott, gib mir Geduld - SOFORT!! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
weko Mitglied Masch.-Techniker
Beiträge: 861 Registriert: 28.07.2005 creo2/M240 aktuell Creo 3.0 zeitweise
|
erstellt am: 01. Sep. 2009 13:46 <-- editieren / zitieren --> Unities abgeben:
|
weko Mitglied Masch.-Techniker
Beiträge: 861 Registriert: 28.07.2005 creo2/M240 aktuell Creo 3.0 zeitweise
|
erstellt am: 02. Sep. 2009 08:43 <-- editieren / zitieren --> Unities abgeben:
jetzt habe ich es andersrum probiert zuerst die lg in die Beziehung geschrieben und dann der Bemassung zugeordnet geht auch nicht, da ja der Parameter schon eine reelle Zahl ist!! /*Abmasse Holz lg=625 br=510 dick=18.4 s=1.5 document_number=itos(lg)+"x"+itos(br)+"x"+itos(dick) d7:170=br d6:170=dick d8:170=lg d9:170=s d14:170=s /*Abmasse Holz wenn ich erst die Zeile "document_number=625x510x18.4" scheibe kann ich dann die Zahlen "625,510,18.4"aus diesem Textfeld rauslesen so ähnlich: d7:170=substr(document_number;zeichen,1-3) d9:170=substr(document_number;zeichen,5-7) wie schreibt man das in Proe gruss weko
------------------ leben und leben lassen! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
U_Suess Moderator CAD-Admin / manchmal Konstrukteur
Beiträge: 10681 Registriert: 14.11.2001 CREO 8.0.6.0 (+Geniustool für Creo 10.0.1) PDMLink 12.0.2.8 NTSI Contender E64 SC8 mit NVIDIA Quadro P4000 Intel Core i7-10700KF / 3,80 GHz 64GB DDR4-RAM / 2933 MHz Win 10 Prof. 64Bit
|
erstellt am: 02. Sep. 2009 09:21 <-- editieren / zitieren --> Unities abgeben: Nur für weko
|
drmichl Mitglied Masch.-techniker
Beiträge: 3 Registriert: 30.06.2017
|
erstellt am: 04. Jul. 2017 09:56 <-- editieren / zitieren --> Unities abgeben: Nur für weko
Zitat: Original erstellt von CAMicro: Hallo weko,Fliesskommazahlen mit ihren Nachkommastellen in Zeichenketten verwenden. Beispiel, wenn es sich um 2 Nachkommastellen handelt.
z.B. Laenge = 100.25, Breite = 50.55 rund_laenge=floor(laenge) rung_breite=floor(breite) nachkomma_laenge=laenge-rund_laenge nachkomma_breite=breite-rund_breite nachkomma100_laenge=nachkomma_laenge*100 nachkomma100_breite=nachkomma_breite*100 Parameter = "Laenge"+itos(rund_laenge)+"."+itos(nachkomma100_laenge)+" x "+"Breite"+itos(rund_breite)+"."+itos(nachkomma100_breite) Ergebnis fuer Parameter: Laenge100.25 x Breite50.55
Hallo sehr geehrte Forumsmitglieder, und danke an CAMicro an seine Antwort "damals" an weko. ich habe ein ähnliches Problem mit dem ich hier fast an mein Ziel gekommen bin. Ich möchte eine Gewindesteigung in ein Text-Format (Zeichenkette) umwandeln. Mit der o.g. Lösung komm ich fast klar, nur wenn vorne eine 0 steht, dann steht im Ergebnis anstatt z.B M8 x 0.5 dann M8 x .5. Also ohne die Null. bei Gewinden mit Steigung über 1 z.B. 1.5 funktioniert es. Könnte mir hier evtl. noch jemand behilflich sein. Danke Euch im voraus.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
U_Suess Moderator CAD-Admin / manchmal Konstrukteur
Beiträge: 10681 Registriert: 14.11.2001 CREO 8.0.6.0 (+Geniustool für Creo 10.0.1) PDMLink 12.0.2.8 NTSI Contender E64 SC8 mit NVIDIA Quadro P4000 Intel Core i7-10700KF / 3,80 GHz 64GB DDR4-RAM / 2933 MHz Win 10 Prof. 64Bit
|
erstellt am: 04. Jul. 2017 10:06 <-- editieren / zitieren --> Unities abgeben: Nur für weko
Zitat: Original erstellt von drmichl: Könnte mir hier evtl. noch jemand behilflich sein.
Das können wir bestimmt. Aber erst einmal ein herzliches Willkommen im WBF Damit wir Dir besser helfen können, wäre es sehr gut, wenn Du uns Deine Beziehungen mal verraten würdest. Die Beziehungen von weko helfen recht wenig, wenn wir einen Fehler in Deinen Beziehungen finden sollen. ------------------ Gruß Udo Keine Panik, Du arbeitest mit CREO (ehemals Pro/E)! Und Du hast cad.de gefunden! Neu hier? Verwundert über die Antworten? Dann schnell nachfolgende Links durchlesen. • Richtig Fragen • Nettiquette • Suchfunktion • System-Info • Pro/E-Konfig • 7er-Regel • Unities Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
drmichl Mitglied Masch.-techniker
Beiträge: 3 Registriert: 30.06.2017
|
erstellt am: 04. Jul. 2017 10:47 <-- editieren / zitieren --> Unities abgeben: Nur für weko
Zitat: Original erstellt von U_Suess:
Das können wir bestimmt.Aber erst einmal ein herzliches Willkommen im WBF Damit wir Dir besser helfen können, wäre es sehr gut, wenn Du uns Deine Beziehungen mal verraten würdest. Die Beziehungen von weko helfen recht wenig, wenn wir einen Fehler in Deinen Beziehungen finden sollen.
sehr gerne. Also wie beschrieben möchte ich die Steigung des Gewindes in ein Zeichenformat bringen meine momentane Beziehung wäre wie folgt.:
DIM_P_HLP1 = floor (pitch) DIM_P_HLP2 = pitch - DIM_P_HLP1 DIM_PITCH = "x "+ itos(DIM_P_HLP1)+"."+itos(DIM_P_HLP2*100) >> Das Ergebnis von DIM_PITCH ist: ".5" optimal wäre natürlich "0.5" >> "pitch" wäre die Steigung
Vielen Dank Euch nochmals. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
U_Suess Moderator CAD-Admin / manchmal Konstrukteur
Beiträge: 10681 Registriert: 14.11.2001 CREO 8.0.6.0 (+Geniustool für Creo 10.0.1) PDMLink 12.0.2.8 NTSI Contender E64 SC8 mit NVIDIA Quadro P4000 Intel Core i7-10700KF / 3,80 GHz 64GB DDR4-RAM / 2933 MHz Win 10 Prof. 64Bit
|
erstellt am: 04. Jul. 2017 11:40 <-- editieren / zitieren --> Unities abgeben: Nur für weko
An sich ist die Beziehung richtig. Normalerweise hätte ich jetzt auf einen Fehler in der Funktion ITOS() getippt. Aber da diese Funktion schon Jahrzehnte existiert, habe ich mal in der Hilfe geschaut. Dort steht dann recht eindeutig, dass die Funktion bei der Umwandlung einer Null den Wert "" zurückgibt. Dort ist auch gleich eine Abhilfe beschrieben. (Die hatte ich aber auch schon vorher in ähnlicher Form selbst gefunden.) Code: DIM_P_HLP1 = floor (pitch) IF DIM_P_HLP1>0 DIM_P_HLP1_STRING = itos(DIM_P_HLP1) ELSE DIM_P_HLP1_STRING = "0" ENDIF DIM_P_HLP2 = pitch - DIM_P_HLP1DIM_PITCH = "x "+DIM_P_HLP1_STRING+"."+itos(DIM_P_HLP2*100)
------------------ Gruß Udo Keine Panik, Du arbeitest mit CREO (ehemals Pro/E)! Und Du hast cad.de gefunden! Neu hier? Verwundert über die Antworten? Dann schnell nachfolgende Links durchlesen. • Richtig Fragen • Nettiquette • Suchfunktion • System-Info • Pro/E-Konfig • 7er-Regel • Unities Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
drmichl Mitglied Masch.-techniker
Beiträge: 3 Registriert: 30.06.2017
|
erstellt am: 04. Jul. 2017 11:52 <-- editieren / zitieren --> Unities abgeben: Nur für weko
Zitat: Original erstellt von U_Suess: An sich ist die Beziehung richtig. Normalerweise hätte ich jetzt auf einen Fehler in der Funktion ITOS() getippt. Aber da diese Funktion schon Jahrzehnte existiert, habe ich mal in der Hilfe geschaut. Dort steht dann recht eindeutig, dass die Funktion bei der Umwandlung einer Null den Wert "" zurückgibt. Dort ist auch gleich eine Abhilfe beschrieben. (Die hatte ich aber auch schon vorher in ähnlicher Form selbst gefunden.)Code: DIM_P_HLP1 = floor (pitch) IF DIM_P_HLP1>0 DIM_P_HLP1_STRING = itos(DIM_P_HLP1) ELSE DIM_P_HLP1_STRING = "0" ENDIF DIM_P_HLP2 = pitch - DIM_P_HLP1DIM_PITCH = "x "+DIM_P_HLP1_STRING+"."+itos(DIM_P_HLP2*100)
Ach du meine Güte. Eigentlich ganz einfach. Herzlichen Dank für den Anstoß. Wünsche noch nen schönen Tag.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |