| | |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| | |
 | PNY präsentiert die PRO Elite™ High Endurance microSD-Flash-Speicherkarten für Videoüberwachung und kontinuierliche Aufzeichnung, eine Pressemitteilung
|
|
Autor
|
Thema: vba code insert block 90° polyline (1167 mal gelesen)
|
roddydz Mitglied
 Beiträge: 4 Registriert: 24.01.2007
|
erstellt am: 24. Jan. 2007 20:24 <-- editieren / zitieren --> Unities abgeben:         
hallo zu allen, bin ich in VBA für AutoCAD neu, und bin, nach einem Code suchend, den Einsatz ein Blocksenkrechtes zu einem polyline erlaubt? getan zu werden ist möglich? jemand hat den Code? Dank für alles P.D. Mein Deutsches schlecht entschuldigen ------------------ Roddy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Andreas Widmann Mitglied ATHENA Support/Training
 
 Beiträge: 218 Registriert: 24.08.2005 Windows 10 Autocad 2015 - 2018 Athena 2015 - 2017 Aufsatz
|
erstellt am: 26. Jan. 2007 19:46 <-- editieren / zitieren --> Unities abgeben:          Nur für roddydz
Herzlich Willkommen! willst du einen Block per Makro so drehen lassen dass er senkrecht zu einer Linie steht? Da hätt ich dann was. Code: Public winkSub blocktoline() If wink = "" Then wink = 90 On Error GoTo ENDE Dim isse As AcadSelectionSet Dim bl As AcadBlockReference Dim altwink As String origwin = ThisDrawing.Utility.GetAngle(, "Vorgabewinkel") altwink = wink wink = ThisDrawing.Utility.GetString(False, "In welchem Winkel soll der Block dazu stehen? <" & wink & ">:") If wink = "" Then wink = altwink On Error Resume Next ThisDrawing.SelectionSets("dies").Delete On Error GoTo ENDE Set isse = ThisDrawing.SelectionSets.Add("dies") isse.SelectOnScreen For Each bl In isse bl.Rotation = origwin + ThisDrawing.Utility.AngleToReal(wink,acDegrees) DoEvents Next bl ENDE: End Sub
Mfg Andreas ------------------ Gruß Andreas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
roddydz Mitglied
 Beiträge: 4 Registriert: 24.01.2007
|
erstellt am: 31. Jan. 2007 19:38 <-- editieren / zitieren --> Unities abgeben:         
|
roddydz Mitglied
 Beiträge: 4 Registriert: 24.01.2007
|
erstellt am: 31. Jan. 2007 19:46 <-- editieren / zitieren --> Unities abgeben:         
|
CAD-Huebner Ehrenmitglied V.I.P. h.c. Verm.- Ing., ATC-Trainer

 Beiträge: 9812 Registriert: 01.12.2003 AutoCAD 2.5 - 2022, LDD, MDT, RD, ADT, Civil Inventor AIP 4-11, 2008 -2022 Win 10
|
erstellt am: 31. Jan. 2007 20:24 <-- editieren / zitieren --> Unities abgeben:          Nur für roddydz
Einen Block senkrecht zu einem Objekt ausrichten kann man ab AutoCAD 2006 mit Bordmitteln, indem man aus dem Block einen "dynamischen" Block macht und einfach einen Ausrichteparameter hinzufügt - da muss nichts programmiert werden. ------------------ Mit freundlichem Gruß Udo Hübner Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
roddydz Mitglied
 Beiträge: 4 Registriert: 24.01.2007
|
erstellt am: 31. Jan. 2007 22:00 <-- editieren / zitieren --> Unities abgeben:         
|

| |
Andreas Widmann Mitglied ATHENA Support/Training
 
 Beiträge: 218 Registriert: 24.08.2005 Windows 10 Autocad 2015 - 2018 Athena 2015 - 2017 Aufsatz
|
erstellt am: 01. Feb. 2007 18:50 <-- editieren / zitieren --> Unities abgeben:          Nur für roddydz
Hi, entschuldiung dass ich das fragen muss, aber ich verstehe den letzten Satz nicht. Wie wäre es mit Englisch, vielleicht klappt das besser. Das Makro das ich vorher gepostet hat frägt nach 2 Punkten (Start- und Endpunkt der Linie) die die Richtung der Linie oder Polylinie bestimmen und dreht den Block so dass er in einem bestimmten Winkel (also senkrecht wenn du 90° eingibst) zu dieser Linie / Polylinie steht. Ist das nicht das was du am Anfang beschrieben hast? ------------------------------------------------------------- Hi, sorry i have to ask this, but i do not understand your last sentence. If it is better for you, we could propably talk English! The VBA-code i postet previously asks you for 2 Points (the Start and the Endpoint of the Line) which are defining the direction of your line or polyline. It then rotates the Block matching to the angle, between the line and the block, which you have defined before. So if you type 90, your block will be rotated to be perpendicular to the line or polyline. Isn't it the thing you have described at the top of the site? ------------------ Gruß Andreas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |