Ottenere riferimenti a file esterni
Contents
[
Hide
]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:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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); | |
} | |
} |