|
Lisp : Wieso 3D-Punkt?
joern bosse am 08.03.2011 um 07:38 Uhr (0)
Hallo Gerd,ich glaube nicht, daß es eine Alternative ist, den Objektfang auszuschalten, wie soll man dann noch exakt zeichnen.Hier noch ein Lisp, das einen Kreis über 3 Punkte erzeugt, wobei die Höhe des Kreises der Höhe des ersten gepickten Punktes entspricht.Weil das Lisp nicht mit dem Command-Aufruf "_Circle" arbeitet kann das Problem mit diesem Command-Aufruf unter BRICSCAD umgangen werden.Code:(defun C:C3P ( / PKT1 PKT2 PKT3 obj1 obj23 obj3) (if (and (setq pkt1 (getpoint "
Ersten Punkt eingeben:")) ...
|
| In das Form Lisp wechseln |
|
Lisp : Abbruch bei (Command _trim....)
kist am 24.01.2012 um 17:23 Uhr (0)
Code: (Command "_polygon" "6" p "_I" (polar p ri 0.30)) (setq losch (entlast)) (Command "_Line" p p2 "") (Command "_Trim" losch "" p "" "_Erase" losch "")P2 ist ein Punkt ausserhalb des 6-Eckesmanchmal funktionert die Geschichte und manchmal gibt es einen Abbruchvor (Command "_Trim" ......)mit der Meldung"Ungültige Fensterspezifikation."Es ist für mich aber nicht fest zu machen unter welchen Umständen der Abbruch kommt.------------------schöne Grüsse
|
| In das Form Lisp wechseln |
|
Lisp : Hilfe bei lisp! Block Attrtibute rotation und position!
joern bosse am 19.02.2013 um 11:43 Uhr (0)
Hallo Dirk,dann Addiere doch einfach die Winkeldifferenz auf den Gruppencode 50 im Attribut.Den Einfügepunkt berechnest Du polar über den Winkel und die Strecke Block-Att. Die Drehung im Attribut wie folgt (zumindestens ungefähr, bin gerade knapp in der Zeit):(+ (cdr(assoc 50 AttEntListNeu)) (-(cdr(assoc 50 AttEntListAlt)) (cdr(assoc 50 AttEntListNeu)))------------------viele GrüßeJörnhttp://www.bosse-engineering.comKoordinatenausgabe Youtube
|
| In das Form Lisp wechseln |
|
Lisp : Trennen von Linien
Amadeo52 am 14.06.2005 um 04:18 Uhr (0)
Hallo mal,ich habe diese kleine Lisproutine noch irgendwo bei mir auf dem Rechner gefunden um sich kreuzende Linie in einem Schema zu trennen. Die obere Line ist durchgehend und die untere Linie soll mit einem vorgegeben Abstand getrennt werden. Soweit funktioniert das ganz nett, nur lästig ist das ich jedesmal den Befehl neu aufrufen muss, auch wenn ich 250 mal das gleiche Nacheinander mache und das ich jedesmal den Abstand eingeben muss. Das wäre angenehmer, wenn ich den Abstand nur am Anfang eingebe und ...
|
| In das Form Lisp wechseln |
|
AutoLisp : Messen / Teilen mit Punktnummerierung - Intelligenter Linientyp
m-troeger am 01.06.2004 um 17:44 Uhr (0)
Hi Marc, schönes Teil! hier noch 2 kleine Helferlein 1. Tool zoomt auf die Station (Stationswert eingeben) einer PL, Bogen, Linie und markiert sie mit einem Pfeil Code: (prompt Start mit LS_STAT ) (defun C:LS_STAT (/ ACHSE_PL STRECKE_PL STAT_PKT TEMP_PKT0 TEMP_PKT1 TEMP_PKT2 TEMP_PKT3 TEMP_INFO TEMP_INFO1) (vl-load-com) (setq ACHSE_PL (car (entsel
Profillinie wählen: ))) (setq STRECKE_PL (getreal
Station eingeben : )) (setq STAT_PKT (VLAX-CURVE-GETPOINTATDIST ...
|
| In das Form AutoLisp wechseln |
|
Lisp : Line mit festem Winkel -> AutoLisp
andi2050 am 28.11.2007 um 20:27 Uhr (0)
Eine andere Idee:Eine Linie im gewünschen Winkel malen mit Länge 1.0Dann die Line Skalieren. Der Skalierfktor entspricht dann der Länge.z.B.Code:(defun c:test (/ pt ang) (setvar "cmdecho" 0) (setq pt (getpoint "
Startpunkt: ")) (setq ang (getangle pt "
Winkel: ")) (command "_LINE" "_non" pt (polar pt ang 1.0) "") (princ "
Länge: ") (command "_SCALE" "_LAST" "" "_non" pt pause))GrüßeAndi
|
| In das Form Lisp wechseln |
|
AutoLisp : Polylinien zur Gesamtlänge aufsummieren
anno45 am 09.09.2003 um 18:25 Uhr (0)
Hallo kann mir jemand helfen, das Programm schreibt keine daten weg. ;** Hauptprogramm!!! ;*************************************************************************** ******************************************************* (defun c:gl (/ as elemli plangli z f) ;** Achtung mit diesem Befehl prüfen, um was für eine Geometrie es sich hier handelt!! ***************************** ;;;;(cdr(assoc 0(entget(setq curve-object(car(nentsel)))))) ;** zum Beispiel LWPOLYLINE / LINIE / usw.!!!!!! ;**** ...
|
| In das Form AutoLisp wechseln |
|
Lisp : Line mit festem Winkel -> AutoLisp
wronzky am 27.11.2007 um 20:55 Uhr (0)
Hi,also ich gehe davon aus, dass Du in pt1 bereits einen Punkt gespeichert hast.Dann könntest Du es so machen:Code:(command "_.line" pt1 (polar pt1 (/ pi 4) (getdist pt1 "Abstand:")) "")Wenn Du lieber einen Text an den Command-befehl übergibst, dann muss der vollständig sein, also so etwa:Code:(command "_.line" pt1 (strcat "@" (rtos (getreal "Abstand:") 2 8) "45") "")Grüsse, Henning------------------VoxelManufaktur Computer-Dienstleistungen für Architekten und Ingenieure http://www.voxelman.de
|
| In das Form Lisp wechseln |
|
Lisp : Abbruch bei (Command _trim....)
cadffm am 25.01.2012 um 10:08 Uhr (0)
Code:(defun c:TEST () (Command "_polygon" "6" p "_I" (polar p ri 0.30)) (setq losch (entlast)) (Command "_Line" p p2 "") (Command "_Trim" losch "" p "" "_Erase" losch ""))Bitte vervollständige das mal um die Definition von p2 und von ri, zudem wüßte ichgerne was gestutzt werden soll, die hier erzeugte Linie oder eine andere ?Sieht für mich derzeit etwas überflüssig aus das ganze Polygon erstellen, daherbeschreibe es mir doch etwas und ergänze den Code.------------------CAD.de System-Angaben - CAD on deman ...
|
| In das Form Lisp wechseln |
|
AutoLisp : Obejkte auf Layer legen
gmk am 01.10.2003 um 16:13 Uhr (0)
funzt bei mir 1a! Befehl: TEST Bauabschnitt: 1 Start Radialachse (Zähler): 1 Start Ringachse (konstant): 1 Ttextabstand: 1.5 schau mal im textstil nach ob da für höhe 0 drin steht. wenn ja ändern auf das was du bei textabstand eintippst. ciao georg kleiner nachtrag: nehme an, daß das umstellen der layer nur dann funkt wenn du _text ganz beendest (am ende noch ein ). daher mein umweg über polar für den nächsten einfügepunkt. (_layer und setvar sind nicht transparent!) [Diese Nachricht wurde von gmk ...
|
| In das Form AutoLisp wechseln |
|
AutoLisp : Abstand mit entsel die zweite
gmk am 22.06.2004 um 09:38 Uhr (0)
-angle berechnet den richtungswinkel der ersten gerade -richt1 + pi/2 dreht den winkel um 100gon -polar ergibt einen punkt senkrecht zur ersten gerade im anfangspunkt der ersten gerade -inters berechnet den schnittpunkt der senkrechten und der zweiten gerade -distance berechnet den abstand schnittpunkt - anfangspunkt (=abstand der geraden) ich würde an deiner stelle aber, egal welchen code du verwendest, erst mal prüfen ob die geraden überhaupt parallel sind (equal). ciao georg
|
| In das Form AutoLisp wechseln |
|
AutoLisp : Abstand
Schachinger am 07.09.2004 um 16:22 Uhr (0)
DIMEXO bestimmt wo der anfang der hilfslinie ist. das hat aber nichts mit der position der richtigen bemaßungslinie und des textes zu tun! zeichne mal eine linie und dann: Code: (setq pt1 (getpoint 1ter punkt: )) (setq pt2 (getpoint 2ter punkt: )) (setq osmode_save (getvar osmode )) (setvar osmode 0) (setq pt3 (polar pt1 (+ (angle pt1 pt2) (/ PI 2)) 10.0)) (command bemlinear pt1 pt2 pt3 ) (setvar osmode osmode_save) dann kommt bei mir das raus was du auf dem bild siehst! das müsste dir ...
|
| In das Form AutoLisp wechseln |
|
Lisp : Boegen in Polylinien > 180° teilen
Theodor Schoenwald am 09.08.2012 um 01:17 Uhr (0)
Hallo Jochen,da ich nur Bögen teilen muss, bei denen der Winkel 180° ist, konnte ich alles sehr vereinfachen.Es sieht jetzt so aus:;;------------------------------(defun C:A2 (/ BO) (setq BO (car (entsel "
Zeige Bogen: "))) (command "_point" (BO_MP BO)); das ist nur ein Kontrollpunkt)(defun BO_MP (B / SS RA CP SP AW EW SW PT) (setq SS (entget B)) (setq RA (cdr (assoc 40 SS)) CP (cdr (assoc 10 SS)) AW (cdr (assoc 50 SS)) EW (cdr (assoc 51 SS)) ) (if ( EW AW) (setq EW (+ (* 2 pi) EW)) ) (if ( (- EW ...
|
| In das Form Lisp wechseln |