[CommandMethod("Test_1")]
public void Test_1()
{
Document doc = Application.DocumentManager.MdiActiveDocument;
Database db = doc.Database;
CivilDocument civilDoc = CivilApplication.ActiveDocument;
using (Transaction trans = db.TransactionManager.StartTransaction())
{
string name = "new network";
ObjectId nwId = Network.Create(civilDoc, ref name);
Network nw = (Network)trans.GetObject(nwId, OpenMode.ForWrite);
PartsListCollection partsListIds = civilDoc.Styles.PartsListSet;
foreach (ObjectId listId in partsListIds)
{
PartsList partsList = (PartsList)trans.GetObject(listId, OpenMode.ForRead);
ObjectIdCollection ids = partsList.GetPartFamilyIdsByDomain(DomainType.Structure);
foreach (ObjectId id in ids)
{
PartFamily fam = (PartFamily)trans.GetObject(id, OpenMode.ForRead);
if (fam.PartType == PartType.StructNull)
{
if (fam.PartSizeCount == 1)
{
ObjectId strId = ObjectId.Null;
nw.AddStructure(fam.Id, fam[0], new Point3d(0, 0, 0), 0.0, ref strId, false);
break;
}
}
}
}
trans.Commit();
}
}