public List<CADGeometry> Geometry = new List<CADGeometry>(); // If geometries are associated with this interface public StructuralInterfaceConstraint(GmeCommon.Interfaces.FCO impl, string parentID, string parentinstanceGUID) { CyPhyImpl = impl; PortID = impl.ID; ParentID = parentID; ParentInstanceGUID = parentinstanceGUID; DatumList = new Dictionary<string, Datum>(); DegreeFreedom = 0; if (impl is CyPhy.Connector) { InterfaceDefinition = (impl as CyPhy.Connector).Attributes.Definition; Name = impl.Name; } else if (impl is CyPhy.CADDatum) { InterfaceDefinition = (impl as CyPhy.CADDatum).Attributes.Definition; Name = impl.Name; } else { InterfaceDefinition = ""; Name = ""; } }
private CyPhyML.ComponentAssembly FindTopLevelAssembly(GmeCommon.Interfaces.FCO componentasm) { CyPhyML.ComponentAssembly topassembly = null; if (componentasm.ParentContainer.Kind == "ComponentAssemblies") // Top Level Assembly { topassembly = (componentasm as CyPhyML.ComponentAssembly); } else if (componentasm.ParentContainer.Kind == "ComponentAssembly") { topassembly = FindTopLevelAssembly(componentasm.ParentContainer as CyPhyML.ComponentAssembly); } return topassembly; }
public CommonTraversal(GmeCommon.Interfaces.FCO start, CyPhy.ComponentAssembly topassembly) { Initialize(); startNodeID = start.ID; this.topAssembly = topassembly; if (start is CyPhy.Connector) { VisitConnector(start as CyPhy.Connector, (MgaFCO)start.ParentContainer.Impl); } else if (start is CyPhy.CADDatum) { VisitCADDatum(start as CyPhy.CADDatum); } }