/// <summary> /// 生成标注 /// </summary> public AnnotationBuildResult GenerateMultipleTagSymbol(Document document, IEnumerable <ElementId> selectedIds, MultiPipeAnnotationSettings setting, bool generateSingleOne) { if (selectedIds.Count() > AnnotationConstaints.PipeCountMax) { throw new NotImplementedException("暂不支持8根以上及管道的多管直径标注生成"); } Document = document; Collection = PAContext.GetCollection(Document); PipeAnnotationEntity entity = new PipeAnnotationEntity(); entity.LocationType = setting.Location; View view = Document.ActiveView; AnnotationBuildResult result = GenerateMultipleTagSymbol(document, selectedIds, entity, setting); if (generateSingleOne && result == AnnotationBuildResult.Success) { Collection.Add(entity); Collection.Save(Document); } else if (result == AnnotationBuildResult.Success) { Collection.Add(entity); } return(result); }
/// <summary> /// 生成标注 /// </summary> public AnnotationBuildResult GenerateMultipleTagSymbol(Document document, IEnumerable <ElementId> selectedIds, MultiPipeTagLocation location) { Document = document; Collection = PipeAnnotationContext.GetCollection(Document); PipeAnnotationEntity entity = new PipeAnnotationEntity(); entity.LocationType = location; View view = Document.ActiveView; AnnotationBuildResult result = GenerateMultipleTagSymbol(selectedIds, entity, view); if (result == AnnotationBuildResult.Success) { Collection.Add(entity); Collection.Save(Document); } return(result); }