Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Rund um AutoCAD
  Makro erstellen mit Schriftfeld und Objektwahl?!

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:  Makro erstellen mit Schriftfeld und Objektwahl?! (1910 mal gelesen)
kraxi
Mitglied
Brandschutz


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

Beiträge: 11
Registriert: 03.07.2015

@work:
i7-4790 | 16GB RAM | NVIDIA Quadro K620 | SSD 250GB
Win 7 | AutoCAD 2014
@home:
i5-4570 | 8GB RAM | NVIDIA GeForce GTX 770 | SSD 250GB
Win 10 | AutoCAD 2015

erstellt am: 03. Jul. 2015 09:13    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

Hey,

ich habe folgendes Problem:

Ich habe nun erst seit einem Monat den Branchenwechsel in die CAD-Technik hinter mir und möchte mir ein paar Makros erstellen, jedoch habe ich keine Ahnung davon ^^
Das Makro sollte als Raumstempel dienen, womit ich nur noch einmal den internen Punkt eines Raumes/Objekts bestimmen muss und dann automatisch per Schriftfeld die Fläche angezeigt bekomme.

Weiter als
^C^C_BOUNDARY;\;_FIELD;
komme ich nicht.

Wie kann ich die Objektwahl starten bzw das letzt gezeichnete Objekt auswählen?
kann ich vor dem Schriftfeld auch noch "Fläche:" etc. dazu schreiben?

kann man das Schriftfeld auch gleich mittig des Raumes platzieren lassen?


wenn ich nun alle räume damit ausgestattet habe, kann ich mir irgendwie davon die Summe aller Flächen anzeigen lassen?

Vielen Dank schon mal 

lg

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

runkelruebe
Moderator
Straßen- / Tiefbau




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

Beiträge: 8075
Registriert: 09.03.2006

Kinder, kauft Kämme!
Es kommen lausige Zeiten.

erstellt am: 03. Jul. 2015 09:22    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 kraxi 10 Unities + Antwort hilfreich

Herzlich willkommen im Forum 
Läuten wir also die Makro-Woche ein 

Das wird so nix, denn Du mußt Deinem Field ja das ein oder andere mitgeben und dafür reichten die Möglichkeiten eines Buttonmakros meiner Meinung nach nicht aus.

Erstell Dir sowas einmalig, kopiere es und ändere die jeweilige Zuweisung der Schriftfelder.
Beispiel: http://ww3.cad.de/foren/ubb/Forum145/HTML/002059.shtml
Oder tool 52 DT-RELINKFIELDPL von http://www.d-tools.eu/Asptest/Tools.aspx

Um an die Raumsummen zu gelangen, könntest Du Dich z.B. mit den DATENEXTRAKTionen beschäftigen.

------------------
Gruß,
runkelruebe          Herr Kann-ich-nich wohnt in der Will-ich-nich-Straße...

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

kraxi
Mitglied
Brandschutz


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

Beiträge: 11
Registriert: 03.07.2015

@work:
i7-4790 | 16GB RAM | NVIDIA Quadro K620 | SSD 250GB
Win 7 | AutoCAD 2014
@home:
i5-4570 | 8GB RAM | NVIDIA GeForce GTX 770 | SSD 250GB
Win 10 | AutoCAD 2015

erstellt am: 03. Jul. 2015 10:51    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

Danke für deine Antwort.

Ok, also mit Makros wird das nix, dass hab ich verstanden, aber den Code des 1. Links verstehe ich gar nicht.
Wo muss man den einfügen? Wie nennt sich das?

Gibt es sonst wo eine Einführung in diese Bereiche von Autocad?

Datenextraktionen kenn ich 


lg

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

runkelruebe
Moderator
Straßen- / Tiefbau




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

Beiträge: 8075
Registriert: 09.03.2006

Kinder, kauft Kämme!
Es kommen lausige Zeiten.

erstellt am: 03. Jul. 2015 11:18    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 kraxi 10 Unities + Antwort hilfreich

Wenn ich Dich an dieser Stelle mit den AutoCAD-FAQ von cad.de bekannt machen dürfte: >> klick <<

Dich betrifft für heute der Beitrag   FAQ:APPLOAD: Wie LISP Tool laden sowie FAQ: MAKRO und SKRIPT

Desweiteren faulerweise per Copy&Paste aus einem anderen Beitrag von heute:
Kennst Du schon die FILTERFUNKTION von cad.de? Oben in den Brettübersichten hast Du zwei Felder >> screenshot <<: Suche und Filter.

Weiteres zur Funktionsweise: >> Filter für Antworten <<

Weiteres zur Suchfunktion: Syntax der CAD.de Suche

Ich hoffe, damit kommst Du schon ein wenig weiter. Gleich die Warnung: Um so etwas schreiben zu können, brauchst Du mehr als ein snickers. Zum Anwenden reicht ein halbes 
Viel Erfolg 

------------------
Gruß,
runkelruebe          Herr Kann-ich-nich wohnt in der Will-ich-nich-Straße...

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

kraxi
Mitglied
Brandschutz


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

Beiträge: 11
Registriert: 03.07.2015

@work:
i7-4790 | 16GB RAM | NVIDIA Quadro K620 | SSD 250GB
Win 7 | AutoCAD 2014
@home:
i5-4570 | 8GB RAM | NVIDIA GeForce GTX 770 | SSD 250GB
Win 10 | AutoCAD 2015

erstellt am: 03. Jul. 2015 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

Super danke.
Werd die links einmal durchackern 

Es Anwenden zu können würde mir schon reichen 


lg

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

kraxi
Mitglied
Brandschutz


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

Beiträge: 11
Registriert: 03.07.2015

@work:
i7-4790 | 16GB RAM | NVIDIA Quadro K620 | SSD 250GB
Win 7 | AutoCAD 2014
@home:
i5-4570 | 8GB RAM | NVIDIA GeForce GTX 770 | SSD 250GB
Win 10 | AutoCAD 2015

erstellt am: 06. Jul. 2015 12:47    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

Hab mir nun alles durchgelesen 

Hab mir dieses Tool, was du gelinkt hast, als .lsp gespeichert und per APPLOAD geladen.
Wenn ich es im Urzustand mit der Längenermittlung lasse, den befehl "lnkfld" eingebe, zeigt es mir nur "####" an, sowie auch wenn ich es auf die Flächenberechnung umschreibe.

Wo könnte bei mir der Hund begraben sein?
Kann es an meiner ACAD-Version liegen? - Autocad 2014, die Normale.


Befehlszeile zeigt mir folgendes:

"Befehl: LNKFLD

Objekt wählen:
Select Point: #<VLA-OBJECT IAcadMText 0000000043623128>"

Der Code in der .lsp:

   
(defun c:lnkfld ()
      (setq a (car (entsel)) b (getpoint "\n Select Point: "))
      (linkedarea a b)
    )
    (vl-load-com)
    ;;get a reference to model space
    (setq *model-space*
          (vla-get-ModelSpace
            (vla-get-ActiveDocument (vlax-get-acad-object))
          )
    )
    ;;pass this function an entity and a point
    (defun LinkedArea (ent pt / obj objID ip width str)
      ;;convert the entity to an object
      (setq obj  (vlax-ename->vla-object ent)
            ;;get the object ID
            objID (vla-get-objectid obj)
            ;;convert the point
            ip    (vlax-3D-Point pt)
            ;;set the width for the MTEXT
            width 0.0
            ;;set the string - this creates the field
            str  (strcat
                    "%<\\AcObjProp.16.2 Object(%<\\_ObjId "
                    (rtos objID 2 0)
                    ">%).Area \\f \"%lu2%pr2%ps[,m²]%ct8[1e-006]\">%"
                  )
      )
      ;;Create the MTEXT entity containing the field.
      (vla-addMText *model-space* ip width str)
    )


Vielen Dank.


Kraxi
AutoCAD-Frischling

------------------
lg Kraxi

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

runkelruebe
Moderator
Straßen- / Tiefbau




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

Beiträge: 8075
Registriert: 09.03.2006

Kinder, kauft Kämme!
Es kommen lausige Zeiten.

erstellt am: 06. Jul. 2015 13:30    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 kraxi 10 Unities + Antwort hilfreich

Moin,

fogendes ist eher Raten als Wissen: Da hat sich bei 64bit imho was mit der Ermittlung der Object-ID geändert, die wird grad 'falsch' ermittelt.

Nimm mal dieses, ähnlich arbeitende: >> klick <<
Und es war auch nicht so, wie ich ursprünglich geschrieben hatte (hab das nicht nochmal getestet gehabt): Das lsp erzeugt Dir ein neues Field mit der Fläche/Länge/andereEigenschaft und verknüpft nicht ein vorhandenes mit einer anderen Polylinie neu. Dieses neu verknüpfen macht (z.B.) das DefunTool. Aber Du wolltest ja imho sowieso neue Schriftfelder erzeugen, also sollte das schon das Passende für Dich sein.

Prinzip des neuen links ist wie gesagt identisch. Auch dort bekommst Du durch Austausch des Teils .Area \\f \"%lu2%pr2%ps[,m²]%ct8[1e-006]\">%" eine Fläche mit zwei Nachkommastellen und dem Anhang "m²"

Ich hoffe, Du kommst jetzt wieder ein Stückchen weiter 

------------------
Gruß,
runkelruebe          Herr Kann-ich-nich wohnt in der Will-ich-nich-Straße...

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

kraxi
Mitglied
Brandschutz


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

Beiträge: 11
Registriert: 03.07.2015

@work:
i7-4790 | 16GB RAM | NVIDIA Quadro K620 | SSD 250GB
Win 7 | AutoCAD 2014
@home:
i5-4570 | 8GB RAM | NVIDIA GeForce GTX 770 | SSD 250GB
Win 10 | AutoCAD 2015

erstellt am: 06. Jul. 2015 13:46    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

hab den Austausch-Code auf
.Area \\f \"%lu2%pr0%ps[, m²]%ct8[1]\">%"
geändert, durch das ct8[1e-006] zeigte es mir immer 0 m² an ^^

Vielen Dank nochmal für deine Hilfe.

lg

------------------
lg Kraxi

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