private void SetAttribute(string attName, object attValue, NXObject.AttributeType attType = NXObject.AttributeType.String) { if (_Part == null) { return; } switch (attType) { case NXObject.AttributeType.String: _Part.SetUserAttribute(attName, -1, (string)attValue, Update.Option.Later); break; case NXObject.AttributeType.Time: _Part.SetUserAttribute(attName, -1, (string)attValue, Update.Option.Later); break; case NXObject.AttributeType.Integer: _Part.SetUserAttribute(attName, -1, (int)attValue, Update.Option.Later); break; case NXObject.AttributeType.Boolean: _Part.SetUserAttribute(attName, -1, (int)attValue, Update.Option.Later); break; default: break; } }
private object GetAttribute(string attName, NXObject.AttributeType attType = NXObject.AttributeType.String, int attArrayNumber = -1) { if (_Part == null || !_Part.HasUserAttribute(attName, attType, attArrayNumber)) { return(null); } var attribute = _Part.GetUserAttribute(attName, attType, 1); switch (attType) { case NXObject.AttributeType.String: return(attribute.StringValue); case NXObject.AttributeType.Time: return(attribute.TimeValue); case NXObject.AttributeType.Integer: return(attribute.IntegerValue); case NXObject.AttributeType.Boolean: return(attribute.BooleanValue); default: return(null); } }
/// <summary> /// 设置属性表达式 /// </summary> /// <param name="expName"></param> /// <param name="attrName"></param> /// <param name="type"></param> public static void SetAttrExp(string expName, string attrName, NXObject.AttributeType type) { Part workPart = theSession.Parts.Work; try { Expression exp = workPart.Expressions.GetAttributeExpression(workPart, attrName, type, -1); exp.SetName(expName); } catch (Exception ex) { LogMgr.WriteLog("ExpressionUtils:SetAttrExp:表达式" + expName + " " + ex.Message); } }
/// <summary> /// 设置属性表达式 /// </summary> /// <param name="expName"></param> /// <param name="attrName"></param> /// <param name="type"></param> /// <param name="attNumber">属性组号</param> public static Expression SetAttrExp(string expName, string attrName, NXObject.AttributeType type, int attNumber) { Part workPart = theSession.Parts.Work; try { Expression exp = workPart.Expressions.GetAttributeExpression(workPart, attrName, type, attNumber); exp.SetName(expName); return(exp); } catch (NXException ex) { LogMgr.WriteLog("ExpressionUtils:SetAttrExp:表达式" + expName + " " + ex.Message); throw ex; } }
/// <summary> /// 设置属性表达式 /// </summary> /// <param name="expName"></param> /// <param name="attrName"></param> /// <param name="type"></param> public static Expression SetAttrExp(string expName, string attrName, NXObject.AttributeType type) { Part workPart = theSession.Parts.Work; try { Expression exp = workPart.Expressions.GetAttributeExpression(workPart, attrName, type, -1); if (!expName.Equals(attrName, StringComparison.CurrentCultureIgnoreCase)) { exp.SetName(expName); } return(exp); } catch (NXException ex) { LogMgr.WriteLog("ExpressionUtils:SetAttrExp:表达式" + expName + " " + ex.Message); throw ex; } }