You are on page 1of 6

NXOpen.Session theSession = NXOpen.Session.

GetSession();
NXOpen.Part workPart = theSession.Parts.Work;
NXOpen.Part displayPart = theSession.Parts.Display;
theSession.Parts.SetWork(workPart);

Body[] theBody = AskAllBodies(workPart);

Unit[] theUnits = {
workPart.UnitCollection.GetBase("Area"),
workPart.UnitCollection.GetBase("Volume"),
workPart.UnitCollection.GetBase("Mass"),
workPart.UnitCollection.GetBase("Length") };

MeasureBodies theMeasureBodies =
workPart.MeasureManager.NewMassProperties(theUnits, 0.99, theBody);
NXOpen.Session.UndoMarkId markId1;
markId1 = theSession.SetUndoMark(NXOpen.Session.MarkVisibility.Visible,
"Start");

NXOpen.NXObject[] objects1 = new NXOpen.NXObject[1];


NXOpen.Assemblies.Component component1 =
(NXOpen.Assemblies.Component)workPart.ComponentAssembly.RootComponent.FindObject("C
OMPONENT 011544/A 1");
objects1[0] = component1;
NXOpen.Assemblies.AssembliesGeneralPropertiesBuilder
assembliesGeneralPropertiesBuilder1;
assembliesGeneralPropertiesBuilder1 =
workPart.PropertiesManager.CreateAssembliesGeneralPropertiesBuilder(objects1);

NXOpen.Assemblies.SelectComponentList selectComponentList1;
selectComponentList1 =
assembliesGeneralPropertiesBuilder1.SelectedObjects;

NXOpen.Assemblies.Component[] objects2;
objects2 = selectComponentList1.GetArray();

assembliesGeneralPropertiesBuilder1.LayerOption =
NXOpen.Assemblies.AssembliesGeneralPropertiesBuilder.LayerOptions.Mixed;

assembliesGeneralPropertiesBuilder1.QuantityType =
NXOpen.Assemblies.AssembliesGeneralPropertiesBuilder.QuantityOptions.AsRequired;

assembliesGeneralPropertiesBuilder1.QuantityType =
NXOpen.Assemblies.AssembliesGeneralPropertiesBuilder.QuantityOptions.Number;

NXOpen.NXObject[] objects3 = new NXOpen.NXObject[1];


objects3[0] = component1;
NXOpen.AttributePropertiesBuilder attributePropertiesBuilder1;
attributePropertiesBuilder1 =
theSession.AttributeManager.CreateAttributePropertiesBuilder(workPart, objects3,
NXOpen.AttributePropertiesBuilder.OperationType.None);

attributePropertiesBuilder1.IsArray = false;

attributePropertiesBuilder1.IsArray = false;

attributePropertiesBuilder1.IsArray = false;

attributePropertiesBuilder1.DataType =
NXOpen.AttributePropertiesBaseBuilder.DataTypeOptions.String;

attributePropertiesBuilder1.Units = "MilliMeter";

NXOpen.NXObject[] objects4 = new NXOpen.NXObject[1];


objects4[0] = component1;
NXOpen.MassPropertiesBuilder massPropertiesBuilder1;
massPropertiesBuilder1 =
workPart.PropertiesManager.CreateMassPropertiesBuilder(objects4);

NXOpen.SelectNXObjectList selectNXObjectList1;
selectNXObjectList1 = massPropertiesBuilder1.SelectedObjects;

NXOpen.NXObject[] objects5;
objects5 = selectNXObjectList1.GetArray();

massPropertiesBuilder1.LoadPartialComponents = true;

massPropertiesBuilder1.Accuracy = 0.98999999999999999;

NXOpen.NXObject[] objects6 = new NXOpen.NXObject[1];


objects6[0] = component1;
NXOpen.ObjectGeneralPropertiesBuilder objectGeneralPropertiesBuilder1;
objectGeneralPropertiesBuilder1 =
workPart.PropertiesManager.CreateObjectGeneralPropertiesBuilder(objects6);

NXOpen.SelectNXObjectList selectNXObjectList2;
selectNXObjectList2 = objectGeneralPropertiesBuilder1.SelectedObjects;

objectGeneralPropertiesBuilder1.Name = "011544";

objectGeneralPropertiesBuilder1.NameLocationSpecified = false;

objectGeneralPropertiesBuilder1.Index = 1;

NXOpen.NXObject[] objects7 = new NXOpen.NXObject[1];


objects7[0] = component1;
NXOpen.Assemblies.AssembliesParameterPropertiesBuilder
assembliesParameterPropertiesBuilder1;
assembliesParameterPropertiesBuilder1 =
workPart.PropertiesManager.CreateAssembliesParameterPropertiesBuilder(objects7);

NXOpen.Assemblies.SelectComponentList selectComponentList2;
selectComponentList2 =
assembliesParameterPropertiesBuilder1.SelectedObjects;

NXOpen.Assemblies.Component[] objects8;
objects8 = selectComponentList2.GetArray();

NXOpen.Assemblies.SelectComponentList selectComponentList3;
selectComponentList3 =
assembliesParameterPropertiesBuilder1.SelectedObjects;

NXOpen.Assemblies.Component[] objects9;
objects9 = selectComponentList3.GetArray();

assembliesGeneralPropertiesBuilder1.LayerOption =
NXOpen.Assemblies.AssembliesGeneralPropertiesBuilder.LayerOptions.OriginalLayer;
assembliesGeneralPropertiesBuilder1.IntegerQuantity = 1;

assembliesGeneralPropertiesBuilder1.RealQuantity = 1.0;

assembliesParameterPropertiesBuilder1.Arrangements =
NXOpen.Assemblies.AssembliesParameterPropertiesBuilder.ArrangementOptions.SamePosit
ionInAll;

attributePropertiesBuilder1.DateValue.FromDateItem.Year = "2017";

attributePropertiesBuilder1.DateValue.ToDateItem.Year = "2017";

NXOpen.NXObject[] objects10 = new NXOpen.NXObject[1];


objects10[0] = component1;
attributePropertiesBuilder1.SetAttributeObjects(objects10);

attributePropertiesBuilder1.Units = "MilliMeter";

theSession.SetUndoMarkName(markId1, "Component Properties Dialog");

NXOpen.Assemblies.SelectComponentList selectComponentList4;
selectComponentList4 =
assembliesGeneralPropertiesBuilder1.SelectedObjects;

NXOpen.Assemblies.Component[] objects11;
objects11 = selectComponentList4.GetArray();

NXOpen.Assemblies.SelectComponentList selectComponentList5;
selectComponentList5 =
assembliesGeneralPropertiesBuilder1.SelectedObjects;

NXOpen.Assemblies.Component[] objects12;
objects12 = selectComponentList5.GetArray();

NXOpen.Assemblies.SelectComponentList selectComponentList6;
selectComponentList6 =
assembliesGeneralPropertiesBuilder1.SelectedObjects;

NXOpen.Assemblies.Component[] objects13;
objects13 = selectComponentList6.GetArray();

NXOpen.Assemblies.SelectComponentList selectComponentList7;
selectComponentList7 =
assembliesGeneralPropertiesBuilder1.SelectedObjects;

NXOpen.Assemblies.Component[] objects14;
objects14 = selectComponentList7.GetArray();

NXOpen.Assemblies.SelectComponentList selectComponentList8;
selectComponentList8 =
assembliesGeneralPropertiesBuilder1.SelectedObjects;

NXOpen.Assemblies.Component[] objects15;
objects15 = selectComponentList8.GetArray();

bool nonGeometricState1;
nonGeometricState1 = component1.GetNonGeometricState();

assembliesGeneralPropertiesBuilder1.ReferenceComponent =
NXOpen.Assemblies.AssembliesGeneralPropertiesBuilder.ReferenceComponentOptions.No;

NXOpen.Assemblies.SelectComponentList selectComponentList9;
selectComponentList9 =
assembliesGeneralPropertiesBuilder1.SelectedObjects;

NXOpen.Assemblies.Component[] objects16;
objects16 = selectComponentList9.GetArray();

assembliesGeneralPropertiesBuilder1.Hidden =
NXOpen.Assemblies.AssembliesGeneralPropertiesBuilder.HiddenOptions.No;

NXOpen.Assemblies.SelectComponentList selectComponentList10;
selectComponentList10 =
assembliesGeneralPropertiesBuilder1.SelectedObjects;

NXOpen.Assemblies.Component[] objects17;
objects17 = selectComponentList10.GetArray();

NXOpen.Assemblies.SelectComponentList selectComponentList11;
selectComponentList11 =
assembliesGeneralPropertiesBuilder1.SelectedObjects;

NXOpen.Assemblies.Component[] objects18;
objects18 = selectComponentList11.GetArray();

attributePropertiesBuilder1.DateValue.DateItem.Day =
NXOpen.DateItemBuilder.DayOfMonth.Day19;

attributePropertiesBuilder1.DateValue.DateItem.Month =
NXOpen.DateItemBuilder.MonthOfYear.Jan;

attributePropertiesBuilder1.DateValue.DateItem.Year = "2018";

attributePropertiesBuilder1.DateValue.DateItem.Time = "00:00:00";

massPropertiesBuilder1.UpdateOnSave =
NXOpen.MassPropertiesBuilder.UpdateOptions.Yes;

NXOpen.SelectNXObjectList selectNXObjectList3;
selectNXObjectList3 = objectGeneralPropertiesBuilder1.SelectedObjects;

NXOpen.SelectNXObjectList selectNXObjectList4;
selectNXObjectList4 = objectGeneralPropertiesBuilder1.SelectedObjects;

NXOpen.Assemblies.SelectComponentList selectComponentList12;
selectComponentList12 =
assembliesParameterPropertiesBuilder1.SelectedObjects;

NXOpen.Assemblies.Component[] objects19;
objects19 = selectComponentList12.GetArray();

NXOpen.Assemblies.SelectComponentList selectComponentList13;
selectComponentList13 =
assembliesParameterPropertiesBuilder1.SelectedObjects;

NXOpen.Assemblies.Component[] objects20;
objects20 = selectComponentList13.GetArray();
NXOpen.NXObject[] objects21 = new NXOpen.NXObject[0];
NXOpen.AttributePropertiesBuilder attributePropertiesBuilder2;
attributePropertiesBuilder2 =
theSession.AttributeManager.CreateAttributePropertiesBuilder(workPart, objects21,
NXOpen.AttributePropertiesBuilder.OperationType.None);

NXOpen.NXObject[] objects22 = new NXOpen.NXObject[1];


objects22[0] = component1;
attributePropertiesBuilder2.SetAttributeObjects(objects22);

attributePropertiesBuilder2.Title = "NX_Mass";

attributePropertiesBuilder2.Category = "Materials";

attributePropertiesBuilder2.DataType =
NXOpen.AttributePropertiesBaseBuilder.DataTypeOptions.Number;

attributePropertiesBuilder2.Units = "Kilogram";

attributePropertiesBuilder2.NumberValue = theMeasureBodies.Mass;

bool changed1;
changed1 = attributePropertiesBuilder2.CreateAttribute();

NXOpen.Session.UndoMarkId markId2;
markId2 =
theSession.SetUndoMark(NXOpen.Session.MarkVisibility.Invisible, "Component
Properties");

theSession.DeleteUndoMark(markId2, null);

NXOpen.Session.UndoMarkId markId3;
markId3 =
theSession.SetUndoMark(NXOpen.Session.MarkVisibility.Invisible, "Component
Properties");

NXOpen.NXObject nXObject1;
nXObject1 = assembliesGeneralPropertiesBuilder1.Commit();

NXOpen.Session.UndoMarkId markId4;
markId4 = theSession.SetUndoMark(NXOpen.Session.MarkVisibility.Visible,
"Update Attribute Properties");

int nErrs1;
nErrs1 = theSession.UpdateManager.DoUpdate(markId4);

NXOpen.MassPropertiesBuilder.UpdateOptions updateoption1;
updateoption1 = massPropertiesBuilder1.UpdateOnSave;

NXOpen.NXObject nXObject2;
nXObject2 = massPropertiesBuilder1.Commit();

NXOpen.NXObject nXObject3;
nXObject3 = objectGeneralPropertiesBuilder1.Commit();

NXOpen.NXObject nXObject4;
nXObject4 = assembliesParameterPropertiesBuilder1.Commit();

NXOpen.Session.UndoMarkId id1;
id1 =
theSession.GetNewestUndoMark(NXOpen.Session.MarkVisibility.Visible);

int nErrs2;
nErrs2 = theSession.UpdateManager.DoUpdate(id1);

theSession.DeleteUndoMark(markId3, null);

theSession.SetUndoMarkName(markId1, "Component Properties");

assembliesGeneralPropertiesBuilder1.Destroy();

attributePropertiesBuilder1.Destroy();

massPropertiesBuilder1.Destroy();

objectGeneralPropertiesBuilder1.Destroy();

assembliesParameterPropertiesBuilder1.Destroy();

attributePropertiesBuilder2.Destroy();

theSession.DeleteUndoMark(id1, null);

You might also like