NX Journal モデルを新規作成

Share on:

モデルを新規作成するプログラムを作成しました。

theSessionからFileNew()でFileNewオブジェクトを作成します。そして取得したオブジェクトに必要な値を設定していきます。

1theSession.Parts.FileNew()

Teamcenter上にモデルを作成する場合はtheSession.PdmSession.CreateCreateOperationBuilder()を使用する必要があるみたいです。

Pythonコード

 1import NXOpen
 2import NXOpen.PDM
 3 
 4def main():
 5 
 6    theSession  = NXOpen.Session.GetSession()
 7 
 8    fileNew1 = theSession.Parts.FileNew()
 9    fileNew1.TemplateFileName = "_TemplateFileName_"
10    fileNew1.UseBlankTemplate = False
11    fileNew1.ApplicationName = "ModelTemplate"
12    fileNew1.Units = NXOpen.Part.Units.Millimeters
13    fileNew1.RelationType = "master"
14    fileNew1.UsesMasterModel = "No"
15    fileNew1.TemplateType = NXOpen.FileNewTemplateType.Item
16    fileNew1.TemplatePresentationName = "_TemplatePresentationName_"
17    fileNew1.ItemType = "Item"
18    fileNew1.Specialization = ""
19    fileNew1.SetCanCreateAltrep(False)
20    fileNew1.MasterFileName = ""
21    fileNew1.MakeDisplayedPart = True
22    fileNew1.DisplayPartOption = NXOpen.DisplayPartOption.AllowAdditional
23 
24    partOperationCreateBuilder1 = theSession.PdmSession.CreateCreateOperationBuilder(NXOpen.PDM.PartOperationBuilder.OperationType.Create)
25    partOperationCreateBuilder1.SetOperationSubType(NXOpen.PDM.PartOperationCreateBuilder.OperationSubType.FromTemplate)
26    partOperationCreateBuilder1.SetModelType("master")
27    partOperationCreateBuilder1.SetItemType("Item")
28    partOperationCreateBuilder1.DefaultDestinationFolder = ":Newstuff"
29    partOperationCreateBuilder1.SetOperationSubType(NXOpen.PDM.PartOperationCreateBuilder.OperationSubType.FromTemplate)
30    partOperationCreateBuilder1.ValidateLogicalObjectsToCommit()
31    partOperationCreateBuilder1.CreateSpecificationsForLogicalObjects( [partOperationCreateBuilder1.CreateLogicalObjects()] )
32 
33    fileNew1.SetPartOperationCreateBuilder(partOperationCreateBuilder1)
34 
35    fileNew1.Destroy()
36    theSession.ApplicationSwitchImmediate("UG_APP_MODELING")
37 
38if __name__ == '__main__':
39    main()

関連記事