Ottenere riferimenti a file esterni

Come ottenere riferimenti a file esterni

Problema: Come ottenere riferimenti a file esterni (CADNET-110).

Suggerimenti: Per ottenere riferimenti a file esterni per disegni nel blocco entità, c’è un campo XRef PathName per le immagini raster. CadRasterImage viene utilizzato per il sottofondo esterno, CadDgnUnderlay viene utilizzato e il suo campo UnderlayPath.

Esempio:

External drawing:
foreach (CadBaseEntity baseEntity in image.Entities)
{
// if entity is a block
if (baseEntity.TypeName == CadEntityTypeName.INSERT)
{
CadInsertObject insert = (CadInsertObject)baseEntity;
CadBlockEntity block = image.BlockEntities[insert.Name];
// get external reference to object
System.Console.WriteLine(block.XRefPathName);
}
}
External raster image:
foreach (CadBaseObject baseObject in image.Objects)
{
// if entity is an image definition
if (baseObject.TypeName == CadObjectTypeName.IMAGEDEF)
{
CadRasterImageDef rasterImageDef = (CadRasterImageDef)baseObject;
// get external reference to object
System.Console.WriteLine(rasterImageDef.FileName);
}
}
External underlay:
foreach (CadBaseEntity baseEntity in cadImage.Entities)
{
if (baseEntity.TypeName == CadEntityTypeName.DGNUNDERLAY) // or DWFUNDERLAY, or PDFUNDERLAY
{
CadDgnUnderlay dgnFile = (CadDgnUnderlay)baseEntity; // or CadDwfUnderlay, or CadPdfUnderlay
System.Console.WriteLine(dgnFile.UnderlayPath);
}
}