|
Lisp : alles klar mit AutoCAD 2011?
Dorfy am 15.07.2010 um 08:56 Uhr (0)
[Edit: auch wenn es nicht ganz zur Überschrift passt ]die dcl-Variante sieht gut aus und man braucht keine andere Umgebung (mein Favorit)Die Expresstools bringen auch was mithier ein Bsphier noch was zum Thema mit VBA oder doslibmit .net findet man sicher auch noch wasauch interessant [Edit: da war Jörn schneller ]------------------Mfg Heiko Elefantenjagd in Afrika "... LISP-Programmierer bauen einen Irrgarten aus Klammern und hoffen, dass sich der Elefant darin verirrt..."[Diese Nachricht wurde von Dor ...
|
| In das Form Lisp wechseln |
|
Lisp : Probleme mit _Trim
Dorfy am 24.03.2010 um 10:40 Uhr (0)
Zitat:Original erstellt von GG-GREGOR:...leider bleiben immer einige linien stehn ? kennt einer eine saubere lösung ?Hi, ich weiß zwar nicht wie die Linien und der Quader genau aussehen, wie oft der Quader von der Linie geschnitten wird (1x oder 2x ...) aber hier könnte das Problem schon liegen.Händisch mit Zaun nachvollziehbar - wird die Linie an einem Ende getrimmt das andere bleibt unberücksichtigt - probier mal zwei oder mehr Durchläufe.------------------Mfg HeikoElefantenjagd in Afrika "... LISP-Prog ...
|
| In das Form Lisp wechseln |
|
Rund um AutoCAD : Pickpunkt bei Mittelpunkt von Polylinie anzeigen
Dorfy am 20.05.2011 um 07:37 Uhr (0)
auch die geschlossene hat einen Anfangs- und einen Endpunkt Edit: die Auflistung der Stützpunkte beginnt und endet mit einer Koordinate (muss nicht die selbe sein, sagt der Buschfunk) und gc 70/Eigenschaft closed ist gesetzt...Wenn man zeichnet,fängt man auch an einem Punkt an ... ------------------Mfg Heiko Elefantenjagd in Afrika "... LISP-Programmierer bauen einen Irrgarten aus Klammern und hoffen, dass sich der Elefant darin verirrt..."[Diese Nachricht wurde von Dorfy am 20. Mai. 2011 editiert.][ ...
|
| In das Form Rund um AutoCAD wechseln |
|
Lisp : Papierformate des Druckertreibers abfragen
Dorfy am 28.07.2010 um 12:06 Uhr (0)
Hi,die Eigenschaften zeigen auf Layout und/oder PlotConfiguration...na was wird es sein (showDeviceProp(VLA-GET-ACTIVELAYOUT (VLA-GET-ACTIVEDOCUMENT (VLAX-GET-ACAD-OBJECT))))P.S.: copy&past erzeugt auch mal Fehler - plotoriginEdit:(vlax-for LAYOUT (vla-get-layouts (vla-get-ActiveDocument (vlax-get-acad-object) )) (showDeviceProp LAYOUT))Hatten wir doch erst ------------------Mfg Heiko Elefantenjagd in Afrika "... LISP-Programmierer bauen einen Irrgarten aus Klammern und hoffen, dass sich ...
|
| In das Form Lisp wechseln |
|
Rund um AutoCAD : Platzhalter in Suchen und Ersetzen
Dorfy am 18.03.2010 um 20:18 Uhr (0)
Zitat:Original erstellt von walter.f:Leider brauche ich mich jetzt nicht mehr selbst um eine Programmierung zu kümmern, das Ändern mit entmode hatte ich schon hinbekommen für einzeln anzupickende Texte... Das wäre die Gelegenheit gewesen, mal wieder was dazuzulernen...Hi,schön wenn es läuft das Fehlerhandling /ein paar Abfragen fehlen noch, du kannst dich ruhig dran versuchen...und MTexte sind mit Vorsicht zu behandeln, da gibt es noch Besonderheit die derzeit nicht berücksichtigt sind.------------------ ...
|
| In das Form Rund um AutoCAD wechseln |
|
Lisp : Texthintergrund
Dorfy am 02.12.2010 um 12:40 Uhr (0)
Zitat:Original erstellt von Bernd P:ServusWie müsste den der Befehl aussehen wenn er auf das/die markierten Objekte angewendet werden soll."(vla-put-backgroundfill (vlax-ename-vla-object (car(entsel))) 0)"... alle auf dem Weg zur Messe im Schnee stecken genlieben ;-)ungetestet(if (ssget((0 . "*TEXT"))) (vlax-for obj (vla-get-ActiveSelectionSet ActDoc) (if (= (vla-get-ObjectName obj) "AcDbText") (vla-put-backgroundfill obj 0)... Klammern zu...oder ne "normale" Schleife die die Objekte durch ...
|
| In das Form Lisp wechseln |
|
Lisp : Texte einfügen
Dorfy am 20.05.2011 um 08:37 Uhr (0)
Edit: du hast versucht ein vla-objekt zu vla-objekt zuwandeln - da steigt er sicherlich aus...das wird teuer... grinsCode: (vlax-for x (setq #SS (vla-get-activeselectionset *AcadDoc*)) (cond ((eq (vla-get-objectname x) "AcDbArc") (setq #Len (+ #Len (vla-get-ArcLength x))) (command "text" (vlax-curve-getStartPoint x) "0.375" "" (vla-get-ArcLength x)) ) ((vl-position (vla-get-objectname x) ("AcDbLine" "AcDbPolyline")) (setq #Len (+ #Len (vl ...
|
| In das Form Lisp wechseln |
|
Rund um AutoCAD : Attribute in Blöcken automatisch nummerieren (+1)
Dorfy am 04.08.2011 um 13:53 Uhr (0)
du musst dich nur durch die Entityliste hangeln und den gc10 abfragen und deinewasauchimmer absetzen/machen/hochzählen...Code:(defun vertxt (ent / entlst points) (setq entlst (entget ent) points () ) (if (= (cdr (assoc 0 entlst)) "LWPOLYLINE") (foreach gcpair entlst (cond ((= (car gcpair) 10) (setq points (cons (cdr gcpair) points))) (t nil) ) ) ) points);Aufruf mit (vertxt (car(entsel)))Edit: Rückgabewert sollten die Stützpunkte sein, alle in einer Liste - ohne gewähr --------------- ...
|
| In das Form Rund um AutoCAD wechseln |
|
Lisp : textfield in attribut
Dorfy am 04.02.2010 um 06:54 Uhr (0)
Zitat:Original erstellt von cadplayer:Die Funktion "lnkfld" geht bestens, um ein mtext-objekt zu bedienenIch benötige gleiche Funktion, um ein Attribut in einem Block zu bedienen.Hi,cadffm fragte bereits wie dein Block eingefügt wird bzw ob er schon an Ort und Stelle liegt?! Hast du die Zeilen die ich oben gebracht habe mal in den Code eingebaut und probiert?Ach, und die Flächengröße wird "vom Feld ermittelt" (...area...), alternativ siehe oben gebrachte Zeilen, hinter tag1... So, nu aber mal die Fragen ...
|
| In das Form Lisp wechseln |
|
Lisp : AutoLisp-Funktion in DWG-Datei integrieren
Dorfy am 20.07.2010 um 12:22 Uhr (0)
@reltro ob das was wird...vllt solltest du dir die Grundlagen erstmal anschauen .hier mal ein kleines Beispiel - (ausführen in leerer Zeichnung)Code:(defun c:test1 (/) (entmake (list (0 . "MTEXT") (100 . "AcDbEntity") (100 . "AcDbMText") (10 0.0 0.0 0.0) (1 . "(defun c:test2 () (alert "HALLO"))")) ) ;(princ (cdr (assoc 1 (entget (car(entsel)))))) (princ (cdr (assoc 1 (entget (entlast))))) (eval(read(cdr (assoc 1 (entget (entlast)))))) (princ))erstmal test2 starten -- unbekanter Befehldann test1 st ...
|
| In das Form Lisp wechseln |
|
Rund um AutoCAD : mline
Dorfy am 01.03.2010 um 17:52 Uhr (0)
ungetestet zum Feierabend(defun c:mll (/ Totlen n z ml vertlist e1 pt1 pt2 vertdist n) (setq Totlen 0 z -1 ml (ssget ((0 . "MLINE"))) ) (if ml (while (setq e1 (ssname ml (setq z (1+ z)))) ;(setq e1 (car (entsel "
Select MLINE: "))) (setq VertList (get_mline_cor (entget e1)) n 0 ) (repeat (- (length VertList) 1) (setq Pt1 (nth n Vertlist) Pt2 (nth (+ n 1) Vertlist) VertDist (distance Pt1 Pt2) Totlen (+ TotLen VertDist) n (1+ n) ) ) ) ) (princ (strcat "
Length of M ...
|
| In das Form Rund um AutoCAD wechseln |
|
Lisp : Texte einfügen
Dorfy am 19.05.2011 um 08:31 Uhr (0)
#ss ist bei dir ein selection setvlax-for x ist die Schleife, x ist dein vla-objectEDIT: x ist ein bzw. sind die Objekte des selection sets, welche nacheinander einzeln angesprochen werden...wenn du mit den gc arbeiten möchtest brauchst du das "klassische" Objekt, welches du mit (vlax-vla-object-ename x) innerhalb der Schleife erhältswenn du dies hast, kannst du es weiter verwurschten...nun kannst du dir überlegen, wo innerhalb der vlax-for-schleife du es einbaust ggf in der cond-schleife innerhalb der vla ...
|
| In das Form Lisp wechseln |
|
Lisp : mittels Lisp erzeugte Gruppe erscheint nicht im Gruppenmanager
Dorfy am 19.07.2007 um 09:04 Uhr (0)
Hallo,(defun C:MG (/ GNAME SGET) (TOGGLE-GROUPSELECT t) ;_ Sicherstellen, dass Gruppenwahl möglich ist (princ "
Zu gruppierende Objekte wählen:") (setq SGET (ssget) GNAME (menucmd "M=$(edtime,$(getvar,date),DD-MONTH-YYYY-HH-MM-SS)" ;_ erzeuge Timestamp-Gruppen-Namen ) ;_ end menucmd ) ;_ end setq (if SGET (progn (command "_.-group" "_c" GNAME "Automatisch erstellte Gruppe" SGET "" ) ;_ end of command ;(sssetfirst NIL SGET);hervorheben (princ "Gruppe ...
|
| In das Form Lisp wechseln |