Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  Kompetent und Kostenlos

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 Autodesk Produkte
Autor Thema:  Kompetent und Kostenlos (2149 mal gelesen)
Harald Beiter
Mitglied
Konstrukteur (Techniker)


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

Beiträge: 121
Registriert: 19.11.2002

P4 3GHZ 1 GB RAM Quadro FX 3000 256 MB Autocad Mechanical 6 PP Sp4

erstellt am: 10. Nov. 2004 15: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

@ Cadwiesel,
da ich sah, das Du aktiv bist:
-habe nach der CAT/PRO die vorgenannte CD hier im Haus aktiviert und soeben vom Vertrieb folgende Mitteilung bekommen:
-das Lisp Programm "gesla" funktioniert nicht!
Nach Prüfung muß ich denen recht geben (ungern!).
Haben einen Kettenzug dargestellt als Polylinie mit "gesla" berechnen lassen und sicherheitshalber auch mit "länge".
=zwei unterschiedliche Ergebnisse!
Nach zerlegen der Polylinie in zwei aneinandergereihte Polylinien funkitionierte "gesla" einwandfrei (d.h., die beiden Teile wurden mit richtigen Maß erkannt).
Was liegt hier für ein Fehler vor?
Gruß Harald

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

Proxy
Ehrenmitglied
Stateless-DHCP v6-Paketfragmentierer


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

Beiträge: 1629
Registriert: 13.11.2003

Tastaturen, Mäuse,
Pladden, ...,
AutoCADs 200X, SWX 2kX

erstellt am: 10. Nov. 2004 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 Harald Beiter 10 Unities + Antwort hilfreich

Ich kann leider auch diese Verhalten bestätigen.
Bei einer Polylinie mit z.B. diesen Stützpunkten (10 100.0 100.0) (10 200.0 100.0) (10 270.711 29.2893) (10 270.711 -70.7107) (10 170.711 -70.7107) (10 100.0 0.0) liefert mir gesla die Gesamtlänge von 0 (Null) Eigentlich müsste ca. 714.42 rauskommen. Anscheinend wird bei geschlossenen Polylinienkonturen (eine Polylinie) der Umfang auf Null gesetzt.

------------------
"Lisp?!?! Why the Hell did you pick the most arcane, obscure, and hopelessly-rooted-in-the-computer-science-department language in the world for an AutoCAD programming language?"  Read the whole story: The Autodesk File ca. 890 Seiten | 7500 KB PDF

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

CADwiesel
Moderator
CAD4FM UG




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

Beiträge: 1968
Registriert: 05.09.2000

AutoCAD, Bricscad
Wir machen das Mögliche unmöglich

erstellt am: 10. Nov. 2004 15:54    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 Harald Beiter 10 Unities + Antwort hilfreich

Hai
du meinst das Lisp länge?

Unter welcher Autocadversion kommt der Fehler - LT?

------------------
Gruß
CADwiesel
Besucht uns im CHAT

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

Harald Beiter
Mitglied
Konstrukteur (Techniker)


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

Beiträge: 121
Registriert: 19.11.2002

P4 3GHZ 1 GB RAM Quadro FX 3000 256 MB Autocad Mechanical 6 PP Sp4

erstellt am: 10. Nov. 2004 16:04    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

Hi Cadwiesel,
die auf der Messe erhaltene CD "kompetent und kostenlos" hat das "gesla" lisp drauf.
Bei meiner ACAD 2002 MDT6 PP funktioniert serienmäßig der Befehl "länge".
Und diese beiden sollten eigentlich gleiche Ergebnisse liefern.
Wie im 1. Beitrag geschrieben jedoch nicht.
Gruß Harald

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

CADwiesel
Moderator
CAD4FM UG




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

Beiträge: 1968
Registriert: 05.09.2000

AutoCAD, Bricscad
Wir machen das Mögliche unmöglich

erstellt am: 10. Nov. 2004 16:25    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 Harald Beiter 10 Unities + Antwort hilfreich

:hmm ich kann das nicht Nachvollziehen
länge gibt dir ja nur ein Objekt aus. Es muss also per lisp auch nur ein Objekt gewählt worden sein.
Vielleicht hannst du mir mal ein Beispiel zeigen.

@Proxy
an deinem Beispiel scheint ein Fehler su haften.
für deine Polylinie bekomme ich einen Wert von 500.00049
mit jedem Programm raus.


edit:
ich habe mir das lisp mal angesehen.
Es fehlt in der Tat ein wichtiger Teil, in dem Lisp, denn geschlossene Polylinien werden mit noll berechnet.
hier mal das lisp, was ich habe:

Code:

(defun C:gesla (/ ss T_2 lang)
  (vl-load-com)
  (setq Ss nil
        t_2 nil
        lang 0
        ) ;_ end of setq
  (prompt "\nObjekte zur längenermittlung wählen: ")
  (setq Ss (ssget '((-4 . "<OR")
                    (0 . "LWPOLYLINE")
                    (0 . "POLYLINE")
                    (0 . "LINE")
                    (0 . "CIRCLE")
                    (0 . "ELLIPSE")
                    (0 . "SPLINE")
                    (0 . "ARC")
                    (-4 . "OR>")
                    )
                  ) ;_ end of ssget
        ) ;_ end of setq
  (if (not Ss)
    (princ (strcat "\nNichts gewählt."))
    (progn
      (while (setq t_2 (ssname Ss 0))
        (cond
          ((=(cdr(assoc 0(entget t_2)))"CIRCLE")
          (setq lang (+ lang (* pi(* 2(cdr(assoc 40(entget t_2)))))))
          )
          ((=(cdr(assoc 0(entget t_2)))"ELLIPSE")
          (command "_area" "o" t_2 "")
          (setq lang (+ lang (getvar "perimeter")))
          )
          ((wcmatch(cdr(assoc 0(entget t_2)))"*POLYLINE")
          (command "_area" "o" t_2 )
          (setq lang (+ lang (getvar "perimeter")))
          )
          (t
        (setq lang (+ lang
                      (vlax-curve-getDistAtPoint
                        (vlax-ename->vla-object t_2)
                        (vlax-curve-getendPoint t_2)
                        ) ;_ end of vlax-curve-getDistAtPoint
                      ) ;_ end of +
              ) ;_ end of setq
          )
          )
        (setq Ss (ssdel t_2 Ss))
        )                              ;while 
      (princ
        (strcat "\n*****Gesamtlänge: " (rtos lang 2 5))
        ) ;_ end of princ
      (terpri)
      )                                ;endprogn
    )                                  ;endif
  (princ)
  )                                    ;defun
(prompt "\nStarten mit 'gesla' ")


------------------
Gruß
CADwiesel
Besucht uns im CHAT

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

Harald Beiter
Mitglied
Konstrukteur (Techniker)


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

Beiträge: 121
Registriert: 19.11.2002

P4 3GHZ 1 GB RAM Quadro FX 3000 256 MB Autocad Mechanical 6 PP Sp4

erstellt am: 10. Nov. 2004 16: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

Hi cadwiesel,
da ich jetzt (wohlverdient) Feierabend habe, möchte ich morgen Dir die Polylinie mal reinstellen.
Dann kannste selber sehen was ich meine.
Gruß Harald

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

Harald Beiter
Mitglied
Konstrukteur (Techniker)


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

Beiträge: 121
Registriert: 19.11.2002

P4 3GHZ 1 GB RAM Quadro FX 3000 256 MB Autocad Mechanical 6 PP Sp4

erstellt am: 11. Nov. 2004 08:39    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

`n Morgen cadwiesel,
irgendwie krieg ich´s nicht auf die reihe.
Dein gestriges geändertes Lisp kopiert und mittels einfügen über den vorhandenen (markierten) abgespeicherten Lisp-text von der CD gelegt.
Im ACAD aus den geladenen entfernt und nach Neustart acad das nun geänderte geladen.
Ergebnis: nach Eingabe von gesla sagt mir ACAD unbekannter Befehl!
Was mache ich falsch?
Ggruß Harald

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

CADwiesel
Moderator
CAD4FM UG




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

Beiträge: 1968
Registriert: 05.09.2000

AutoCAD, Bricscad
Wir machen das Mögliche unmöglich

erstellt am: 11. Nov. 2004 10: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 Harald Beiter 10 Unities + Antwort hilfreich

alles zwischen den Zeilen kopieren
von (defun c:....
bis (prompt "starten....

in eine leere asciidatei einfügen. Diese speichern als meinetwegen gesla.lsp .

die datei in acad laden und dann ausführen mit gesla

------------------
Gruß
CADwiesel
Besucht uns im CHAT

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