public static bool HasNode(this IILayer layer, IINode node, bool checkInChild = true) { #if MAX2020 || MAX2021 || MAX2022 ITab <IINode> nodes = Loader.Global.INodeTab.Create(); #else ITab <IINode> nodes = Loader.Global.INodeTabNS.Create(); #endif IILayerProperties layerProperties = Loader.IIFPLayerManager.GetLayer(layer.Name); layerProperties.Nodes(nodes); foreach (IINode n in nodes.ToIEnumerable()) { if (node.Handle == n.Handle) { return(true); } } for (int i = 0; i < layer.NumOfChildLayers; i++) { IILayer child = layer.GetChildLayer(i); if (child.HasNode(node, checkInChild)) { return(true); } } return(false); }
public static IEnumerable <IINode> LayerNodes(this IILayer layer) { IILayerProperties layerProp = Loader.IIFPLayerManager.GetLayer(layer.Name); #if MAX2020 || MAX2021 || MAX2022 ITab <IINode> nodes = Loader.Global.INodeTab.Create(); #else ITab <IINode> nodes = Loader.Global.INodeTabNS.Create(); #endif layerProp.Nodes(nodes); return(nodes.ToIEnumerable()); }