internal static void GetTreeNodeInfo(TreeNodeObject _node) { int OldTreeNodeObjID = CurTreeNodeObjID; if (_node == null || ListSelectNodes.Count == 0) { if (OldTreeNodeObjID > -1) { CurOCIChar = null; CurTreeNodeObjID = -1; } return; } if (Studio.Studio.Instance.dicInfo.TryGetValue(_node, out ObjectCtrlInfo _info)) { CurTreeNodeObjID = StudioObjectExtensions.GetSceneId(_info); if (OldTreeNodeObjID != CurTreeNodeObjID) { OCIChar selected = _info as OCIChar; if (selected?.GetType() != null) { CurOCIChar = selected; } else { CurOCIChar = null; } } } }
/// <summary> /// Enable simultaneous kinematics for the specified ChaControl /// </summary> public static void EnableFKIK(ChaControl chaControl) => EnableFKIK(StudioObjectExtensions.GetOCIChar(chaControl));