Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  AutoCAD VBA
  InsertionPoint Block auslesen

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
  
Von Digital Twins bis Hochleistungs-Computing: PNY präsentiert seine Zukunftstechnologien für die Industrie von morgen, eine Pressemitteilung
Autor Thema:  InsertionPoint Block auslesen (1386 mal gelesen)
Willynchen_neu
Mitglied



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

Beiträge: 24
Registriert: 07.11.2005

erstellt am: 11. Nov. 2006 19:08    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

Hallo liebe Gemeinde,

ich hatte letztens schon mal wegen den Blockattributen geschrieben.

Bin jetzt mit meinem kleinen Programm zwar soweit klar, wenn es denn das richtige Ergebnis liefern würde.

Also ich möchte von meinen Blöcken den z-Wert auslesen und ihn in das angehängte Attributfeld einfügen.

Das mache ich damit: (Hatte ich hier schon mal im Forum gefunden).

Sub x()
 
  Dim elem As AcadEntity, ip
  For Each elem In ThisDrawing.ModelSpace                              If TypeOf elem Is IAcadBlockReference Then
            ip = elem.insertionPoint
       
Msgbox(ip (2))

Mein Problem ist nur, daß ich den Z-Wert vom Block brauche und nicht den vom Attribut....weil irgendwie sind die nicht auf gleicher Höhe.

Aber das mit dem InsertionPoint beim Block bekommen ich nicht hin. Wie muß man denn den InsertionPoint beim Block definieren? Offensichtlich anders als bei der Blockreference oder?

Wäre für jeden Hinweis dankbar.

Willynchen

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

CAD-Huebner
Ehrenmitglied V.I.P. h.c.
Verm.- Ing., ATC-Trainer



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

Beiträge: 9807
Registriert: 01.12.2003

AutoCAD 2.5 - 2022, LDD, MDT, RD, ADT, Civil
Inventor AIP 4-11, 2008 -2022
Win 10

erstellt am: 11. Nov. 2006 21:41    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 Willynchen_neu 10 Unities + Antwort hilfreich

Was du brauchst, ist mit Sicherheit der Einfügepunkt der Blockreferenz.
Aber natürlich haben die Attribute einer Blockreferenz einen eigenen Einfügepunkt (der auch in der Z-Höhe abweichen kann). Da muss man dann unterscheiden.

Den Block (die Blockdefinition) selbst gibt es ja nur ein einziges Mal, somit ist dessen Insertionpoint also genau nur ein Punkt.

------------------
Mit freundlichem Gruß

Udo Hübner

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

Goofy007
Mitglied
Vermessungstechniker


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

Beiträge: 578
Registriert: 06.11.2004

Map3D 2018 und Civil3D 2018

erstellt am: 12. Nov. 2006 19:17    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 Willynchen_neu 10 Unities + Antwort hilfreich

Hallo Willynchen!

Den InsertionPoint eines Block kannst du genauso auslesen wie den InsertionPoint eines Attributes.
Eventuell hilft dir folgendes Codeschnipsel:

Code:

Dim varblockinsert As Variant             
Dim dblBlockInsert(0 To 2) As Double       

    varblockinsert = elem.InsertionPoint
    dblBlockInsert(0) = CDbl(varblockinsert(0))
    dblBlockInsert(1) = CDbl(varblockinsert(1))
    dblBlockInsert(2) = CDbl(varblockinsert(2))



Hier wäre nun in der Variable dblBlockInsert(2) der Z-Wert als double gespreichert.

mfg didi

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)2025 CAD.de | Impressum | Datenschutz