NX Journal タグからオブジェクトを取得
2022/01/06 categories:NX Journal| tags:NX Journal|Python|
Pythonでタグからオブジェクトを取得するプログラムを作成してみました。
概要
NX journalではほとんどすべてのオブジェクトにタグがあるようで、特定の関数では取得結果はオブジェクトではなくタグが返ってきたりします。その場合はタグからオブジェクトを取得して処理することになります。タグからオブジェクトを取得する例はVBではすぐ見つけられ、以下の通りです。
dim taggedObject1 as TaggedObject = NXOpen.Utilities.NXObjectManager.Get(tag)
Pythonの場合は微妙にクラスが違い、以下のように取得できるようです。
tagged_object = NXOpen.TaggedObjectManager.GetTaggedObject(tag)
実行結果
下記コードを実行すると、以下のように元のオブジェクトと取得後のオブジェクトが一致していることが確認でき、タグからオブジェクトを取得出来ていることが確認できます。
<NXOpen.Part object at 0x000000002D806AB0>, <NXOpen.Part object at 0x000000002D806AB0>, 46885, 46885
Pythonコード
import NXOpen
def main() :
theSession = NXOpen.Session.GetSession()
workPart = theSession.Parts.Work
lw = theSession.ListingWindow
lw.Open()
tagged_object = NXOpen.TaggedObjectManager.GetTaggedObject(workPart.Tag)
lw.WriteLine('{}, {}, {}, {}'.format(workPart, tagged_object, workPart.Tag, tagged_object.Tag))
if __name__ == '__main__':
main()