Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  Benutzerabfrage in einer Endlosschleife

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:  Benutzerabfrage in einer Endlosschleife (2050 mal gelesen)
Gerd_Ecke
Mitglied
Bergbauingenieur


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

Beiträge: 141
Registriert: 28.08.2002

Civil 3D 2020, GeoCAD
BricsCAD 18

erstellt am: 17. Mrz. 2009 11: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

Hallo Leutz,

bin dabei einen Block in Echtzeit auf dem Schirm hin und her zu schieben. Die Positionen sollen später mal über die serielle Schnittstelle von einem GPS-Messgerät kommen.
Behelfe mir zur Zeit damit die Koordinaten aus einer ASCII-Datei zu lesen.(Hat schonmal das gleiche Zeilenformat wie später die Daten von der Seriellen)
Mein Problem : Wie ermögliche ich es dass der User noch das CAD-System bedienen kann?
Reaktoren über VL fallen aus da das Programm auf einem IntelliCAD laufen soll das kein VL unterstützt.
Ich möchte zumindestens Zoom rein und raus und ein Exit ermöglichen.
Ach ja zum Exit meine 2 Frage :

Code:
      (setq Zeile (read-line Eindatei))          ;liest Koordinaten aus Datei
      (IF Zeile
          (setq Zeile (str-tok Zeile ","))        ;wenn noch Koordinaten anliegen in Liste umwandeln
          (progn (princ "\n++Ende++\n")(close EinDatei) (exit) ) ;wenn keine Koordinaten dann Schluss
      )


Das Exit erzeugt eine Fehlermeldung. Kann ich diese ausblenden ?

Mit freundlichen Grüßen
GE

------------------
ACAD 2000, Map 2007, GeoCAD
wenig LTplus pur (ICAD)

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

cadffm
Moderator
良い精神




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

Beiträge: 21533
Registriert: 03.06.2002

Alles

erstellt am: 17. Mrz. 2009 12:14    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 Gerd_Ecke 10 Unities + Antwort hilfreich

verstehe die Sache gerade garnicht so richtig - hoffe es hilft dir dennoch mal weiter 

in einem Command wäre die Benutzerabfrage: PAUSE

weitere Lispfunktion welche den User fordert ist ja zB. "GETPOINT"

Aber um es auf den Punkt zu bringen müßte ich dein Problem wohl besser verstehen -
entweder du beschreibst nochmal neu, oder jemand anders versteht dich auf Anhieb

------------------
die alte SUCHfunktion.. - System-Angaben - User:FAQ(Adesk)

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

cadffm
Moderator
良い精神




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

Beiträge: 21533
Registriert: 03.06.2002

Alles

erstellt am: 17. Mrz. 2009 12:17    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 Gerd_Ecke 10 Unities + Antwort hilfreich

Nochmal:
Du möchtest eine Blockreferenz nacheinander auf 100.000 verschiedene Koordinaten verschieben
und der User soll zusehen ? aber dabei auch noch zoomen können ?

------------------
die alte SUCHfunktion.. - System-Angaben - User:FAQ(Adesk)

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

Gerd_Ecke
Mitglied
Bergbauingenieur


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

Beiträge: 141
Registriert: 28.08.2002

Civil 3D 2020, GeoCAD
BricsCAD 18

erstellt am: 17. Mrz. 2009 12:33    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

Hallo cadffm,

so ungefähr ja.
Ungefähr wie ein Navi, jedoch für Kettendozer.
Die Koordinaten werden mit einem Leica SR530 während der Fahrt aufgenommen, im 1s Takt über die serielle Schnittstelle an einen Laptop / Oder IndustriePC weitergeleitet und mittels IntelliCAD auf den Schirm gebracht. Damit kann der Dozerfahrer in Echtzeit sehen in welchem Baufeld er schiebt bzw. wo die Auftragsgrenze ist.
>>und im Hinterkopf habe ich dann noch wenn das Projekt im CAD vorhanden ist, die gemessene Höhe im cm Bereich liegt, kann man ja theoretisch die noch zu schiebende Auftragsmächtigkeit anzeigen.

MfG
GE

Pause und Getpoint warten leider auf eine Eingabe, gehen deshalb nicht.
------------------
ACAD 2000, Map 2007, GeoCAD
wenig LTplus pur (ICAD)

[Diese Nachricht wurde von Gerd_Ecke am 17. Mrz. 2009 editiert.]

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: 17. Mrz. 2009 12:56    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 Gerd_Ecke 10 Unities + Antwort hilfreich

Ich würde es nicht per Insert machen, sondern per grdraw oder grvecs die Koordintendarstellung auf dem Bildschirm realisieren.

Mir ist dein Vorhaben mit den Koordinaten aus der Datei auch nicht wirklich ganz verständlich, da du m.E nach jedem Koordinatenpunkt ersteinmal die Bildschirmausgabe nachziehen musst.
und wie sollen später die koordinaten aus dem Messgerät an die CAD übergeben werden? sollen die auch erst in eine Liste geschrieben werden, die du dann ausliest?

ps mit welcher iCAD vers arbeitest du, die noch kein VL unterstützt?

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

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

Gerd_Ecke
Mitglied
Bergbauingenieur


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

Beiträge: 141
Registriert: 28.08.2002

Civil 3D 2020, GeoCAD
BricsCAD 18

erstellt am: 17. Mrz. 2009 13:38    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


Raupe1.jpg

 
Hallo CADwiesel,

Das Messgerät gibt über die serielle Schnittstelle je 1sek einen Zeichenstring aus der die Koordinaten und Qualität enthält. Mit Lisp sollte es wohl möglich sein Diese kontinuierlich abzufragen.
Um die Bildschirmausgabe testen zu können habe ich mir eine Datei angelegt um dies ohne Messgerät simulieren zu können.

CAD-System ist ein 2005'er LTplus da wir davon 10 Lizenzen haben und nur 8 nutzen.

Die Bildschirmausgabe im Sekundentakt nachzuführen ist kein Problem soweit funktioniert es schon.
Nur unterbrechen geht nicht, wenn ich ESC oder StrgC drücke passiert nichts, erst wenn die Datei abgearbeitet ist werden die Tastendrücke nachgeführt.
Kann ich also in Lisp Tastendrücke abfragen ohne darauf zu warten ?

MfG
GE

------------------
ACAD 2000, Map 2007, GeoCAD
wenig LTplus pur (ICAD)

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

Ex-Mitglied
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: 17. Mrz. 2009 15:17    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 Gerd_Ecke 10 Unities + Antwort hilfreich

also der 1. Teil deiner Ausführung:
Zitat:
Das Messgerät gibt über die serielle Schnittstelle je 1sek einen Zeichenstring aus der die Koordinaten und Qualität enthält. Mit Lisp sollte es wohl möglich sein Diese kontinuierlich abzufragen.
ist mir leider noch etwas myseriös, aber wenn du es sagst...
Grundsätzlich solltest du in deinen Versuchen ersteinmal alle Daten aus der Asciidatei in eine Liste einlesen.
Sind ja eh nur spieldaten - die Wirklichkeit wir sicher anders aussehen.
Dann kannst du jede Sec einen datensatz ausführen lassen. Wichtig ist dann schonmal die Datei aus der glesen wird, ist wieder geschlossen.
Nun kannst du sicherlich mit verschiedenen Tasten das Programm beenden oder unterbrechen. Siehe dir eben mal dazu die Func grread an.

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

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

Geos
Mitglied
Vermessungstechniker i.R.


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

Beiträge: 1017
Registriert: 21.09.2001

ACAD Map 2010, Win 7 Pro
eigene Lisp's<P>HW: Core i7 860, 2.8 GHz
3.3 GB, NVIDIA GeForce GTS 250

erstellt am: 17. Mrz. 2009 18:24    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 Gerd_Ecke 10 Unities + Antwort hilfreich

Das "Messgerät" ist wohl ein GPS, das die Koordinaten liefert.
Aber soweit ich weiß, kann man die Serielle nicht mit Lisp lesen (glaub nicht mal mit DosLib).
Ginge wohl nur über "Zwischenspeicher" -> Datei(en), wie Du schon angedeutet hast.
(wechselweises Lesen und Schreiben ?)
Beim Lesen:
(while (read-line Datei) ..) würde dann das (exit) überflüssig machen.
Weiters fällt mir "rekursiver Start" noch dazu ein ...

Nur so ein paar Gedankenfetzen, aber vielleicht hilfts...

------------------
Schöne Grüße
Ernst

www.geopaint.at

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

wronzky
Ehrenmitglied V.I.P. h.c.
CAD-Dienstleistungen für Architekten



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

Beiträge: 2154
Registriert: 02.05.2005

CAD:
AutoCAD 2.6 bis 2014
ADT 2005 - 2014
Arcibem
System:
Windows 2000, XP, NO VISTA
Internet-Startseite:
http://www.archi.de

erstellt am: 17. Mrz. 2009 21:19    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 Gerd_Ecke 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Geos:
Aber soweit ich weiß, kann man die Serielle nicht mit Lisp lesen

In der Tat, das geht überhaupt nicht. Ich hatte das für eine Tachymeter-Kommunikation mal so gelöst (vereinfacht):
ein externes Programm (von Lisp gestartet) liest den Datenspeicher aus und schreibt je Datensatz eine Datei (fortlaufende Nummerierung). Das Lisp-Programm liest diese Dateien dann wieder aus, verarbeitet den Inhalt und löscht sie anschließend, um nicht 100te von Dateien übrig zu behalten.

Grüsse, Henning

------------------
Henning Jesse
VoxelManufaktur
Computer-Dienstleistungen für Architekten und Ingenieure

  http://www.voxelman.de

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

Gerd_Ecke
Mitglied
Bergbauingenieur


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

Beiträge: 141
Registriert: 28.08.2002

Civil 3D 2020, GeoCAD
BricsCAD 18

erstellt am: 18. Mrz. 2009 06:31    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

Moin Moin Mitdenker,

um die Schnittstelle kümmere ich mich später. (Gab da mal 2005 einen Lösungsansatz von CAD-Hübner) Konnte diesen aber noch nicht testen und der damalige Hilfesuchende hat sich nicht wieder geäußert.

GRRead geht leider nicht da es auf eine Eingabe wartet, mein Programm muss aber weiterlaufen auch wenn kein Benutzer anwesend ist.

Habe mal den PAP skizziert :


    [Abfrage RS232 (oder Zeile aus Datei)]
                      |
    ? Hat Nutzer Eingabe getätigt ?
         |j                                     |n
Befehl abarbeiten (z.B.zoom)    |
         |                                     |
  ? Hat sich Position der Raupe geändert ?
         |j                                              |n
Darstellung der Raupe löschen          |
neue Richtung berechnen                   |
Höhendiff zum projekt berechnen         |
Neue Position darstellen                     |
         |                                               |
         -----------------------------------------------
          Schleife neu beginnen

Weitere Ideen ?

MfG
GE

------------------
ACAD 2000, Map 2007, GeoCAD
wenig LTplus pur (ICAD)

[Diese Nachricht wurde von Gerd_Ecke am 18. Mrz. 2009 editiert.]

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

Brischke
Moderator
CAD on demand GmbH




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

Beiträge: 4171
Registriert: 17.05.2001

AutoCAD 20XX, defun-tools (d-tools.eu)

erstellt am: 18. Mrz. 2009 08:17    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 Gerd_Ecke 10 Unities + Antwort hilfreich

Hallo,

jetzt mal mein Lösungsansatz, denn wie immer, ist nichts neu oder zumindest in ähnlicher Form schon einmal vorhanden gewesen.

Sicher kann das GPS-Gerät auch eine txt Datei schreiben(wurde ja schon bestätigt).
Die Lösung ist dann ein sogenannter Trigger. Dieses wäre ein externes Programm, was ein bestimmtes Verzeichnis überwacht. Sobald in diesem Verzeichnis eine Datei (bestimmten Namens) gefunden wird, wird von diesem Trigger im CAD-System ein Befehl gestartet (in diesem Fall dann eine Lisp-Routine).

Da das Tool extern ist, kann der Anwender in der Zwischenzeit im CAD-System Zoomen und Pannen, wie es ihm beliebt.

Dieses externe Programm kann sicher auch direkt auf die Serielle Schnittstelle gehen, da man hier nicht den Einschränkungen der Schnittstellen des CAD-Systems unterliegt.

Bei Fragen ...

Grüße Holger

------------------
Holger Brischke
CAD on demand GmbH
Individuelle Lösungen von Heute auf Morgen.

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

archtools
Mitglied



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

Beiträge: 823
Registriert: 09.10.2004

Entwickler für AutoCAD, BricsCAD u.a., alle Systeme

erstellt am: 18. Mrz. 2009 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 Gerd_Ecke 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Brischke:
Hallo,

jetzt mal mein Lösungsansatz, denn wie immer, ist nichts neu oder zumindest in ähnlicher Form schon einmal vorhanden gewesen.

Sicher kann das GPS-Gerät auch eine txt Datei schreiben(wurde ja schon bestätigt).
Die Lösung ist dann ein sogenannter Trigger. Dieses wäre ein externes Programm, was ein bestimmtes Verzeichnis überwacht.


Das ist dann natürlich nichts mehr, was irgend wass mit Echtzeit zu tun hat.

Wenn man sich so ein Trigger-Programm schreibt, dann ist es eine absolut simple Übung, da auch eine Abfrage der COM-Schnittstelle mit einzubauen. Und dann kann man durch das Programm auch gleich in Echtzeit irgend welche Blöcke einfügen oder nachführen.

Es geht halt nicht in LISP.

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

Brischke
Moderator
CAD on demand GmbH




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

Beiträge: 4171
Registriert: 17.05.2001

AutoCAD 20XX, defun-tools (d-tools.eu)

erstellt am: 19. Mrz. 2009 08: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 Gerd_Ecke 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von archtools:
Das ist dann natürlich nichts mehr, was irgend wass mit Echtzeit zu tun hat.

Wenn man sich so ein Trigger-Programm schreibt, dann ist es eine absolut simple Übung, da auch eine Abfrage der COM-Schnittstelle mit einzubauen. Und dann kann man durch das Programm auch gleich in Echtzeit irgend welche Blöcke einfügen oder nachführen.

Es geht halt nicht in LISP.


Hi Tom,

da hast du natürlich Recht, dass man dann auch gleich die COM-Schnittstelle abfragen kann. Echtzeit .. ja klar, das ist es nicht.
Wenn der Anwender dann aber Zoomen und Pannen will, dann muss eben auch das AutoCAD zwischendrinn mal stillstehen, damit der User dies tun kann. Aber auch dafür könnte man Lösungen finden ... und sei es dass dieses ohnehin jenseits von Lisp laufende Programm in eine 'Pause geschickt' wird.

Grüße Holger

------------------
Holger Brischke
CAD on demand GmbH
Individuelle Lösungen von Heute auf Morgen.

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

Theodor Schoenwald
Ehrenmitglied



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

Beiträge: 1672
Registriert: 16.04.2002

erstellt am: 20. Mrz. 2009 10:19    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 Gerd_Ecke 10 Unities + Antwort hilfreich

Hallo,

ICAD und VL-Befehle?

BricsCAD und ZWCAD beide ICAD-Abkömmlinge können die VL-Befehle.

Gruß
Theodor Schönwald

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

Gerd_Ecke
Mitglied
Bergbauingenieur


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

Beiträge: 141
Registriert: 28.08.2002

Civil 3D 2020, GeoCAD
BricsCAD 18

erstellt am: 24. Mrz. 2009 12: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

Zitat:
Original erstellt von Theodor Schoenwald:
Hallo,

ICAD und VL-Befehle?

BricsCAD und ZWCAD beide ICAD-Abkömmlinge können die VL-Befehle.

Gruß
Theodor Schönwald


Hallo Theodor,
Klar gibt es ICAD Versionen die dies unterstützen, aber ich muss erstmal mit den vorhandenen Lizenzen auskommen und die sind nunmal von Deinem speziellen Freund Herrn Fürst und das unterstützte 2005 noch keine VL und VBA.

Mein Problem mit der Benutzereingabe habe ich über eine Dateiabfrage gelöst.
Ich lese bei jeder Raupenbewegung eine Zeile aus einer Textdatei und wenn dort ZOOM+ steht wird gezoomt, wenn dort ENDE steht... na was wohl.
In diese Textdatei schreibe ich mit einem Programm das ich mittels MacroX erzeugt habe. (ein Formular mit 6 Buttons)
Funktioniert fast, wo ich noch Probleme habe ist das beenden der Lisproutine.
Wenn ich die Schnittstelle schließe und gleich dahinter ein Exit : (If (= BEnde "ENDE")(Progn (close ComPort)(exit)))
Dann bricht das Lisp ab und die Com-Schnittstelle bleibt geöffnet.
Das heißt die Variable ComDatei wird zwar zu NIL aber wenn ich in einer DOS-Box aufrufe 'Mode com1:' so wird mir gemeldet die Schnittstelle wird noch vom Programm benutzt. Ein Neustart der LISP startet aber die Schnittstelle nicht neu, erst wenn ich ICAD beende wird die Schnittstelle wieder freigegeben.

@GeoS @wronzky wieso kann LISP keine Daten von der Seriellen lesen ?

Ich bin jetzt so weit :
Rechner A - AutoCAD Station - Mittels LISP sende ich aus einer Koordinatendatei Zeilen zur seriellen Schnittstelle im 1sek-Takt.
Über ein Null-Modem-Kabel ist Rechner A mit meinem Laptop = Rechner B verbunden
Rechner B - ICAD "lauscht " an der COM und wertet die Datenzeilen aus, löscht das Raupensymbol vom Bildschirm, errechnet die Richtung der Raupe, setzt eine Blockreferenz auf die neuen Koordinaten und zentriert den Bildschirm neu.
===> grosses Problem, wenn keine Daten mehr kommen ist ICAD eingefroren da die Funktion (READ-CHAR ComPort) wartet bis ein Zeichen anliegt.
Ach ja, ComPort ist so vereinbahrt : (SETQ ComPort (OPEN "COM1:" "r"))

Halte Euch auf dem Laufenden wie weit ich bin, morgen hängen wir nochmal ein GPS-Gerät dran und am Donnerstag entscheidet sich wie viele 10000de Euronikas wir damit einsparen.

MfG
GE


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