Obtener referencias a archivos externos

Cómo obtener referencias a archivos externos

Problema: Cómo obtener referencias a archivos externos (CADNET-110).

Consejos: Para obtener referencias a archivos externos para dibujos en el bloque de entidad, hay un campo XRef PathName para imágenes de ráster. CadRasterImage se utiliza para subyacentes externos, CadDgnUnderlay se utiliza y su campo UnderlayPath.

Ejemplo:

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);
}
}