Ik gebruik een block als kader waarin we diverse gegevens snel en makkelijk kunnen aanpassen met een script.
Nu wil ik 1 onderdeel veranderen van naam/waarde.
Ik open de eerste pagina, selecteer het block en ga naar de block-editor.
Na het aanpassen van het block, kan ik nu op alle andere pagina's het block makkelijk/snel updaten naar de nieuwe versie?
Of moet ik (wat ik eigenlijk altijd deed) nu per pagina het (nieuwe) block steeds opnieuw invoegen?
FYI: Ik gebruik AutoCad 2012
Beste Barry je vraag wordt duidelijker als je de autocad benamingen gebruikt voor wat je wilt doen,
Bedoel je met pagina een layout.
Het hangt er een beetje van af wat je exact wilt wijzigen
Waarde voor attributen kan je overigens aanpassen zonder dat je een Block wijzigt dat is namelijk precies waar deze voor bedoeld zijn
In de pagina (layout/model....maakt niet uit) heb ik een kader, dit is een block.
Met Block Editor heb ik daar diverse attributes weggezet.
Deze attributes kun je inderdaad gewoon aanpassen.
Maar het gaat om de TAG's ervan.
Er staat nu bijvoorbeeld:
Getekend: Barry (barry is dan de value die je via Enhanced Attribute Editor kan aanpassen).
Maar ik wil dus juist de tag: 'Getekend' veranderen.
Beste Barry,
Met het commando BATTMAN kun je de tag veranderen!
Kijk eens naar het synchroniseren met de zoekterm ATTSYNC:
http://www.cadsite.be/smf/index.php?topic=4921.msg26048#msg26048 (http://www.cadsite.be/smf/index.php?topic=4921.msg26048#msg26048)
http://www.cadsite.be/smf/index.php?topic=1974.msg10228;topicseen#msg10228 (http://www.cadsite.be/smf/index.php?topic=1974.msg10228;topicseen#msg10228)
Met vriendelijke groet, HofCAD CSI.
Om een tag in een Block wijzigen kan met het commando BATTMAN.
Je zoek het Block op klikt op edit en past de tag aan
Vervolgens klik je op sync om alle blocken met die naam te synchroniseren
Je kan ook de tag aanpassen in de Block editor
Vervolgens dit commando afsluiten (met save)
En dan ATTSYNC gebruiken om de reeds in de tekening getekende blocken ook aan te passen naar deze gewijzigde tag
Dit is niet wat ik zoek...
Je kan zo dus blocks aanpassen in de tekening die je open hebt staan.
Ik zocht juist een oplossing om een hele berg tekeningen tegelijk te updaten naar het nieuwe block
Citaat van: BarryCad op do 12 09 2013, 08:40:50
Ik zocht juist een oplossing om een hele berg tekeningen tegelijk te updaten naar het nieuwe block
Beste Barry,
Ik zie in http://www.cadsite.be/smf/index.php?topic=2811.15 (http://www.cadsite.be/smf/index.php?topic=2811.15), dat je bekend bent met BABE!
Met vriendelijke groet, HofCAD CSI.
Citaat van: HofCAD op do 12 09 2013, 08:47:05
Beste Barry,
Ik zie in http://www.cadsite.be/smf/index.php?topic=2811.15 (http://www.cadsite.be/smf/index.php?topic=2811.15), dat je bekend bent met BABE!
Met vriendelijke groet, HofCAD CSI.
Klein beetje, hoezo?
Citaat van: BarryCad op do 12 09 2013, 08:53:12
Klein beetje, hoezo?
Beste Barry,
Je kan met BABE meerdere tekeningen bewerken!
Met vriendelijke groet, HofCAD CSI.
Zoals ik al zei 'een klein beetje' :(
Aangezien ik de tekeningen vandaag naar de klant moet sturen gaat dit vandaag niet meer lukken.
Toch bedankt voor de hulp.
Is het een optie om je block aan te passen en op te slaan en dan met Babe een block replace te doen in je berg tekeningen? Ben zelf geen gebruiker van Babe dus ik moet je een voorbeeld schuldig blijven. Misschien dat een van de Babe goeroe's je hiermee kan helpen
stephan
Citaat van: BarryCad op do 12 09 2013, 09:24:11
Zoals ik al zei 'een klein beetje' :(
Aangezien ik de tekeningen vandaag naar de klant moet sturen gaat dit vandaag niet meer lukken.
Toch bedankt voor de hulp.
Beste Barry,
Probeer eens met het commando WBLOCK een veranderd block te exporteren
naar een tekening.
Verander dan in onderstaand programma de naam en het path bij:
BlkName, DwgPath en DwgName.
(vl-load-com)
(defun c:DoIt (/ BlkName DwgPath DwgName DWG ~req e)
(setq BlkName "ToUpdate")
(setq DwgPath "C:\\BABEtest\\")
(setq DwgName "ToUpdate")
(if (tblsearch "block" BlkName)
(progn
(if (setq Dwg (findfile (strcat DwgPath DwgName ".dwg")))
(progn
(setq ~req (getvar "ATTREQ"))
(setvar "ATTREQ" 0)
(command "_.INSERT" (strcat BlkName "=" DWG) '(0 0) 1 1 0)
(setq e (entlast))
(entdel e)
(setvar "ATTREQ" ~req)
(command "_.ATTSYNC" "_N" BlkName)
))
)
)
)
Sla dan dit programma op als bijv.: Babe_Ch_Blk.LSP
Laad dan in een nieuwe tekening BaBe.lsp, en start dan het commando BABE.
Met vriendelijke groet, HofCAD CSI.
PS DOSLib verkrijgbaar bij: http://download.rhino3d.com/download.asp?id=doslib (http://download.rhino3d.com/download.asp?id=doslib)
Hofcad,
Dit is er een in het kader van "U vraagt wij draaien" :D
stephan
Zal op een rustig dagje mezelf er weer eens in gaan verdiepen, en dan eens kijken of ik dit script aan de praat kan krijgen...