|
CoCreate Programmierung : Lisp Schleife
der_Wolfgang am 01.09.2011 um 19:36 Uhr (0)
Die Verwendung einer Liste, waere aber vermutlich auch naheliegend. Dabei brauchst Du dann den index im Normalfall nicht selbst zu handhaben. Ob ne Liste einfacher/praktische waere, kann man mangels Information allerdings so nicht sagen.------------------ Seamonkey Firefox Java Forum Stuttgart JUGS OSD Hilfeseite (de) / help page (en) NotePad++
|
In das Form CoCreate Programmierung wechseln |
|
CoCreate Programmierung : Lisp Schleife
clausb am 01.09.2011 um 20:38 Uhr (0)
Richtig, ob das Feld oder aber das Zuweisen an zwanzig verschiedene Variablen oder etwas ganz anderes der richtige Ansatz ist, kann man erst entscheiden, wenn man weiss, wo und wie das eingesetzt werden soll.Aus dem Bauch heraus würde ich aber sagen, dass der Versuch, den Inhalt von zwanzig verschiedenen Variablen (Winkel_X) auf zwanzig andere Variablen (ubogen_X) zuzuweisen, schon mal nach der falschen Grundidee aussieht.------------------CoCreate Modeling FAQ: http://www.clausbrod.de/CoCreateModeling/[Di ...
|
In das Form CoCreate Programmierung wechseln |
|
CoCreate Programmierung : LISP: Flächenattribute von Drafting berechnen lassen
holt am 05.09.2011 um 07:40 Uhr (0)
Zitat:Original erstellt von der_Wolfgang: Als oller Annotöter lege ich Dir natürlich Annotation ans Herz. Es braucht ja auch keine extra lizenz im Gegensatz zum "geschwind mal" gestartetem Drafting.Das wäre das geringste Problem, da Drafting in der Modeling-Lizenz enthalten ist und bei gesetzter Umgebungsvariable "mebundlekey" keine eigene Lizenz zieht. Zitat:Annotation kann ja auch undo.. Also da bleibt die geladene Zeichnung so wie sie war. Das ist ein Argument. Daran habe ich gar nicht gedacht. Damit h ...
|
In das Form CoCreate Programmierung wechseln |
|
CoCreate Programmierung : LISP: Flächenattribute von Drafting berechnen lassen
der_Wolfgang am 02.09.2011 um 18:56 Uhr (0)
Zitat:Original erstellt von holt:Ich habe mir folgende Möglichkeiten überlegt: Arbeitsebene als mi abspeichern, Drafting mit eigener Startup-Datei als "minimal-ME10" starten, die Werte in eine Datei speichern und diese danach in Modeling anzeigen.Nachteil: Relativ aufwändig, da ich erst den Pfad von Drafting aus der Registry lesen muss /ich will ihn nicht fix codieren), eine startup-Datei erstellen und mittels eines Batch-Files Drafting mit den gewünschten Parametern starten muss. Vielleicht auch etwas fe ...
|
In das Form CoCreate Programmierung wechseln |
|
CoCreate Programmierung : LISP: Flächenattribute von Drafting berechnen lassen
holt am 02.09.2011 um 13:12 Uhr (0)
Hallo,der Bericht in den Arbeitsebenen-Eigenschaften - Statistik -Masseneigenschaften enthält einige wichtige Werte nicht, die in Drafting beim Messen der Flächenattribute angezeigt werden.Vor allem die Widerstandsmomente wären uns wichtig.Eine Anfrage beim Support ergab, dass es da keine Konfigurationsmöglichkeit gibt und ein diesbezüglicher Verbesserungsvorschlag eingegeben wurde.Das heißt für mich wieder einmal: LISP-Kenntnisse ausgraben und die Werte von Drafting berechnen lasen.Ich habe mir folgende M ...
|
In das Form CoCreate Programmierung wechseln |
|
CoCreate Programmierung : Lisp Schleife
noxx am 05.09.2011 um 13:49 Uhr (0)
danke, auch mit Loop habe ich meine Schwierigkeit:Code:(loop for x from 1 to 20 do (setf (ubogen_"~A" x) (* 0.5 (Winkel_"~A" x) DM_Unten )) )Bekomme immer einen Fehler.....grrGruss------------------Modelling 17.xWinXP SP3-------------------------------Mathcad kostenlos: SMath Studio
|
In das Form CoCreate Programmierung wechseln |
|
CoCreate Programmierung : Lisp Schleife
clausb am 05.09.2011 um 13:51 Uhr (0)
Zitat:Original erstellt von noxx:Bekomme immer einen Fehler.....grr*raeusper* Du magst uns nicht zufällig sagen, was das für ein Fehler ist?Wirst schon ein wenig mitarbeiten müssen.Na gut, in diesem Fall ist das trivial: Dein Code behauptet, dass es Funktion namens "winkel_" und "ubogen_" gebe. Die hast Du aber vermutlich nie definiert.Nochmal: Dein Problem ist NICHT die Schleife, sondern der Versuch, zur Laufzeit Variablen zu erzeugen. Lisp ist eine der wenigen Sprachen, in denen das überhaupt möglich is ...
|
In das Form CoCreate Programmierung wechseln |
|
CoCreate Programmierung : Lisp Schleife
noxx am 05.09.2011 um 13:54 Uhr (0)
sorry...Code:LISP-Fehler:Cannot expand the SETF form (CUSTOM::UBOGEN_"~A" X).EDIT:Hintergrund:Ich will ein Makro wo man 20 Werte eingeben kann.Diese werden dann in der Schleife umgerechnet undwieder ausgegeben. Das ganze dann in Annotationauf dem Zeichnungsblatt.------------------Modelling 17.xWinXP SP3-------------------------------Mathcad kostenlos: SMath Studio[Diese Nachricht wurde von noxx am 05. Sep. 2011 editiert.][Diese Nachricht wurde von noxx am 05. Sep. 2011 editiert.]
|
In das Form CoCreate Programmierung wechseln |
|
CoCreate Programmierung : Lisp Schleife
clausb am 05.09.2011 um 14:43 Uhr (0)
Zur weiteren Klärung: Was genau meinst Du mit "Makro"? Einen Dialog?------------------CoCreate Modeling FAQ: http://www.clausbrod.de/CoCreateModeling/
|
In das Form CoCreate Programmierung wechseln |
|
CoCreate Programmierung : Lisp Schleife
noxx am 05.09.2011 um 14:44 Uhr (0)
Im Moment habe ich das so gemacht, das jede Variable einzeln definiert wird, aber wird mit allem Kram zu lang.BSP:Code: (setf ubogen_1 (* 0.5 Winkel_1 DM_Unten )) (setf ubogen_2 (* 0.5 Winkel_2 DM_Unten )) (setf ubogen_3 (* 0.5 Winkel_3 DM_Unten )) (setf ubogen_4 (* 0.5 Winkel_4 DM_Unten )) (setf ubogen_5 (* 0.5 Winkel_5 DM_Unten )) (setf ubogen_6 (* 0.5 Winkel_6 DM_Unten )) (setf ubogen_7 (* 0.5 Winkel_7 DM_Unten )) (setf ubogen_8 (* 0.5 Winkel_8 DM_Unten )) (setf ubogen_9 (* 0.5 Winkel_9 DM_Unten )) (set ...
|
In das Form CoCreate Programmierung wechseln |
 |
CoCreate Programmierung : Lisp Schleife
noxx am 05.09.2011 um 14:49 Uhr (0)
Zitat:Original erstellt von clausb:Zur weiteren Klärung: Was genau meinst Du mit "Makro"? Einen Dialog?Ja, so ne kleine GUI..... Auch die Eingabe ist Ellenlang, da ich jede Wert Einzeln abfrage. Vermutlich viel zu komplex..Code:("Winkel in Grad") (Winkel_1 :value-type :angle :title "Winkel 1" rompt-text "1. Winkel angeben." :initial-value 0) (Winkel_2 :value-type :angle :title "Winkel 2" rompt-text "2. Winkel angeben." :initial-value 0) (Winkel_3 :value-type :angle :title "Winkel 3" rompt-te ...
|
In das Form CoCreate Programmierung wechseln |
|
CoCreate Programmierung : Lisp Schleife
clausb am 05.09.2011 um 16:59 Uhr (0)
OK, jetzt wird die Sache klarer, danke!Ja, in Lisp könnte man (anders als in vielen anderen Sprachen) sowas in wenigen Zeilen cleveren Code hinschreiben. Kann aber sein, dass ihn hinterher nur Experten verstehen, In diesem konkreten Fall würde ich also die zwanzig Zeilen einfach hinschreiben. Solange Du darauf achtest, dass die Variablen lokal sind, ist damit wenig Schaden angerichtet.Ach ja, was passiert eigentlich mit den umgerechneten Werten, nachdem sie auf ubogen_x zugewiesen wurden?------------------ ...
|
In das Form CoCreate Programmierung wechseln |
|
CoCreate Programmierung : Lisp Schleife
noxx am 05.09.2011 um 17:17 Uhr (0)
Zitat:Original erstellt von clausb:Ach ja, was passiert eigentlich mit den umgerechneten Werten, nachdem sie auf ubogen_x zugewiesen wurden?[/B]Werden als Text aufs Zeichnungsblatt gepackt. Mich würde aber dennoch interessieren,warum das bei mir mit der Lopp-Do nicht klappt, bzw wie ich den Fehler wegbekomme.Gruss und danke------------------Modelling 17.xWinXP SP3-------------------------------Mathcad kostenlos: SMath Studio
|
In das Form CoCreate Programmierung wechseln |