Vytisknout stránku | Zavřít okno

Práce s rastry

Vytištěno z: CAD Fórum
Kategorie: Autodesk - stavebnictví, strojírenství, CAD/GIS
Název fóra: CAD programování
Popis fóra: Otázky programování - nadstavby a utility pro CAD a GIS aplikace Autodesk (VBA, AutoLISP, ARX/C++, .Net, JavaScript, Python, MEL...)
URL: https://www.cadforum.cz/forum/forum_posts.asp?TID=4932
Datum vytištění: 13.kvě.2026 v 09:59


Téma: Práce s rastry
Odeslal: chose
Předmět: Práce s rastry
Datum odeslání: 27.čvc.2007 v 11:34

Zajímalo by mě, jak pracovat s rastry ve VBA. Nový rastr načtu takto:

set rastr=ThisDrawing.ModelSpace.AddRaster(jmeno, bod, 1, 1)
rastr.name="rastr"
 
když mu ale změním jméno (kvůli přehlednosti chci nastavit jméno jako je název souboru), toto jméno se nezmění ve správci referencí souborů a při různých jménech rastrového obrázku a jménu ve správcích referencí souborů nejde rastr uvolňovat a načítat. dále pak nevím, jak k tomuto rastru přistupovat a uvolňovat ho a načítat pomocí příkazů.
při vložení výkresu xrefu je přitom tato práce snadná:
 
 Set insertedBlock = ThisDrawing.ModelSpace.AttachExternalReference(jmeno, "XREF", bod, 1, 1, 1, 0, False)
 ThisDrawing.Blocks.Item("XREF").Unload
 ThisDrawing.Blocks.Item("XREF").Reload
ve správci referencí je název, který vložím při načítání reference ("XREF").
 
K rastru mohu přistoupit pomocí:
ThisDrawing.ModelSpace.Item(cislo)
číslo si i zjistím (název v tomto případu pro výběr nemohu použít, nevím proč), ale tímto způsobem nemohu použít Unload nebo Reload.
ThisDrawing.ModelSpace.Item(0).Unload - nefunguje, není definováno
 
Zajímalo by mě tedy, jak nastavit název ve správci referencí souborů a jak pak jednotlivé rastry mohu načítat a uvolňovat.


-------------
chose



Odpovědi:
Odeslal: chose
Datum odeslání: 03.srp.2007 v 13:50
Nikdo neví? V podstatě mě zajímá, jak ve VBA naprogramovat:
- příkaz xref, vyberu si nějáký obrázek a změním název reference
- příkaz xref, vyberu si nějáký obrázek a dám značíst nebo uvolnit
 


-------------
chose



Vytisknout stránku | Zavřít okno