| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| PNY WIRD VON NVIDIA ZUM HÄNDLER DES JAHRES GEWÄHLT, eine Pressemitteilung
|
Autor
|
Thema: wer kann mir helfen (2325 mal gelesen)
|
Petra_Sp Mitglied
Beiträge: 130 Registriert: 28.10.2003 AutoCad 2004 Deutsch AutoCad 2004 Englisch Jetzt auch AutoCad 2006 Deutsch
|
erstellt am: 31. Okt. 2003 11:35 <-- editieren / zitieren --> Unities abgeben:
Hallo Mitglieder!! Ich bin noch Anfänger im Lisp und hoffe es kann mir jemand bei diesem Programm helfen. Irgendwie funktioniert es nicht, ich möchte einen Block einfügen mit einem Atriput (Höhenkote). Der Benutzer soll Maßstab, Ausgangspunkt mit einer Höhe angeben, danach noch weitere Bezugshöhen die automatisch danch den Block einfügen mit den richtigen Höhen. (Weggerechnet vom Ausgangspunkt entweder addiert oder subrtahiert werden). Was ich noch dazuschreiben möchte ist, das er sich auch noch für das nächste mal den Bezugspunkt und den Maßstab merken soll falls nichts anderes eingegeben wird!! Hier das was ich im Moment habe: (defun c:hk ( / mxy A_pkt h_ref h_diff E_skal p1 b_n b_fak b_dreh) (setq b_n "Höhe_1_10" ; Blockname fuer Hoehenkote, 1 Attribut! b_fak 0.1 ; Faktor zum Einfuegen b_dreh 0.0 ; Drehwinkel zum Einfuegen ); setq (cond ((tblsearch "BLOCK" b_n) (setq mxy (getreal "\nDen Maßstab bitte 1:?")) (setq A_pkt (getpoint "Ausgangspunkt für Höhe? ")) (setq h_ref (getreal "Höhe für diesen Ausgangspunkt? ")) (setq h_diff (- h_ref (cadr A_pkt) )) (setq E_skal (* b_fak (fix mxy) )) (while (setq p1 (getpoint "\nWo hätten's denn gern a Höhenkoterl? ")) (cond (p1 (command "_INSERT" b_n p1 E-skal E-skal b_dreh (rtos (+ h_diff (cadr p1))) ) ); p1 ); cond ); while ); (T (alert (strcat "HÖHENKOTEN-BLOCK *** " b_n " *** NICHT GEFUNDEN!"))) ); cond 'danke ); c:hk Ich wäre euch dankbar wenn ihr mir helfen könntet!! Danke mfg Petra ------------------ LG Petra Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Petra_Sp Mitglied
Beiträge: 130 Registriert: 28.10.2003 AutoCad 2004 Deutsch AutoCad 2004 Englisch Jetzt auch AutoCad 2006 Deutsch
|
erstellt am: 31. Okt. 2003 11:38 <-- editieren / zitieren --> Unities abgeben:
|
CADwiesel Moderator CAD4FM UG
Beiträge: 1989 Registriert: 05.09.2000 AutoCAD, Bricscad Wir machen das Mögliche unmöglich
|
erstellt am: 31. Okt. 2003 12:48 <-- editieren / zitieren --> Unities abgeben: Nur für Petra_Sp
|
Geos Mitglied Vermessungstechniker i.R.
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: 03. Nov. 2003 08:51 <-- editieren / zitieren --> Unities abgeben: Nur für Petra_Sp
Griaß Di (setq h_diff (- h_ref (cadr A_pkt) )) ???? mit (cadr A_pkt) kriegst Du den Hochwert !!! (also die X-Koordinate, falls Du in der Vermessung bist) - nicht die Höhe. Pfiat Di
------------------ Gruß, Ernst Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Petra_Sp Mitglied
Beiträge: 130 Registriert: 28.10.2003 AutoCad 2004 Deutsch AutoCad 2004 Englisch Jetzt auch AutoCad 2006 Deutsch
|
erstellt am: 03. Nov. 2003 13:23 <-- editieren / zitieren --> Unities abgeben:
Ich dachte das wäre "car" was die x-Koordinate bringt und "cadr" bringt die y-Koordinate!!! Danke an CADwiesel für den Schreibfehler. Es funktioniert jetzt, aber wie kann ich ihm sagen das er keine Ganzzahlen sondern Zahlen mit 2 Kommastellen dahinter bringen soll. z.b.: 10.00 statt 10 oder 22.00 statt nur 22 denn 22.01 schreibt er mit!! 2. Wie kann ich ihm sagen das er sich bei nächstenmal aufrufen des Programmes den Ausganswert merken soll und gleich weitere Höhenkoten von diesem Bezugspunkt aus rechnen soll. es kann mir jemand weiter helfen. ------------------ LG Petra Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Geos Mitglied Vermessungstechniker i.R.
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: 04. Nov. 2003 07:59 <-- editieren / zitieren --> Unities abgeben: Nur für Petra_Sp
Servus Du bist also nicht in der Vermessung tätig, was ich auf Grund von "Höhenkoten" geschlossen habe. Beim geodätischen Koord.System gilt Y=Rechtswert, X=Hochwert. Math. Koord.System: X=rechts Y=hoch. Zum Runden (bzw. formatieren der Ausgabe) kannst Du (rtos) verwenden. Ausgangswert merken - Denkanstoss: Wenn #wert vorhanden und #eingabe nil, dann verwende #wert weiter. Wenn #eingabe, dann #wert = #eingabe - so ähnlich könntest Du ansetzen. gruß, Ernst ------------------ Gruß, Ernst Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Brischke Moderator CAD on demand GmbH
Beiträge: 4187 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools (d-tools.eu)
|
erstellt am: 04. Nov. 2003 09:17 <-- editieren / zitieren --> Unities abgeben: Nur für Petra_Sp
Hallo Petra, zu 2) Schau mal auf dieser Seite - http://www.autodesk.de/adsk/servlet/item?siteID=403786&id=3697891&linkID=2679558 und im Code selbst die Variablen *breite* oder *hohe* an. Diese sind global, und bewirken, dass bei erneutem Programmaufruf die letzten Werte wieder gesetzt werden. Wenn dir das zu fummelig ist, dann warte bis morgen, dann gibt's sowohl die Lisp und auch den Text auf meiner Seite. Bei Fragen ... Grüße Holger ------------------ Holger Brischke (defun - Lisp over night! AutoLISP-Programmierung für AutoCAD NEU: AutoLISP- Projektschulung NEU: Praxisorientierte Schulungen und Workshops durch die bekannten CAD.de Moderatoren AutoCAD, AutoCAD LT, AutoCAD Mechanical, Mechanical Desktop, Architectural Desktop Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Petra_Sp Mitglied
Beiträge: 130 Registriert: 28.10.2003 AutoCad 2004 Deutsch AutoCad 2004 Englisch Jetzt auch AutoCad 2006 Deutsch
|
erstellt am: 11. Nov. 2003 12:14 <-- editieren / zitieren --> Unities abgeben:
1.) Hallo Holger Danke für den Tipp, aber wo find ich das auf deiner Homepage? 2.) Hallo Ernst Auch dir vielen Dank für deinen Denkanstoss! Ideen hätte ich ja, aber mir fehlt es leider an der korrekten Umsetzung. Vielleicht kann mir ja jemand weiterhelfen. Das wäre ganz auper von Euch Danke mfg Petra ------------------ LG Petra Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
otterloh Mitglied
Beiträge: 188 Registriert: 27.06.2001 AutoCAD 2008, 2010 Vista, Win7
|
erstellt am: 11. Nov. 2003 13:33 <-- editieren / zitieren --> Unities abgeben: Nur für Petra_Sp
|
Brischke Moderator CAD on demand GmbH
Beiträge: 4187 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools (d-tools.eu)
|
erstellt am: 12. Nov. 2003 09:32 <-- editieren / zitieren --> Unities abgeben: Nur für Petra_Sp
|