Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  PTC Creo Elements/Direct Modeling
  Lisp oder Befehl gesucht - Skizze

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 PTC CREO
Autor Thema:  Lisp oder Befehl gesucht - Skizze (6268 mal gelesen)
Ex-Mitglied
wombatz
Mitglied



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

Beiträge: 38
Registriert: 08.10.2004

erstellt am: 12. Sep. 2008 15:21    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 jochen.bienert 10 Unities + Antwort hilfreich

Hallo,
es gibt im Annotation-Menü Geometrie Hilfslinien,
damit müsste es klappen.

------------------
Klaus

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

highway45
Moderator
Bastler mit Diplom




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

Beiträge: 6331
Registriert: 14.12.2004

SolidDesigner-20.5.1 + PhoenixPDM-11 + Solidworks-2022 + PE8

erstellt am: 12. Sep. 2008 15:30    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 jochen.bienert 10 Unities + Antwort hilfreich

In 3D oder Annotation nur mit Hilfskonstruktion.

Hab ich vor Jahren mal als Verbesserungsvorschlag eingereicht, weil ich es von ME10 so kannte.

Mach doch einfach eine Symmetrie-Linie und dann die unendliche da drauf.

------------------
            CoCreate: Hilfeseite I FAQ I Hilfreiche Links

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

Ex-Mitglied
highway45
Moderator
Bastler mit Diplom




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

Beiträge: 6331
Registriert: 14.12.2004

SolidDesigner-20.5.1 + PhoenixPDM-11 + Solidworks-2022 + PE8

erstellt am: 13. Sep. 2008 09:35    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 jochen.bienert 10 Unities + Antwort hilfreich

Das geht nicht.

//
Um zwischen zwei parallelen Linien eine Winkelhalbierende zu setzen muß man eine senkrechte auf eine der beiden Linien setzen und dann kann man über die zwei Schnittpunkte eine gehälftete Senkrechte stellen.
Liegen die beiden Linien nicht direkt nebeneinander, muß eine der beiden mit einer unendlichen Hilfslinie verlängert werden.

>
Bei nichtparallelen Linien die sich kreuzen, kann man eine Winkelhalbierende setzen, dazu klickt man erst auf den Schnittpunkt und dann auf die zwei Linien.

/ \
Bei nichtparallelen Linien, die sich nicht kreuzen muß man diese mit zwei unendlichen Hilfslinien so verlängern, daß sich ein Schnittpunkt bildet, auf den dann eine Winkelhalbierende platziert werden kann.

Wenn die Linien nebeneinander liegen, kann man auch in allen drei Fällen einen Hilfskreis tangential an beide Linien legen und dann mit StrTeilung die Senkrechte auf den Schnittpunkten bilden. Das macht etwas weniger Klickerei.

Warum ich immer extra noch den Scheitelpunkt von zwei geraden Linien anklicken soll, ist mir ein Rätsel.    

------------------
              CoCreate: Hilfeseite I FAQ I Hilfreiche Links

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

holt
Mitglied
Systembetreuer CAD


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

Beiträge: 713
Registriert: 07.08.2003

Lenovo P320 Win10 64-bit, 32GB
NVIDIA Quadro P2000 4 GB
Creo Elements/Direct Modeling 20.1
Creo Elements/Direct Drafting 20.1
Creo Elements/Direct ModelManager 20.1

erstellt am: 13. Sep. 2008 11: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 jochen.bienert 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von highway45:
Warum ich immer extra noch den Scheitelpunkt von zwei geraden Linien anklicken soll, ist mir ein Rätsel.

Hallo,

darüber habe ich mich auch schon gewundert, vor allem wenn man es vom jahrelangen Arbeiten auf ME10 gewöhnt war, einfach eine Winkelsymmetrale zwischen 2 beliebigen (und sogar parallelen!) Linien mit 2 Klicks zu erzeugen.

Das Verhalten bei den parallelen Linien ist zwar eine Unterstützung der Faulheit die in der Schule mindestens mit einem Minus geahndet würde (Nach dem Motto: Sagt der Schüler zum Lehrer in darstellender Geometrie: "Man bilde eine Winkelsymmetrale zwischen den beide parallelen Linien..."    ) aber es war einfach praktisch.
Dass es weder in Modeling noch in Annotation geht ist aber schade.

Der einzige Vorteil der mir beim Verhalten in Modeling einfällt ist folgender:
Ausgehend von 3 vorhandenen Punkten kann man die Winkelsymmetrale der gedachten Verbindungslinien erzeugen. Aber wie oft braucht man das?

------------------
Gruß aus dem Salzkammergut

Thomas Hollerweger

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

Thömu
Mitglied
Konstrukteur


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

Beiträge: 283
Registriert: 09.04.2003

SolidWorks 09 SP3
Catia V5 R16
Pro/E WF3
Hardeware, je nach PC...
Zuhause das gute alte OSM PE und OSD 15.5D als Demo

erstellt am: 14. Sep. 2008 15:28    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 jochen.bienert 10 Unities + Antwort hilfreich

Da bin ich ja nicht der einzige, der diese Funktion vermisst...

Zu lösen ist dies eigentlich relativ einfach, ist nur ein bisschen Vektorgeometie.

Ich schrieb hier mal auf, wie es gehen würde, vielleicht kann ja jemand ein LISP daraus machen (ich hab leider keine Kenntnisse in LISP)

Einlesen der Geraden:
1. zwei Geraden (sagen wir mal A und B)auf der aktuellen A-Ebene anklicken (nur 2D Linie zulässig)
2. Überprufung ab es wirklich Geraden sind, sonst Abbruch
3. unter GEO-Eigenschaften kann man sich die beiden Vektoren Punkt (Ortsvektor) und Richtung (Einheitsvektor mit der Länge 1) ausgeben (im Drafting geht das ja mit inq_elem). Da wir nur im 2D sind, braucht es nur die X und Y Koordinate (Z ist sollte überall 0 sein) Daraus ergeben sich folgende Variablen: für die Gerade A der Punkt -> APx und APy; für die Gerade A die Richtung -> ARx und ARy; analog für B -> BPx, BPy, BRx und BRy

jetzt folgt der rechnerische Teil:
1. Überprüfung ob die Geraden parallel sind: (ARx = BRx und ARy = BRy) oder (ARx = -BRx und ARy = -BRy) dann sind die Geraden parallel
2. wenn parallel geht es so weiter:
3. wir berechnen uns 2 Punkte um eine Hilfslinie (als Symetrielinie) zu zeichen. P1 -> X-Koordinate P1x = (APx + BPx) / 2 ; Y-Koordinate P1y = (APy + BPy) / 2 ; P2 -> P2x = P1x + ARx ; P2y = P1y + ARy
4. Hilfslinie mit den Punkten P1 und P2 zeichnen, fertig!

5. wenn nicht parallel geht es so weiter:
6. zuerst berechnen wir den Schnittpunkt der Geraden, dafür wird aber noch eine Hilfsvariable t benötigt:
   t=(((APy - BPy) * ARx) + ((BPx - APx) * ARy)) / ((BRy * ARx) - (BRx * ARy))
7. der Schnitt-Punkt, und somit unser erster Punkt für die Hilfslinie, ist: P1 -> P1x = BPx + (t * BRx) ; P1y = BPy + (t * BRy)
8. P2 -> P2x = P1x + ARx + BRx ; P2y = P1y + ARy + BRy
9. da es 2 Winkelhalbierende gibt, rechnen wir den Punkt auf der 2ten auch noch aus: P3 -> P3x = P1x + ARx - BRx ; P3y = P1y + ARy - BRy
10. Hilfslinie zeichen mit P1 P2 und P1 P3, fertig!

Somit hätten wir praktisch die gleiche Funkton, wie im Drafting, nur das beide Winkelhalbierenden eingezeichnet werden, aber das sollte ja eigentlich nicht stören.

Wenn jemand ein LISP daraus macht, bitte hier posten  

------------------
mfg Thömu

[Diese Nachricht wurde von Thömu am 14. Sep. 2008 editiert.]

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

highway45
Moderator
Bastler mit Diplom




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

Beiträge: 6331
Registriert: 14.12.2004

SolidDesigner-20.5.1 + PhoenixPDM-11 + Solidworks-2022 + PE8

erstellt am: 14. Sep. 2008 15: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 Nur für jochen.bienert 10 Unities + Antwort hilfreich


winkelhalbierende.lsp.txt

 
Cool !   

Im Anhang schon mal der Anfang eines Lisp-Codes.
Ich hab aber keine Geraden (edge-2D) angeklickt, sondern vier Punkte (point-2d).
Und erstmal werden nur die zwei unendlichen Hilfsgeos angelegt, mehr hab ich nicht geschafft.
   
Jetzt mußt du nur noch deine Formel da reinlispeln... 

(ich dachte, so könnte ich zumindest die unendlichen Hilfslinien dazu nutzen, um den Befehl "WinTeilung" zu starten, aber der Schnittpunkt ist oft außerhalb der AE und kann dann nicht angeklickt werden)

------------------
          CoCreate: Hilfeseite I FAQ I Hilfreiche Links

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

Thömu
Mitglied
Konstrukteur


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

Beiträge: 283
Registriert: 09.04.2003

SolidWorks 09 SP3
Catia V5 R16
Pro/E WF3
Hardeware, je nach PC...
Zuhause das gute alte OSM PE und OSD 15.5D als Demo

erstellt am: 15. Sep. 2008 14:32    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 jochen.bienert 10 Unities + Antwort hilfreich


Bericht_08.jpg

 
 
Zitat:
Original erstellt von highway45:
Jetzt mußt du nur noch deine Formel da reinlispeln...     

Hi Matthias

Wie schon gesagt, lispeln kann ich (leider noch) nicht.

Aber im Prinzip fehlt ja jetzt nur noch, wie man die 2D-Eigenschaften auslesen kann. Zur Not würde ja auch der Bericht gehen (s. Bild), welchen man im Makro, ähm sorry, natürlich im LISP auswerten kann (mit der Angabe Kurve linear weiss man sogar, ob es eine Gerade ist oder nicht   ).

Ich probiere mal das rechnerische in LISP anzupassen, soweit ich weiss, wird ja mit der polnischen Notation gerechnet.

------------------
mfg Thömu

[Diese Nachricht wurde von Thömu am 15. Sep. 2008 editiert.]

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

highway45
Moderator
Bastler mit Diplom




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

Beiträge: 6331
Registriert: 14.12.2004

SolidDesigner-20.5.1 + PhoenixPDM-11 + Solidworks-2022 + PE8

erstellt am: 15. Sep. 2008 15:13    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 jochen.bienert 10 Unities + Antwort hilfreich

Das wär nicht schlecht !

Vielleicht kommt ja noch jemand vorbei, der uns dann daraus ein richtiges Lisp häkeln kann...
   

------------------
   

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

Thömu
Mitglied
Konstrukteur


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

Beiträge: 283
Registriert: 09.04.2003

SolidWorks 09 SP3
Catia V5 R16
Pro/E WF3
Hardeware, je nach PC...
Zuhause das gute alte OSM PE und OSD 15.5D als Demo

erstellt am: 15. Sep. 2008 16:05    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 jochen.bienert 10 Unities + Antwort hilfreich

OK, hier mal das Ergebnis.

Übrigens, da LISP ja auch mir Vektoren umgehen kann, habe ich es ein bisschen vereinfacht.

Statt den 8 Variablen benötige man nur die 4 Vektoren (aber nur als XY-Vektor, da man auf der Arbeitsebene ja keinen XYZ-Vektor eingeben kann):
AR; AP; BR; BP

Überprüfung, ob parallel:

(= AR BR) oder (= AR –BR) {Edit bin nicht sicher, ob die 2te Überprüfung so geht, ansonsten (= AR (* -1 BR))}

Wenn Parallel

(setq P1 (* 0,5 (sd-vec-add AP BP)))
(setq P2 (sd-vec-add P1 AR))

Wenn nicht parallel

Für t zu berechnen braucht es trotzdem die einzelnen X und Y Koordinaten. Ich bin mir aber sicher, dass es hier eine Funktion gibt, wie im ME10 X_OF bzw. Y_OF, kann aber auf die schnelle kein Beispiel dazu finden.

(setq t (/ (+ (* (- APy BPy) ARx) (* (- BPx APx) ARy)) (- (* BRy ARy) (* BRx ARy))))

(setq P1 (sd-vec-add BP (* t BR)))
(setq P2 (sd-vec-add P1 (sd-vec-add AR BR)))
(setq P3 (sd-vec-add P1 (sd-vec-subtract AR BR)))

So, mehr kann ich nicht machen. Ich kann nur noch hoffen, dass es so passt, denn ich kenne mich eigentlich nur mit der UPN aus, ist das erst mal, dass ich etwas in PN schreibe  


------------------
mfg Thömu

[Diese Nachricht wurde von Thömu am 15. Sep. 2008 editiert.]

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

der_Wolfgang
Ehrenmitglied V.I.P. h.c.
Tastenhauer


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

Beiträge: 2017
Registriert: 3.20.

● PE6+8@home
● W10 Pro Build19044.2364
● Drafting V20.1+4
● Modeling V20.1+4

erstellt am: 15. Sep. 2008 21: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 jochen.bienert 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Thömu:
Überprüfung, ob parallel:

(= AR BR) oder (= AR –BR) {Edit bin nicht sicher, ob die 2te Überprüfung so geht, ansonsten (= AR (* -1 BR))}



Code:
(OR (sd-vec-equal-p (sd-vec-normalize AR) (sd-vec-normalize BR)) .... )

Zitat:

Für t zu berechnen braucht es trotzdem die einzelnen X und Y Koordinaten. Ich bin mir aber sicher, dass es hier eine Funktion gibt, wie im ME10 X_OF bzw. Y_OF, kann aber auf die schnelle kein Beispiel dazu finden.

(setq t (/ (+ (* (- APy BPy) ARx) (* (- BPx APx) ARy)) (- (* BRy ARy) (* BRx ARy))))



(setq T ... 
ist etwas  recht unschoenes. Ich sag mal: T und NIL gehören zu den heiligen Bestandteilen der Sprache LISP    Die tut man nicht ueberdefinieren tun :D :D
Code:
(/ (+ (* (- (gpnt2d_y AP) (gpnt2d_y BP).....)))

den rest bekommt ihr dann zu 2t gebacken.. 


PS: kann mir mal jemand erlaeren warum die schallend-lach-smilies hinter "tun" nicht funktionieren?     

------------------
Seamonkey Firefox Thunderbird  Seamonkey auf deutsch ● OSD Hilfeseite (de) / help page (en)NotePad++

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

Thömu
Mitglied
Konstrukteur


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

Beiträge: 283
Registriert: 09.04.2003

SolidWorks 09 SP3
Catia V5 R16
Pro/E WF3
Hardeware, je nach PC...
Zuhause das gute alte OSM PE und OSD 15.5D als Demo

erstellt am: 15. Sep. 2008 23:36    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 jochen.bienert 10 Unities + Antwort hilfreich


winkelhalbierende_V02.lsp.txt

 
Zitat:
Original erstellt von der_Wolfgang:
den rest bekommt ihr dann zu 2t gebacken..  ;)

Hallo Wolfgang

Danke für die Hilfe und die Belehrung 

Hier mal das zusammengebackene LISP => (bitte nicht steinigen)
Auf dem PE funktionert es hier bei mir 

Es ist einfach ein bisschen umständlich, da auf jeder Geraden 2 Punkte angeklickt werden müssen, also eigentlich doppelte Arbeit.
Es fehlt immer noch das auslesen der Geo-Eigenschaften.

------------------
mfg Thömu

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

highway45
Moderator
Bastler mit Diplom




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

Beiträge: 6331
Registriert: 14.12.2004

SolidDesigner-20.5.1 + PhoenixPDM-11 + Solidworks-2022 + PE8

erstellt am: 16. Sep. 2008 07:09    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 jochen.bienert 10 Unities + Antwort hilfreich

  Ich fall um !     

------------------
         CoCreate: Hilfeseite I FAQ I Hilfreiche Links

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

der_Wolfgang
Ehrenmitglied V.I.P. h.c.
Tastenhauer


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

Beiträge: 2017
Registriert: 3.20.

● PE6+8@home
● W10 Pro Build19044.2364
● Drafting V20.1+4
● Modeling V20.1+4

erstellt am: 16. Sep. 2008 19:32    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 jochen.bienert 10 Unities + Antwort hilfreich

 
Zitat:
Original erstellt von Thömu:
Danke für die Hilfe und die Belehrung  ;)

hmmmmm...  also Hilfe ja. Aber Belehrung.. Nein.

Aber jetzt kommt ne Belehrung (damit sich Dein Satz auch wirklich gelohnt hat :D ):
<BOB>** LISP files schreiben wir in ANSI oder in UTF8-with-BOM. **
So handgemachtes LISP speichert k(aum)einer als UTF16LE. Nur die automagisch vom OSD geschriebenen Files sind häufig UTF16 codiert.

Wenn Du moechtest das Deine Lisp tools auch von OSD-Usern der 14er Generation oder noch älter genutzt werden, dann geht eh nur HP-Roman8 (nicht ANSI).  <EOB>

HEY.. mit sd-multi-lang-string  superb!

:Dialog-title (sd-multi-lang-string ...)
da muss nen ' quote hin. Aber den Unterschied merkst Du erst wenn Du das LISP compilierst und dann in einem anderssprachigen OSD die DLL laedst. Machs bitte rein falls Du noch mal ne version spendierst. ;) 

Zitat:
Auf dem PE funktionert es hier bei mir  :)
supiii, warum denn steinigen?  Galückwunsch! Schöner sauberer Code.
 
Zitat:
Es fehlt immer noch das auslesen der Geo-Eigenschaften.

Na dann bau's doch ein..  

Komfortable waere jeweils PKT und Richtung. Dann waere man voellig frei.

Code:
      (winkel-halb ()
        (let (AR BR P1 P2)
         .....
         )
damit sind dann auch die lokalen variablen sauber definiert und ich spende noch ein sd-call-cmds   , oder 2.

So, jetzt darf wieder jemand anders.  

------------------
EDIT wegen ANSI // HP-Roman8 codierung, siehe folgendes Posting von Claus /EDIT
------------------
Seamonkey Firefox Thunderbird  Seamonkey auf deutsch ● OSD Hilfeseite (de) / help page (en)NotePad++

[Diese Nachricht wurde von der_Wolfgang am 16. Sep. 2008 editiert.]

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

clausb
Ehrenmitglied V.I.P. h.c.



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

Beiträge: 2914
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 16. Sep. 2008 19:42    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 jochen.bienert 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von der_Wolfgang:
Wenn Du moechtest das Deine Lisp tools auch von OSD-Usern der 14er Generation oder noch älter genutzt werden, dann geht eh nur ANSI. 

Belehrung des Belehrers: Vor v15 erwartete Modeling Lisp-Files grundsätzlich in HP-Roman8 (oder SJIS in Japan) - und eben nicht in "ANSI", was meistens mit ISO8859-1 gleichgesetzt wird (was zwar auch wieder nicht stimmt - aber HP-Roman8 ist jedenfalls definitiv nicht damit identisch).

Solange keine Umlaute in der Datei sind, gibt es allerdings faktisch keinen Unterschied zwischen HP-Roman8 und ISO8859-1.

Ab v15 lässt man den Editor seiner Wahl Lisp-Dateien am besten in UTF-8 mit BOM kodieren und abspeichern.

Claus

------------------
CoCreate Modeling FAQ: http://www.clausbrod.de/CoCreateModeling/

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

der_Wolfgang
Ehrenmitglied V.I.P. h.c.
Tastenhauer


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

Beiträge: 2017
Registriert: 3.20.

● PE6+8@home
● W10 Pro Build19044.2364
● Drafting V20.1+4
● Modeling V20.1+4

erstellt am: 16. Sep. 2008 20:29    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 jochen.bienert 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von clausb:
Belehrung des Belehrers:

Hi Claus,

hast recht. Ich hab' einfach im Notepad++ geguckt was ich da eigentlich immer nehme. Und da ich die deutschen Umlaute in unseren Dateien seit Jahrzehnten meide funktioniert das halt. Aber einen Editor mit HP-Roman8 Zeichensatz...  heutzutage.  Ok, man koennte (sd-show-general-text-editor) nehmen..   

Danke füer die Richtigstellung.

------------------
Seamonkey Firefox Thunderbird  Seamonkey auf deutsch ● OSD Hilfeseite (de) / help page (en)NotePad++

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

clausb
Ehrenmitglied V.I.P. h.c.



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

Beiträge: 2914
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 16. Sep. 2008 22:06    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 jochen.bienert 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von der_Wolfgang:
Und da ich die deutschen Umlaute in unseren Dateien seit Jahrzehnten meide funktioniert das halt. Aber einen Editor mit HP-Roman8 Zeichensatz... 

8-)

Zum Glück sind die Zeiten, in denen man sich über die Beschaffung eines solchen Editors den Kopf zerbrechen musste, seit v15 vorbei. (Nein, ich kenne auch keinen solchen Editor, ausser halt den Editoren, wie sie anno dunnemals auf HP-UX-Rechnern liefen.)

Claus


------------------
CoCreate Modeling FAQ: http://www.clausbrod.de/CoCreateModeling/

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

woho
Mitglied
Technik CAD


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

Beiträge: 1468
Registriert: 05.09.2000

von SolidDesigner ab 1.0
ueber Precision Engineering Dynamic Modeling
ueber CoCreate Modeling
bis Creo Elements/Direct 20.x

erstellt am: 17. Sep. 2008 00:08    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 jochen.bienert 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von clausb:

Zum Glück sind die Zeiten, in denen man sich über die Beschaffung eines solchen Editors den Kopf zerbrechen musste, seit v15 vorbei. (Nein, ich kenne auch keinen solchen Editor, ausser halt den Editoren, wie sie anno dunnemals auf HP-UX-Rechnern liefen.)

Ja! Das waren noch Zeiten - und wir mittendrin! 

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

Thömu
Mitglied
Konstrukteur


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

Beiträge: 283
Registriert: 09.04.2003

SolidWorks 09 SP3
Catia V5 R16
Pro/E WF3
Hardeware, je nach PC...
Zuhause das gute alte OSM PE und OSD 15.5D als Demo

erstellt am: 17. Sep. 2008 14:13    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 jochen.bienert 10 Unities + Antwort hilfreich


winkelhalbierende_V03.lsp.txt

 
Code:
(if (sd-line-p (sd-inq-geo-props LA))

Mit diesem Code kann frage ich ab, ob es eine Gerade Linie ist, das funktioniert auch.


Code:

(setf AR (sd-line-dir (sd-inq-geo-props LA)))
(setf AP (sd-line-pnt (sd-inq-geo-props LA)))

Und mit diesem will ich eigentlich die Richtung und den Punkt auslesen, bekomme aber immer einen Fehler.
       

Im Anhang mal die korrigierte Version, einfach das Gerade-Gerade funktioniert nicht.

------------------
mfg Thömu

[Diese Nachricht wurde von Thömu am 17. Sep. 2008 editiert.]

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

clausb
Ehrenmitglied V.I.P. h.c.



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

Beiträge: 2914
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 17. Sep. 2008 14:29    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 jochen.bienert 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Thömu:
Und mit diesem will ich eigentlich die Richtung und den Punkt auslesen, bekomme aber immer einen Fehler.

Welchen?


------------------
CoCreate Modeling FAQ: http://www.clausbrod.de/CoCreateModeling/

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

Thömu
Mitglied
Konstrukteur


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

Beiträge: 283
Registriert: 09.04.2003

SolidWorks 09 SP3
Catia V5 R16
Pro/E WF3
Hardeware, je nach PC...
Zuhause das gute alte OSM PE und OSD 15.5D als Demo

erstellt am: 17. Sep. 2008 19:09    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 jochen.bienert 10 Unities + Antwort hilfreich

Code:
Sie haben eine ungültige Option oder Daten-Zeichenkette eingegeben.  (Fehler 139)

Ich glaube aber, dass das Übergeben funktioniert, ich aber gar nicht den (die) Vektoren bekomme, die ich benötige. Kann es sein, dass die Funktion(en) einen 3D-Vektor zurück geben und nucht einen 2D-Vektor, bezogen auf die Arbeitsebene?

------------------
mfg Thömu

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

der_Wolfgang
Ehrenmitglied V.I.P. h.c.
Tastenhauer


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

Beiträge: 2017
Registriert: 3.20.

● PE6+8@home
● W10 Pro Build19044.2364
● Drafting V20.1+4
● Modeling V20.1+4

erstellt am: 17. Sep. 2008 19: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 Nur für jochen.bienert 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Thömu:
Code:
Sie haben eine ungültige Option oder Daten-Zeichenkette eingegeben.   (Fehler 139)


Nun DIES kommt mit sicherheit aus dem c_line_inf commando.
Zitat:
Ich glaube aber, dass das Übergeben funktioniert, ich aber gar nicht den (die) Vektoren bekomme, die ich benötige.

Glauben versetzt Berge, oder auch nicht.

Trace mal: will sagen, beobachte was Function X bekommt und was selbige zurückliefert. Das Konsolen Fenster ist zwingend erforderlich.

Code:
(trace oli:sd-line-pnt oli:sd-line-dir oli:sd-inq-geo-props)
(trace c_line_inf)
.. in die command line schubsen und dann deine funktion ganz normal nutzen und beobachten 'was so abgeht'.

------------------
Seamonkey Firefox Thunderbird  Seamonkey auf deutsch ● OSD Hilfeseite (de) / help page (en)NotePad++

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

Thömu
Mitglied
Konstrukteur


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

Beiträge: 283
Registriert: 09.04.2003

SolidWorks 09 SP3
Catia V5 R16
Pro/E WF3
Hardeware, je nach PC...
Zuhause das gute alte OSM PE und OSD 15.5D als Demo

erstellt am: 17. Sep. 2008 21:30    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 jochen.bienert 10 Unities + Antwort hilfreich


winkelhalbierende_V04.lsp.TXT

 
   
So jetzt hat es geklappt!
   

Mit den Befehlen werden die richtigen Vektoren ausgegeben, allerdings als 3D-Vektor (Z = 0).

Zitat:
Original erstellt von highway45:
Vielleicht kommt ja noch jemand vorbei, der uns dann daraus ein richtiges Lisp häkeln kann...

Der Pullover, äh das LISP ist fertig gehäckelt 

------------------
mfg Thömu

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

der_Wolfgang
Ehrenmitglied V.I.P. h.c.
Tastenhauer


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

Beiträge: 2017
Registriert: 3.20.

● PE6+8@home
● W10 Pro Build19044.2364
● Drafting V20.1+4
● Modeling V20.1+4

erstellt am: 17. Sep. 2008 22: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 Nur für jochen.bienert 10 Unities + Antwort hilfreich

Zitat:
Der Pullover, äh das LISP ist fertig gehäckelt  ;)[/i]

<applaus>

hey, die Lernkurve kann sich ja nun wirklich sehen lassen!!!! 

------------------
Seamonkey Firefox Thunderbird  Seamonkey auf deutsch ● OSD Hilfeseite (de) / help page (en)NotePad++

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

highway45
Moderator
Bastler mit Diplom




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

Beiträge: 6331
Registriert: 14.12.2004

SolidDesigner-20.5.1 + PhoenixPDM-11 + Solidworks-2022 + PE8

erstellt am: 17. Sep. 2008 22: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 jochen.bienert 10 Unities + Antwort hilfreich

Ich bin ebenfalls schwerstens beeindruckt !

Unglaublich aber wahr: ich hab die Funktion heute schon mehrmals benutzt !
Ich mußte nämlich einen Fußball konstruieren, der mal eine Leuchte werden soll und dabei konnte ich es bei den Fünfecken gut gebrauchen.
Wer möchte, kann den hier herunterladen:
http://osd.cad.de/modelle.htm

Das neue Tool ist auch schon auf der Hilfeseite, und zwar hier:

http://osd.cad.de/lisp_3d.htm#51

   

------------------
         CoCreate: Hilfeseite I FAQ I Hilfreiche Links

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

Ex-Mitglied
der_Wolfgang
Ehrenmitglied V.I.P. h.c.
Tastenhauer


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

Beiträge: 2017
Registriert: 3.20.

● PE6+8@home
● W10 Pro Build19044.2364
● Drafting V20.1+4
● Modeling V20.1+4

erstellt am: 18. Sep. 2008 22:49    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 jochen.bienert 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von jochen.bienert:
Einziger Wehrmutstropfen: Man kann das LISP nicht von der Hilfeseite runterladen!
das wird schon noch ;)

Zitat:
Kleiner Wunsch, wäre es möglich, das automatisch "!.Linie" ausgewählt ist.

An der Benutzerführung kann man sicherlich noch etwas feilen. Wichtig ist, das jetzt erstmal keine (echten) Fehler bei der Anwenung auftauchen!

Welcher Lisp-Ein/Umsteiger mag sich denn mal mit :expand-shrink beschäftigen???


Es gibt eine neue version:

  • Prüfe auf aktuelle Arbeitsebene
  • alle genutzen variablen deklariert
  • sd-call-cmds eingebaut (--> Verhalten beim Rückgängigmachen, UND Verhalten bei Einheiten <> 1mm)
  • getestet in 14.50!!!  und damit vermutlich auch in 12.xx oder älter nutzbar
    (der einzige deutsche Umlaut ist in einem Kommentar, also kein wirklicher Bedarf UTF8 zu verwenden)
  • :help-action eingebaut
  • noch ein paar Kommentare spendiert
  • ....

------------------
Seamonkey Firefox Thunderbird  Seamonkey auf deutsch ● OSD Hilfeseite (de) / help page (en)NotePad++

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

highway45
Moderator
Bastler mit Diplom




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

Beiträge: 6331
Registriert: 14.12.2004

SolidDesigner-20.5.1 + PhoenixPDM-11 + Solidworks-2022 + PE8

erstellt am: 19. Sep. 2008 08:28    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 jochen.bienert 10 Unities + Antwort hilfreich

Ein klasse Tool habt ihr da zusammengestrickt ! 

Zitat:
Original erstellt von jochen.bienert:
...Man kann das LISP nicht von der Hilfeseite runterladen!...
Ja, entschuldigung. Hatte es vergessen mit hochzuladen. Jetzt ist es aber da.
Zitat:
Original erstellt von jochen.bienert:
...wäre es möglich, das automatisch "!.Linie" ausgewählt ist
Dazu kannst du in Zeile 37 den Wert :initial-optional t auf :initial-optional nil umstellen.

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

Ex-Mitglied
highway45
Moderator
Bastler mit Diplom




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

Beiträge: 6331
Registriert: 14.12.2004

SolidDesigner-20.5.1 + PhoenixPDM-11 + Solidworks-2022 + PE8

erstellt am: 19. Sep. 2008 08:52    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 jochen.bienert 10 Unities + Antwort hilfreich


Bezog sich auf die endgültige Version von Wolfgang.
Sollte sich noch jeder nachladen.

------------------
         CoCreate: Hilfeseite I FAQ I Hilfreiche Links

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

Thömu
Mitglied
Konstrukteur


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

Beiträge: 283
Registriert: 09.04.2003

SolidWorks 09 SP3
Catia V5 R16
Pro/E WF3
Hardeware, je nach PC...
Zuhause das gute alte OSM PE und OSD 15.5D als Demo

erstellt am: 19. Sep. 2008 15:53    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 jochen.bienert 10 Unities + Antwort hilfreich

Hallo zusammen

Super, sieht ja immer besser aus :)

Ich habe mich gestern mal ein bisschen mit LISP befasst (nicht OSDM spezifisch) und bin jetzt nicht ganz sicher, ab die Berechnung der Variable VT mit "/" so funktioniert. Theoretisch wäre es ja möglich, dass alle X und Y Werte ganze Zahlen sind, die Division aber eine Kommazahl ergibt. Ich denke mal, es wäre besser, wenn noch ein "float" vor einer Zahl stehen würde, oder?

Code:
(setf VT (/ (float (+ (* (- (gpnt2d_y AP) (gpnt2d_y BP)) (gpnt2d_x AR))
(* (- (gpnt2d_x BP) (gpnt2d_x AP)) (gpnt2d_y AR))))
(- (* (gpnt2d_y BR) (gpnt2d_x AR)) (* (gpnt2d_x BR) (gpnt2d_y AR)))))


Cool, mit dem "sd-call-cmds" funktioniert es ja nun, dass die Funktion offen bleibt :D Das hat mir gestern bestimmt 2 Stunden Nerven gekostet, bei mir leider ohne Erfolg.

Was ich noch ändern würde, ist zu definieren, welches die nächste Eingabe-Variable sein soll -> :next-variable
Dann bleibt die Funktion auch in einer Schleife hängen =)

Code:
(LA
:value-type :edge-2d
:title (sd-multi-lang-string "1st Line" :german "1. Linie")
:prompt-text (sd-multi-lang-string "Specify 1st Line." :german "1. Linie angeben.")
:check-function
#'(lambda (gerade)
(if (sd-line-p (sd-inq-geo-props gerade))
:ok
(values :error (sd-multi-lang-string "Linear Lines Only!" :german "Nur Geraden erlaubt!"))))
:initial-optional nil
:after-input (gerade-gerade-action)
:next-variable 'LB
)

Natürlich muss dies bei allen Variablen gemacht werden: LA -> LB / LB -> LA / P1 -> P2 / P2 -> P3 / P3 -> P4 / P4 -> P1

Vielen Dank Wolfgang, für das Aufarbeiten des Codes :)

------------------
mfg Thömu

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

clausb
Ehrenmitglied V.I.P. h.c.



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

Beiträge: 2914
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 19. Sep. 2008 16:05    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 jochen.bienert 10 Unities + Antwort hilfreich

 
Zitat:
Original erstellt von Thömu:
Ich habe mich gestern mal ein bisschen mit LISP befasst (nicht OSDM spezifisch) und bin jetzt nicht ganz sicher, ab die Berechnung der Variable VT mit "/" so funktioniert. Theoretisch wäre es ja möglich, dass alle X und Y Werte ganze Zahlen sind, die Division aber eine Kommazahl ergibt.

Warum glaubst Du, dass das ein Problem waere?


------------------
CoCreate Modeling FAQ: http://www.clausbrod.de/CoCreateModeling/

[Diese Nachricht wurde von clausb am 19. Sep. 2008 editiert.]

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

Thömu
Mitglied
Konstrukteur


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

Beiträge: 283
Registriert: 09.04.2003

SolidWorks 09 SP3
Catia V5 R16
Pro/E WF3
Hardeware, je nach PC...
Zuhause das gute alte OSM PE und OSD 15.5D als Demo

erstellt am: 19. Sep. 2008 16:15    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 jochen.bienert 10 Unities + Antwort hilfreich

So wie ich gelesen habe (s. hier) ergibt die Funktion "/" als Resultat eine Ganzzahl aus, wenn die beiden Eingabezahlen auch Ganzzahlen sind. Also (/ 7 2) würde 3 ergeben.

Wenn es nicht so ist, um so besser, ist ja einfacher so.

------------------
mfg Thömu

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

clausb
Ehrenmitglied V.I.P. h.c.



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

Beiträge: 2914
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 19. Sep. 2008 17:10    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 jochen.bienert 10 Unities + Antwort hilfreich

 
Zitat:
Original erstellt von Thömu:
So wie ich gelesen habe (s. hier) ergibt die Funktion "/" als Resultat eine Ganzzahl aus, wenn die beiden Eingabezahlen auch Ganzzahlen sind.

Das mag in AutoLISP so sein, aber sicher nicht in Common Lisp.

AutoLISP basiert auf einer sehr alten Version von XLisp, dem viele moderne Features von Common Lisp fehlen (Makros, lexikalische Bindung, Lisp-2, Strukturen, optionale Argumente, Readermakros...) sowie auch viele der CL-Libraryfunktionen. Der Versuch, sich mittels eines AutoLISP-Tutorials (und sei es das legendäre von mapcar) in unser Lisp einzuarbeiten, ist daher zum Scheitern verurteilt.

Dass mir jetzt keiner auf den Gedanken kommt, ich wolle auf AutoLISP herumhacken. Ganz im Gegenteil, die Entscheidung von Autodesk, einen Lisp-Dialekt als Scripting- und Anpassungssprache in AutoCAD einzubauen, und das in den frühen 80ern, war meiner Meinung nach schlau, vorausschauend und letztlich ja auch im positivsten Sinne folgenreich.

------------------
CoCreate Modeling FAQ: http://www.clausbrod.de/CoCreateModeling/

[Diese Nachricht wurde von clausb am 19. Sep. 2008 editiert.]

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



Techniker Elektrotechnik Fertigungsprozesse (m/w/d)
Technologien auf das nächste Level zu heben, sich Herausforderungen zu stellen und an den Innovationen von morgen zu arbeiten - dafür benötigen wir bei FERCHAU Expert:innen wie dich: als Teniker:innen Maschinenbau im Bereich Validierung von Herstellungsprozessen. Wir realisieren spannende Projekte für namhafte Kunden des Maschinenbaus von der ersten Idee bis zur serienreifen Produktion. Werde jetzt ...
Anzeige ansehenFertigungstechnik
Thömu
Mitglied
Konstrukteur


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

Beiträge: 283
Registriert: 09.04.2003

SolidWorks 09 SP3
Catia V5 R16
Pro/E WF3
Hardeware, je nach PC...
Zuhause das gute alte OSM PE und OSD 15.5D als Demo

erstellt am: 21. Sep. 2008 22:36    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 jochen.bienert 10 Unities + Antwort hilfreich

OK, du hast mich ja erwischt 

Ich dachte, die grundsätzlichen Funktionen von LISP wären bestimmt die gleichen...
Aber einen Einblick in Lisp hat es mir trotzdem gegeben, so was es mit den ' aufsich hat usw.

------------------
mfg Thömu

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