Obtenir des références à des fichiers externes
Comment obtenir des références à des fichiers externes
Problème : Comment obtenir des références à des fichiers externes (CADNET-110).
Conseils : Pour obtenir des références à des fichiers externes pour des dessins dans le bloc d’entité, il y a un champ XRef PathName pour les images raster. CadRasterImage Def est utilisé pour le sous-jet externe, CadDgnUnderlay est utilisé et son champ UnderlayPath.
Exemple :
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); | |
} | |
} |