| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Polyline breite änderung (1663 mal gelesen)
|
dw Mitglied cad
Beiträge: 45 Registriert: 29.06.2007
|
erstellt am: 13. Dez. 2007 10:31 <-- editieren / zitieren --> Unities abgeben:
Wer kann mich helfen, Habe viele blocks (dwg Zeichnungen) in einem dirrectorie,jetzt habe ich in diese verschiedene zeichnungen polyline gezeichnet mit eine falsche breite statt das er 81 ist muss er eine breite von 48 kriegen, wie kann ich das mit vba schnell umanderen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
KlaK Ehrenmitglied V.I.P. h.c. Dipl. Ing. Vermessung, CAD- und Netz-Admin
Beiträge: 2624 Registriert: 02.05.2006 AutoCAD LandDesktop R2 bis 2004 Civil 3D 2005 - 2022 Plateia, Canalis Visual Basic
|
erstellt am: 13. Dez. 2007 14:46 <-- editieren / zitieren --> Unities abgeben: Nur für dw
Hallo dw, warum machst Du das nicht über die Schnellauswahl im Eigenschaftsfenster ? (siehe Anhang) Programmtechnisch:
Code: If returnObj.ObjectName = "AcDbPolyline" Then If returnObj.ConstantWidth = 81 Then returnObj.ConstantWidth = 45 End If returnObj.Update
Klaus Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
dw Mitglied cad
Beiträge: 45 Registriert: 29.06.2007
|
erstellt am: 17. Dez. 2007 16:52 <-- editieren / zitieren --> Unities abgeben:
|
KlaK Ehrenmitglied V.I.P. h.c. Dipl. Ing. Vermessung, CAD- und Netz-Admin
Beiträge: 2624 Registriert: 02.05.2006 AutoCAD LandDesktop R2 bis 2004 Civil 3D 2005 - 2022 Plateia, Canalis Visual Basic
|
erstellt am: 18. Dez. 2007 12:12 <-- editieren / zitieren --> Unities abgeben: Nur für dw
SelectionSet mode=selectall mit Filterkriterium Polygon diesen durchlaufen lassen und Eigenschaft wie oben ändern. Code: 'Aufruf über: (command "vbarun" "main") Sub main()Dim SS1 As AcadSelectionSet Dim ent As Variant Dim plineObj As AcadLWPolyline Dim gpCode() As Integer Dim dataValue() As Variant ReDim gpCode(2) As Integer ReDim dataValue(2) As Variant gpCode(0) = 67 'Filter ob Modell oder Layout dataValue(0) = 0 'Modell (0) / Layout (1) gpCode(1) = 0 'Filter nach Element dataValue(1) = "LWPOLYLINE" 'Objekt gpCode(2) = 43 'Filter Globale Breite dataValue(2) = 81# 'Wert Set SS1 = ThisDrawing.SelectionSets.Add("PL") 'Set SS1 = Selectionset("PL") 'Funktion sucht SS bzw. Erzeugt diesen SS1.Clear SS1.Select acSelectionSetAll, , , gpCode, dataValue If SS1.Count > 0 Then For Each ent In SS1 If ent.ObjectName = "AcDbPolyline" Then Set plineObj = ent plineObj.ConstantWidth = 45# plineObj.Update End If Next ent End If
SS1.Clear SS1.Delete End Sub
[Diese Nachricht wurde von KlaK am 18. Dez. 2007 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |