0

I import and object C27389_Part into the scene. I search the part by using bpy.ops.object.select_pattern(pattern="*_Part"). That's all good, however it is selected (in red outline) and not active (orange), so I cannot do anything with it at this stage. Please help. I have searched and yet cannot solve this simple riddle. bpy.context.scene.objects.active will not do it.

Michael Teiniker
  • 1,094
  • 1
  • 12
  • 26
  • Suggest try: bpy.context.selected_objects[:] after the import, and get rid of the operator. To make it active, read my answer to one of your previous questions: https://blender.stackexchange.com/questions/132825/python-selecting-object-by-name-in-2-8/132829#132829 ... "# Make the cube the active object" – brockmann Aug 23 '20 at 08:36
  • The object is imported in OBJ format and is part of an assembly of objects and hence it is not selected at all at import. The pattern code detects the object, as it would do with others with a similar name. In this event however there is only one of these objects, so i need not worry about similar objects. Sorry, I can't figure it out. – Michael Teiniker Aug 23 '20 at 09:36
  • All objects are selected after the import, always. No need for that operator (pattern detection) as well as no need to say sorry... Since you're searching for one specific object, suggest iterate through all the imported objects and check for their name -> https://docs.python.org/3/library/stdtypes.html#str.endswith – brockmann Aug 23 '20 at 13:24

1 Answers1

-1

This works after selecting the pattern.

OB = bpy.context.selected_objects[0]
OB.select_set(state=True)
bpy.context.view_layer.objects.active = OB
Michael Teiniker
  • 1,094
  • 1
  • 12
  • 26