|
Lisp : Linien über Schnittstelle einlesen
alfred neswadba am 24.08.2009 um 15:13 Uhr (0)
Hi Gregor, Zitat:Bandbreite geht von Dreiecksvernetzung, 3D-Volumenkörper bis einfache Linien und Texte....dann ist Map auch gleich wieder zu vergessen, denn mittels Map kann man GIS-Daten speichern/abfragen, also Punkte/Linien/Polygone (und damit Objekte, aus denen ein Punkt, ein Linienzug oder Flächen ableitbar sind, also z.B. Texte oder Blockreferenzen für Punkt, Polylinien für Linienzüge, geschlossene Polylinien sowie MPolygone für Flächen).Und mit diesen hab ich Erfahrung (aber nix LISP ).Für das Spe ...
|
In das Form Lisp wechseln |
|
Lisp : Polylinie / entmake / entlast
Dorfy am 25.08.2009 um 10:36 Uhr (0)
Hi Bernd,schau mal hier und in der Hilfe ist entmake auch recht gut erklärt.Edit: entget liefert dir "zuviel" (Objektname...) schau dir mal deine Liste an und subst oder vla-copy... und vla-put..------------------Mfg HeikoElefantenjagd in Afrika "... LISP-Programmierer bauen einen Irrgarten aus Klammern und hoffen, dass sich der Elefant darin verirrt..." (www.uni-leipzig.de/~rotheh/elefant.htm)[Diese Nachricht wurde von Dorfy am 25. Aug. 2009 editiert.]
|
In das Form Lisp wechseln |
|
Lisp : Polylinie / entmake / entlast
Dorfy am 25.08.2009 um 12:43 Uhr (0)
hi,na dann noch ne zeile in vl(vla-put-layer (car(vlax-invoke (vla-get-Activedocument (vlax-get-Acad-Object)) CopyObjects (list (vlax-ename-vla-object (car (entsel)))) )) "Neuer_Layer")------------------Mfg HeikoElefantenjagd in Afrika "... LISP-Programmierer bauen einen Irrgarten aus Klammern und hoffen, dass sich der Elefant darin verirrt..." (www.uni-leipzig.de/~rotheh/elefant.htm)
|
In das Form Lisp wechseln |
|
Lisp : schriftfelder via lisp (ac2005)
CADmium am 25.08.2009 um 12:39 Uhr (0)
Zitat:Original erstellt von marc.scherer:Code:(defun -VLA-OBJECT (ENAME /) (cond ((= (type ENAME) ENAME) (vlax-ename-vla-object ENAME)) ((= (type ENAME) VLA-OBJECT) ENAME) (t NIL) ))was soll eigentlich das (t NIL) ??? ------------------ - Thomas -"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."
|
In das Form Lisp wechseln |
|
Lisp : schriftfelder via lisp (ac2005)
cadplayer am 26.08.2009 um 08:06 Uhr (0)
Mein Ansatz zum Ausrichten von Text an Linie:1) wie schaffe ich es, dass es den Winkelwert in riwi auf den aws-text überträgt?2) wie kann ich mtext auswählen? (defun c:rt () (SETQ wahl (ENTSEL "select line: ") element (ENTGET (CAR wahl)) anfp (CDR(ASSOC 10 element)) endp (CDR(ASSOC 11 element)) riwi (atof (angtos (ANGLE anfp endp) 2 10)) ) ; (if (setq obj (entsel "select text: ")) (progn (setq objname (car obj)) (command "_change" objname "" "" "" riwi) ; rotate text ) ) )Gruss Dirk
|
In das Form Lisp wechseln |
|
Lisp : schriftfelder via lisp (ac2005)
cadplayer am 26.08.2009 um 09:06 Uhr (0)
@Dorfyokay hast recht, mein Gedanke ist: in die Routine noch eine Verfeinerung vorzunehmen, d.h. den generierten mtext an der gewählten Linie auszurichten. Meine Schwierigkeit bestehen darin, erstmal eine Rotation hinzubekommen. Sicher geht torient einwandfrei, aber das einzubauen fände ich Quatsch, weil ich dann nochmal die Ausrichtung manuell wählen müsste oder irre ich mich da?D
|
In das Form Lisp wechseln |
|
Lisp : schriftfelder via lisp (ac2005)
Dorfy am 26.08.2009 um 10:27 Uhr (0)
Hi Dirk,(vla-addMText *model-space* ip width str);liefert dir den text(vla-get-angle (vlax-ename-vla-object (car (entsel)))));liefert dir den winkel einer linie (Bögen PL sind komplizierter)(vla-put-rotation text winkel);text drehenDas Zusammenbau/Anpassen bekommst du sicher auch selbst hin------------------Mfg HeikoElefantenjagd in Afrika "... LISP-Programmierer bauen einen Irrgarten aus Klammern und hoffen, dass sich der Elefant darin verirrt..." (www.uni-leipzig.de/~rotheh/elefant.htm)
|
In das Form Lisp wechseln |
|
Lisp : Boesch.lisp - Objekt schneidet keine Kante
Brischke am 26.08.2009 um 11:16 Uhr (0)
Hallo Sandra,hast du dich schon mal direkt an Cadwiesel gewandt? Das verspricht sicher mehr Erfolg, die ich z.B. die Routine nicht kenne.Wenn du ihm mailst, schick gleiche eine bsp-Zeichnung mit, dann ist die Ursachenforschung deutlich einfacher.Grüße Holger------------------Holger BrischkeCAD on demand GmbHIndividuelle Lösungen von Heute auf Morgen.
|
In das Form Lisp wechseln |
|
Lisp : schriftfelder via lisp (ac2005)
marc.scherer am 26.08.2009 um 11:17 Uhr (0)
Zitat:Original erstellt von Dorfy:;liefert dir den winkel einer linie (Bögen PL sind komplizierter)Da spielt aber die Laufrichtung der Linie eine erheblich Rolle ob der Text "auf dem Kopf steht".Zu dem Zweck jage ich Winkelwerte immer durch folgende Sub-Routine:Code:;;; *** Sub-Pgm *** Sub-Pgm *** Sub-Pgm *** Sub-Pgm *** Sub-Pgm *** Sub-Pgm ***;;; Unterprogramm zur Winkelkorrektur.;;; "Normalisiert" einen Winkel so, dass er nicht "auf dem Kopf" steht!(defun winkel-korrektur (Eingangswinkel /) (if (and (= ...
|
In das Form Lisp wechseln |
|
Lisp : schriftfelder via lisp (ac2005)
marc.scherer am 26.08.2009 um 11:50 Uhr (0)
Zitat:Original erstellt von cadplayer:2) wie kann ich mtext auswählen? Am besten indem Du in der Funktion die den MText erzeugt (= LINKEDLENGTH) weiteres Handling für dieses Objekt einbaust:Code:;;pass this function an entity and a point(defun LINKEDLENGTH (ENT PT / OBJ OBJID IP WIDTH STR STRPROPERTY OBJMTEXT)[...] ;;Create the MTEXT entity containing the field. (setq OBJMTEXT (vla-addmtext (vla-get-modelspace (vla-get-activedocument (vlax-get-acad-object)) ) IP WIDTH STR ) ) ;; Ab hi ...
|
In das Form Lisp wechseln |
|
Lisp : schriftfelder via lisp (ac2005)
marc.scherer am 25.08.2009 um 12:43 Uhr (0)
Zitat:Original erstellt von CADmium: was soll eigentlich das (t NIL) ???Stilblüte ;-), Altlast.------------------Ciao,Marc
|
In das Form Lisp wechseln |
|
Lisp : schriftfelder via lisp (ac2005)
cadplayer am 26.08.2009 um 15:10 Uhr (0)
Jungs und Mädels!Ihr habt mir genügend Stoff gegeben, jetzt hoffe ich´s zu backen.Dirk
|
In das Form Lisp wechseln |
|
Lisp : Start-/Endpunkt Polylinie
rem2k8 am 17.03.2011 um 13:27 Uhr (0)
Hallo Lisp-ProfisBin gerade dabei, ein Makro zum zeichnen von Blechen im Querschnitt zu proggen.Nach Aufruf des Makros zeichne Ich einen Polylinienzug - gebe eine Versetzrichtung an und versetze die Polylinie um die vorher definierte Blechstärke.Nun möchte Ich die jeweiligen Start -und Endpunkte miteinander verbinden.Wie bekomme Ich nun Start- und Endpunkt bei der durch versetzen gezeichneten Polylinie?Bin hier im Moment komplett auf dem Holzweg.- Mario -
|
In das Form Lisp wechseln |