Получение ссылок на внешние файлы
Contents
[
Hide
]Как получить ссылки на внешние файлы
Проблема: Как получить ссылки на внешние файлы (CADNET-110).
Советы: Чтобы получить ссылки на внешние файлы для чертежей в блоке сущностей, существует поле XRef PathName для растровых изображений CadRasterImage используется для внешнего подложки CadDgnUnderlay используется и его поле UnderlayPath.
Пример:
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); | |
} | |
} |