|
Programmierung : LISP: String nicht abgeschlossen
der_Wolfgang am 23.01.2008 um 23:31 Uhr (0)
tip A: (sd-string-match-pattern-p ... ) existiert (sd-string-match-pattern-p "*Quadro*" "Audi A4 Quadro, tiefergelegt") ;; so in etwa halt tip B: (string-trim "abc" "labcabcabc") existiert auch um die " und anderes los zu bekommen------------------Seamonkey Firefox Thunderbird Seamonkey auf deutsch
|
In das Form Programmierung wechseln |
|
Programmierung : LISP: String nicht abgeschlossen
holt am 24.01.2008 um 08:04 Uhr (0)
Juhu, es funktioniert!@ Claus: Ich habe meinen Code ursprünglich von deinem Makro übernommen aber nicht begriffen, was da passiert. Daher habe ich die Zeile mit dem read-line verstümmelt übernommen. Kannst du mir im einzelnen erklären, was in deinem Code passiert?@ Wolfgang: string-trim ist meiner Meinung nach die leichter lesbare Variante, also werd ich diese Funktion nehmen (tut mitr leid, Claus ). Es soll ja auch in Zukunft jemand begreifen, was ich damit bezwecken wollte.Danke euch beiden! Ich gebe ei ...
|
In das Form Programmierung wechseln |
|
Programmierung : LISP: String nicht abgeschlossen
clausb am 24.01.2008 um 08:14 Uhr (0)
Zitat:Original erstellt von holt:Ich habe meinen Code ursprünglich von deinem Makro übernommen aber nicht begriffen, was da passiert. Daher habe ich die Zeile mit dem read-line verstümmelt übernommen. Kannst du mir im einzelnen erklären, was in deinem Code passiert?Zeile fuer Zeile wird in einer Schleife eingelesen (kannst Du Dir in Deinem Fall sparen), in jeder wird mit Code:(remove #Return l) das unpassende Zeilenende entfernt. So kompliziert? Zitat:Wie kann man beim Start der Applikation auf einfache W ...
|
In das Form Programmierung wechseln |
|
Programmierung : LISP: String nicht abgeschlossen
holt am 24.01.2008 um 12:28 Uhr (0)
Zitat:Original erstellt von clausb:So kompliziert?Für mich schon!Wie kann z.b. remove Strings verarbeiten, wenn es eine Liste erwartet?Daher bekomme ich bei folgendem Codefragment immer die Fehlermeldung "Quadro FX 1500[]" is not of type LIST. (wobei [] ein Quadrat sein soll)Code: (setf l (read-line s nil)) (remove #Return l) (close s)------------------Gruß aus dem SalzkammergutThomas Hollerweger
|
In das Form Programmierung wechseln |
|
Programmierung : LISP: String nicht abgeschlossen
holt am 24.01.2008 um 13:53 Uhr (0)
OK, jetzt kommt bei mir auch keine Fehlermeldung, ich hatte einen Fehler beim Aufruf der Funktion.Aber dem String fehlt immer noch das abschließende ".Anbei der entsprechende Ausschnitt aus der sd_customize.Dein obiger Link funktioniert übrigens nicht.------------------Gruß aus dem SalzkammergutThomas Hollerweger
|
In das Form Programmierung wechseln |
|
Programmierung : LISP: String nicht abgeschlossen
holt am 24.01.2008 um 13:59 Uhr (0)
Zitat:Original erstellt von holt:Aber dem String fehlt immer noch das abschließende ".Kommando zurück!Ich muss den input-stream erst schließen und dann das remove ausführen, dann gehts!Also:Code:(setf l (read-line s nil)) (close s)(remove #Return l) ------------------Gruß aus dem SalzkammergutThomas Hollerweger
|
In das Form Programmierung wechseln |
|
Programmierung : LISP: String nicht abgeschlossen
holt am 24.01.2008 um 14:05 Uhr (0)
Claus war wieder einmal schneller. Außerdem ist meine Aussage oben nicht korrekt. Durch die Änderung der Reihenfolge habe ich nur bewirkt, dass das Ergebnis von (remove) gleich als Rückgabewert der Funktion verwendet wird. Vorher habe ich nach dem (close) nochmal l als Rückgabewert übergeben.Das ist mir erst mit deiner Antwort klar geworden.Danke!Nochmal 10 Us!------------------Gruß aus dem SalzkammergutThomas Hollerweger
|
In das Form Programmierung wechseln |
|
Programmierung : Farbe einer Fläche per Programm ändern
Walter Geppert am 24.01.2008 um 16:07 Uhr (0)
Wenn du das Ding grade erst erstellt hast, wahrscheinlich sogar mit dem ROTATE-Kommando, hast du auf deiner Werkzeug-AE jede Menge Punkte, die auf der Mantelfläche liegen, die Endpunkte wohl auch schon als 2D-Punkte berechnet. Jetzt kannst du z.B. einen Punkt mittendrin auch noch berechnen, aber als 3D-Punkt, also statt U und V nimm X und Y, den Z-wert 0 und mitCode:(sd-vec-xform mein_bezugspunkt :source-space (sd-inq-curr-wp) :dest-space :global) hast du einen Punkt zum Flächen-Auswählen ---------------- ...
|
In das Form Programmierung wechseln |
|
Programmierung : [LISP] 3D-Punktkoordinaten von Durchstroßpunkten auf AE
Patrick Weber am 25.01.2008 um 15:42 Uhr (0)
Ich beschäftige mich seit gestern intensiver mit LISP und bin etwas frustriert. (der berüchtigte Tischkantenbiss steht bevor )Mein Problem:Ich habe zwei Splines, die um ein Modell herum gebastelt wurden. (siehe Bild)Ich erstelle eine Arbeitsebene und lasse mir die Durchstoßpunkte auf der AE erstellen, also 4 an der Zahl.Code: (sd-call-cmds (int_c_point INNER_SPL) ) ;end sd-call-cmds (sd-call-cmds (int_c_point OUTER_SPL) ) ;end sd-call-cmdsIch selektiere die Punkte mit:Code:(setf AE_P_LIST (sd-call- ...
|
In das Form Programmierung wechseln |
|
Programmierung : [LISP] 3D-Punktkoordinaten von Durchstroßpunkten auf AE
clausb am 25.01.2008 um 15:52 Uhr (0)
Du hast da eine Liste von Punkten (vertices) zusammenselektiert. sd-inq-edge-geo operiert aber auf Kanten, wie der Name auch schon sagt. sd-inq-vertex-geo passt besser, schaetze ich.Claus------------------CoCreate OneSpace Modeling FAQ: http://www.clausbrod.de/OneSpaceModeling/
|
In das Form Programmierung wechseln |
|
Programmierung : [LISP] 3D-Punktkoordinaten von Durchstroßpunkten auf AE
der_Wolfgang am 27.01.2008 um 17:30 Uhr (0)
Zitat:Original erstellt von Patrick Weber:Ich beschäftige mich seit gestern intensiver mit LISP und bin etwas gefrusted. na horche mal! Sich seit 24. intensiver mit LISP befassen ein get_selection (und anderes) hinbekommen, das ist doch schon mal sehr gut! glückwunschsmilieCode:(#S(SEL_ITEM PATH (#S(NPARCEL SIMPLE-ENTITY-PTR 178037904) #S(NPARCEL SIMPLE-ENTITY-PTR 337156832)) TYPE 178140944 ITEM #S(EDGE SIMPLE-ENTITY-PTR 265952880)) #S(SEL_ITEM PATH (#S(NPARCEL SIMPLE-ENTITY-PTR 1780 ...
|
In das Form Programmierung wechseln |
|
Programmierung : Farbe einer Fläche per Programm ändern
Walter Geppert am 29.01.2008 um 09:31 Uhr (0)
Zitat:Original erstellt von rmcc1980:Hallo,danke für eure Tips. Mit get_selection komme ich klar. Bei Walters Lösung befürchte ich, dass man auch ein anderes Teil erwischen könnte, dass an dieser Stelle liegt. Ist allerdings konstruktiv eher unwahrscheinlich.Schöne GrüßeBerndDas kannst du ja noch mit sd-inq-parent-obj abfragen------------------meine LISP-Makros sind auf osd.cad.deDisclaimerGrüße aus Wien WalterDC4 Technisches Büro GmbH
|
In das Form Programmierung wechseln |
|
Programmierung : Farbe einer Fläche per Programm ändern
der_Wolfgang am 29.01.2008 um 22:01 Uhr (0)
.....Du koenntest auch gleich get_selection auf das Deinige Part beschraenken! Das ist am effektivsten.Das hatten wir kuerzlich schon mal, im Rahmen eines längeren LISP stueckchens.. schmeiss mal die Suche an hier im Forum!guck ma da: Parameterteil erstellen für SD-Power Normteilkatalog ist wohl eh interessant fuer Dich, denk ich, und such selected_part------------------Seamonkey Firefox Thunderbird Seamonkey auf deutsch
|
In das Form Programmierung wechseln |