| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: AutoCAD2000 Koordinate des Blocks als Attribut und Programmieren in VB (867 mal gelesen)
|
nirwarna Mitglied Vermessungsingenieur
Beiträge: 28 Registriert: 21.12.2006 Windows XP, AutoCAD 2004
|
erstellt am: 21. Dez. 2006 15:01 <-- editieren / zitieren --> Unities abgeben:
Hallo ich möchte meine Punkte als Blöcke einlesen und daran Attribute binden. Ich glaube mein Problem ist nicht unbedingt einfach. Ich frage mich, ist es möglich ein Attribut in einen Block zu definieren, welches die Koordinate des Blockes oder eines Punktes beinhaltet??? Das ganze soll aber ohne lisp, Excel oder irgendwelche anhängsel funktionieren. Ich brauche also einen block, in welchem dessen Koordinate als Attribut ebgelegt ist. Wenn man das ganze noch weitertreiben möchte, geht es auch, das diese Koordinate, wenn man den Block verschiebt immer aktualisiert wird??? Wenn die obigen Fragen nicht ohne anhängsel funktionieren würden, habe ich nur die Möglichkeit, mir beim Punktimport die Daten in den Block schreiben zu lassen. Ich möchte das in VB programmieren. Daher auch hierzu die Frage, hat jmd schon Erfahrung im Programmieren und Zugriff auf AutoCAD. Stelle mir vor, das DXF-Format einer Vorlage als TExt zu kopieren und da meine Punkte mit allen Informationen einzutragen. Bin für jede Hilfe dazu dankbar. Mfg Werner
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 21533 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 21. Dez. 2006 15:06 <-- editieren / zitieren --> Unities abgeben: Nur für nirwarna
|
cad4fun Ehrenmitglied
Beiträge: 1846 Registriert: 06.12.2004 privat ACAD 2013 und 2017 deutsch, Windows 7 64Bit HP Elite 7500 Series MT,Intel Cote i5-3470 CPU 3,20Ghz,16GB RAM ATI FirePro V (FireGL V) Graphics Adapter Treiberversion: 15.201.1151.1008
|
erstellt am: 21. Dez. 2006 15:27 <-- editieren / zitieren --> Unities abgeben: Nur für nirwarna
ich frage mich immer, warum ein Block, dessen einfügekoordinaten bekannt sind, diese extra auch noch als attribut bekommen soll. damit ist doch jede auswertung in tabellen oder was auch immer möglich. das ist doch im regelfall gürtel plus hosenträger und bei verschiebungen aktualisieren sich diese einfügekoordinaten auch noch automatisch Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 21533 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 21. Dez. 2006 15:36 <-- editieren / zitieren --> Unities abgeben: Nur für nirwarna
@cad4fun um in einem Plan Koordinaten darzustellen reicht die digitale Information der Datei nicht aus , anhand der Nachfragen in den Foren ist auch ein recht großer Bedarf an dieser Darstellung von Koordinaten gegeben.. Falls jemand Fertigungsmaschinen "per Hand" programmieren muß zB.. ;D Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
nirwarna Mitglied Vermessungsingenieur
Beiträge: 28 Registriert: 21.12.2006 Windows XP, AutoCAD 2004
|
erstellt am: 21. Dez. 2006 15:48 <-- editieren / zitieren --> Unities abgeben:
Hallo naja ich habe mich vielleicht etwas unglücklich ausgedrückt. Ich formuliere das mal etwas anders. Also ich habe eine Koordinatendatei X,Y,Z Dies möchte ich in AutoCAD 2000!!! importieren. So, dort steht dann der Punkt und nebendran die Attributswerte X,Y,Z als Block (am besten ist der Punkt eben bestandsteil dieses Blocks) Das ganze manuell zu definieren geht ja, dann muß ich eben, die Koordinate eintragen. Aber geht das automatisiert, ich stelle mir vor, der Block ist in einer Autocad-Vorlage gespeichert und wird für jeden Punkt erzeugt und dann die Daten eingetragen. Dann bräuchte ich nur 1 Block in einer dwg-Vorlage, lese da meine Punkte ein und habe dann nach dem Import alle Anschriebe. Wenn x, Y, Z auf unterschiedliechen Layern liegen wäre das schön. Das war die erste Frage, die zweite lautete, ob jmd sowas schon in VB programmiert hat und mir Beispiele zu blöcken oder VB zur verfügen stellen kann. Ich möchte mir das selbst basteln, also kein fertiges Tool. Mfg Werner
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 21533 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 21. Dez. 2006 15:52 <-- editieren / zitieren --> Unities abgeben: Nur für nirwarna
ah, du hast garkeine Punkte sondern Koordinaten (habe an PUNKTobjekte gedacht) Dennoch: Blockreferenzen einfügen, einfügepunkt = Koordinate aus externer Datei ist noch leicht, dann die Attributwerte (XYZ-Koordinate) einfügen geht eben nicht mehr so einfach und das muß programmiert werden. Und da habe ich dir ja bereits den Weg ins passende Forum gewiesen.. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cad4fun Ehrenmitglied
Beiträge: 1846 Registriert: 06.12.2004 privat ACAD 2013 und 2017 deutsch, Windows 7 64Bit HP Elite 7500 Series MT,Intel Cote i5-3470 CPU 3,20Ghz,16GB RAM ATI FirePro V (FireGL V) Graphics Adapter Treiberversion: 15.201.1151.1008
|
erstellt am: 22. Dez. 2006 09:23 <-- editieren / zitieren --> Unities abgeben: Nur für nirwarna
Zitat: Original erstellt von cadffm:
Falls jemand Fertigungsmaschinen "per Hand" programmieren muß zB..
Als im Bauwesen arbeitender habe ich es natürlich "nur" mit Lagekoordinaten zu tun und daher sicher eine eingeschränkte Sicht auf das Problem @nirwana Falls ein Umstieg auf ACAD>=2005 in der nächsten Zeit ansteht gibt es anbei einen Block, der sich selber beim Einfügen auf verschiedenen Layern mit seinen Lagekoordinaten beschriftet(mittels Schriftfeldern, ev. ist Regenerieren notwendig). Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
nirwarna Mitglied Vermessungsingenieur
Beiträge: 28 Registriert: 21.12.2006 Windows XP, AutoCAD 2004
|
erstellt am: 24. Dez. 2006 11:34 <-- editieren / zitieren --> Unities abgeben:
Hallo vielen Dank, werds mir mal anschauen. Ich denke aber, das sich das mit den Attributen nicht realisieren lässt unter AutoCAD2000. Scheinbar sieht jeder nur die Neuerungen und AutoCAD2005/2006 usw. Da ich mein Programm individuell gestalten möchte, muß ich aber auch Leute ansprechen, die nur AutoCAD2000 haben. Daher hilft es mir nichts, wenn jmd von 2005 schreibt. Dennoch vielen Dank, Mfg Werner
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 21533 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 24. Dez. 2006 14:26 <-- editieren / zitieren --> Unities abgeben: Nur für nirwarna
Hallo Werner, es sieht nicht jeder nur die Neuerungen nach AC2000, jedoch möchtest du keine Lösung die in Lisp programmiert ist/wird, verständlich wenn du es selbst in VB realisieren möchtest. Es war ja auch nur gut gemeint von cad4fun, zudem bist du nicht der Einzige mit diesem anliegen und andere mit der gleichen Frage haben ja evtl 2005,2006 oder 2007 ! Und die Leser können dann sehr wohl was mit der Block-Vorlage anfangen Den Weg ins Acad-Vba Forum hast du ja nun gefunden , leider etwas unglücklich weil du mit deinem Anliegen initten eines bestehenden Thema´s reingeplatzt bist und wie Startrek dazu bereits geschrieben hat, erööfne am besten in dem Forum einen neuen / eigenen Thread. PS.: Warum auch immer hast du hier einen schweren Start, doch halt durch wenn du 1x "drin" bist fühlst du dich hier wohl und kannst auf die Hilfe von anderen Usern bauen. - Ansonsten will ich dir jetzt mal einen Ansatz liefern: Du kannst anscheinend programmieren nur das Acad-Spezifische fehlt eben !? Wenn du die Koordinatenwerte aus der externen Datei auslesen kannst dann ist der Rest wirklich ein Klacks ! XYZ lesen, sendcommand "Blockeinfügen" und bei der Einfügepunkt-Abfrage des Befehles die Koordinaten angeben, den Befehl weiter abarbeiten bis das Attribut 1 2 und 3 kommen an die du wieder jeweils die eingelesenen Koordinatenwerte übergibst. Öffne mal Acad und spiel das ganze mit der Hand durch, eingabe in die Befehlszeile ist: _-INSERT Zum Testen mal schnell einen Block erstellen wie folgt: DWG erstellen, abspeichern unter c:\ mit dem Namen KOORDPUNKT.dwg . In der DWG erstellst du evtl mal einen Kreis dessen Zentrum auf Koordinaten 0,0,0 liegt, daneben erstellst du 3 Attributdefinitionen [Menü Zeichnen / Block / Attribut..] Dann Datei speichern(keinen Block vorher definieren) Nun kannst du in einer anderen Datei den Test machen: Befehl: _-INSERT Blocknamen eingeben oder [?]: C:\KOORDPUNKT.dwg Einheiten: Millimeter Konvertierung: 1.0000 Einfügepunkt angeben oder [Basispunkt/Faktor/X/Y/Z/Drehen/VFaktor/VX/VY/VZ/VDrehen]: 101.122,50.002,0.000 X-Skalierfaktor eingeben, entgegengesetzte Ecke angeben oder [Ecke/XYZ] <1>: 1 Y-Skalierfaktor eingeben <X-skalierfaktor verwenden>: 1 Drehwinkel angeben <0>: 0 Attributwerte eingeben X: 101.122 Y: 50.002 Z: 0.000 Befehl: Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|