| |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
 | NVIDIA GTC Paris und ISC High Performance-Konferenz 2025, eine Pressemitteilung
|
Autor
|
Thema: Linie mit Baloon (1587 mal gelesen)
|
Stefan1905 Mitglied Dipl.-Ing.

 Beiträge: 18 Registriert: 07.01.2009 XP prof 5.1.2600 SP3 Build 2600 Prozessor:x86/15/1/2 Genuine 1700 MHz AUTOCAD MECHANICAL 2006 OFFICE 2003
|
erstellt am: 07. Jan. 2009 12:00 <-- editieren / zitieren --> Unities abgeben:         
Hallo, Ich arbeite unter Autocad2006 mit VBA und möchte den Befehl AMNOTE von Mechanical nachprogrammieren und modifizieren. Gibt es dafür schon eine Lösung? Das Problem ist eigentlich: Wie hänge ich sichtbar einen Block (mit Attributen) an den Cursor, während ich den 2. Punkt einer Linie bestimme. Danke für jeden Hinweis. Stefan Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 07. Jan. 2009 12:27 <-- editieren / zitieren -->
Hi, der wahrscheinlich einfachste Weg ist, den Block zuerst einfügen (z.b. bei 0,0,0) und dann den Befehl Schieben starten (lassen) mit dem zuvor erstellten Block (der Blockreferenz). Weitere Tips kann ich mangels (Un)Kenntnis von Mechanical/AMNOTE leider nicht geben (vielleicht wartest noch ein wenig auf Mechanical-Wissende oder Du beschreibst, was da getan wird, ich könnte mir da auch Lösungen vorstellen, die einen dynamischen Block verwenden, das geht dann vielleicht sogar ohne Programmierung). - alfred - [Diese Nachricht wurde von a.n. am 07. Jan. 2009 editiert.] |
wronzky Ehrenmitglied V.I.P. h.c. CAD-Dienstleistungen für Architekten

 Beiträge: 2154 Registriert: 02.05.2005 CAD: AutoCAD 2.6 bis 2014 ADT 2005 - ACA 2013 Arcibem System: Windows NT, 2000, XP Internet-Startseite: http://www.archi.de
|
erstellt am: 07. Jan. 2009 12:32 <-- editieren / zitieren --> Unities abgeben:          Nur für Stefan1905
Zitat: der wahrscheinlich einfachste Weg ist, den Block zuerst einfügen (z.b. bei 0,0,0) und dann den Befehl Schieben starten (lassen) mit dem zuvor erstellten Block (der Blockreferenz).
Als Ergänzung zu Alfred's Tipp: nicht bei 0,0,0 einfügen, sondern am "Startpunkt" der Linie. Dann hast Du beim Verschieben eine Gummibandlinie vom "Startpunkt" aus, und es sieht aus wie der Linien-Befehl. Grüsse, Henning ------------------ Henning Jesse VoxelManufaktur Computer-Dienstleistungen für Architekten und Ingenieure http://www.voxelman.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Stefan1905 Mitglied Dipl.-Ing.

 Beiträge: 18 Registriert: 07.01.2009 XP prof 5.1.2600 SP3 Build 2600 Prozessor:x86/15/1/2 Genuine 1700 MHz AUTOCAD MECHANICAL 2006 OFFICE 2003
|
erstellt am: 07. Jan. 2009 13:26 <-- editieren / zitieren --> Unities abgeben:         
|
Stefan1905 Mitglied Dipl.-Ing.

 Beiträge: 18 Registriert: 07.01.2009 XP prof 5.1.2600 SP3 Build 2600 Prozessor:x86/15/1/2 Genuine 1700 MHz AUTOCAD MECHANICAL 2006 OFFICE 2003
|
erstellt am: 16. Jan. 2009 12:38 <-- editieren / zitieren --> Unities abgeben:         
|
Ex-Mitglied
|
erstellt am: 16. Jan. 2009 18:39 <-- editieren / zitieren -->
Hi Stefan, kannst Du Deinen Code (zumindest von der kritischen Stelle, so dass wir damit testen können) bereitstellen? - alfred - |
Stefan1905 Mitglied Dipl.-Ing.

 Beiträge: 18 Registriert: 07.01.2009 XP prof 5.1.2600 SP3 Build 2600 Prozessor:x86/15/1/2 Genuine 1700 MHz AUTOCAD MECHANICAL 2006 OFFICE 2003
|
erstellt am: 19. Jan. 2009 09:18 <-- editieren / zitieren --> Unities abgeben:         
Hallo, hier ein Teil des Programmcodes. Der Hintergrund ist: Ich habe ein VBA-Programm für AUTOCAD geschrieben, welches 3D Förderer zeichnet. Nun müssen diese in der Draufsicht Nummeriert (Positioniert) werden. Dazu ist in der Zeichnung bereits ein Block (PosNr6 = Oval) vorhanden, der nun versehen mit Text und Linie eingefügt werden soll, in der Art, daß der Block am Cursor sichtbar hängt, während ich den Endpunkt der Linie mit dem Cursor suche. So, wie ich es hier hingeschrieben habe, geht's aber nicht wie gewünscht. (siehe auch Skizze im Anhang) Sub ZeiBalloon(Inhalt As String) ' Zeichnen des Balloon Dim A(0 To 2) As Double ' Anfangspunkt Linie Dim AT(0 To 2) As Double ' Anfangspunkt Text Dim E As Variant ' Endpunkt linie Dim lineObj As AcadLine Dim Texxt As AcadText Dim Obj As AcadBlockReference Dim TI As String * 6 TI = Inhalt ' zB.:003005 ' Einfügepunkt angeben Call APunkt("Anfangspunkt:") For II = 0 To 2 A(II) = BasPnt(II) Next BloNam = "POS123" ' hier: beliebiger Blockname E = ThisDrawing.Utility.GetPoint(, "Endpunkt:") AT(0) = E(0) - 330 AT(1) = E(1) + 53 ' Container Set Balloon = ThisDrawing.Blocks.Add(E, Trim$(BloNam)) ' Referenz vom Balloonblock erzeugen Set BalloonR = Balloon.InsertBlock(E, "PosNr6", 1, 1, 1, 0) BalloonR.Layer = "IFF_Balloon" ' Texteingabe Set Texxt = Balloon.AddText(TI, AT, SchrGröN) ' SchrGröN Schriftgöße Texxt.Layer = "IFF_BalloonText" Set Obj = ThisDrawing.ModelSpace.InsertBlock(E, Trim$(BloNam), 1, 1, 1, 0) Set lineObj = ThisDrawing.ModelSpace.AddLine(A, E) lineObj.Layer = "IFF_Balloon" lineObj.Update ' ZoomAll BalloonR.Update End Sub Sub APunkt(Text) ' Einfügepunkt ZZ1: On Error GoTo ZZ1 BasPnt = ThisDrawing.Utility.GetPoint(, Text) On Error GoTo 0 End Sub Gruß, Stefan
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 19. Jan. 2009 18:32 <-- editieren / zitieren -->
Hi Stephan, hab Dir einfach gewünschtes geschrieben und bin nicht wirklich auf Deinen Code eingegangen, da ich bevorzuge (wenn schon Graphik und Text eine Einheit bilden sollen) im Block ein Attribut dafür zu setzten. Ich hoffe aber doch, dass die Vorgehensweise (so wie ich sie verstanden habe) ident zu Deiner (gewünschten) ist. Du findest beiliegend eine Zeichnung und ein DVB-File, lass mich wissen, wenn meine Kommentare zu wenig sind - alfred - |
Stefan1905 Mitglied Dipl.-Ing.

 Beiträge: 18 Registriert: 07.01.2009 XP prof 5.1.2600 SP3 Build 2600 Prozessor:x86/15/1/2 Genuine 1700 MHz AUTOCAD MECHANICAL 2006 OFFICE 2003
|
erstellt am: 19. Jan. 2009 21:29 <-- editieren / zitieren --> Unities abgeben:         
|

| Anzeige: | Infos zum Werbeplatz >> | yasuCAD CAD APP für Tiefbau, Umwelt Since 1985, AnkiSOFT Software developes software to design infrastructure projects.
yasuCAD has been developed for Stormwater Network Design. It is for Drawing / Modelling / Planning / Design / Analyze the stormwater network.
The software works under AutoCAD or ZWCAD.
|
|
Stefan1905 Mitglied Dipl.-Ing.

 Beiträge: 18 Registriert: 07.01.2009 XP prof 5.1.2600 SP3 Build 2600 Prozessor:x86/15/1/2 Genuine 1700 MHz AUTOCAD MECHANICAL 2006 OFFICE 2003
|
erstellt am: 20. Jan. 2009 08:32 <-- editieren / zitieren --> Unities abgeben:         
Hallo Alfred, danke für diese Superlösung, sie hat mich sehr vorangebracht. Ich hatte zwar auch schon mit "SendCommand" probiert, bin damit aber nicht klar gekommen. Nochmals Danke und viele Grüße! Stefan Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |