cancel
Showing results for 
Search instead for 
Did you mean: 

Listing/accessing detailed info in laminate composite data

Experimenter
Experimenter

We are trying to access the complete data of the laminate composite setting through VB script with batch mode. We found that certain actions could not be recorded as journals (for example copying an existing ply into a new one). I am wondering if anyone have the experience of handling the following tasks.

 

1. Is there any way to list/access all layups in a model with VB script, without knowing any information in advance ?
2. Is there any way to list/access all plies in a layup with VB script, without knowing any information in advance ?
3. When creating a new ply with GUI, the user can just copy the old one to a new one, and all the settings will go with it.
Is there any way to perform this action with VB script, without knowing any information in the old ply in advance ?
4. If 3 is not possible, then maybe we have to copy all the settings one by one. Then we will have to look at the class definition of the ply definition. Where can we find such documentation ?

 

Any help will be greatly appreciated.

 

Regards

Chen

 

3 REPLIES

Re: Listing/accessing detailed info in laminate composite data

Phenom
Phenom

After a quick look at the docs, I think 1 & 2 is possible; if so, 3 4 should also be possible.

 

You can access the physical property tables through the CAE part, the laminates are a special type of physical property table. Once you have a laminate object, you can access its ply groups and the plies in each group.

 

edit: originally typed "3" in first sentence, when I meant "4"

Re: Listing/accessing detailed info in laminate composite data

Experimenter
Experimenter

We have managed to resolve 1 and 2. I have been told that 3 is not possible, so we have been trying to implement 4.  But now we are having big problems with 4. This is why

 

When the GUI is defining the elements/area that the ply is applied on, it is using (through journal recording) 

NXOpen.TaggedObject

Then “NXOpen.CAE.FEModel.Find” will be used to identify the user-select element (for example Element[122]). It will then be feed into “NXOpen.TaggedObject”

 

However under the already-defined ply, we can only find

“NXOpen.CAE.LaminateSelectEntitiesBuilder.FaceSelection”

For such information.

 

That is, the user pick the ply areas through elements, but it was finally stored/saved into NX database in FaceSelection

Now there are two problems here

(1) We have tried different approach. But we can’t find a way to copy “.FaceSelection” from one ply to another new one (possible that we have done it in a wrong way). Is it possible to do this  ?

(2) If (1) is not possible, is there any way we can track the “FaceSelection” back into the element level, and then use “NXOpen.CAE.FEModel.Find” to apply these elements one by one ?

 

Thanks again for the reply and help.

 

Regards

Chen

Re: Listing/accessing detailed info in laminate composite data

Siemens Phenom Siemens Phenom
Siemens Phenom

A common technique in NXOpen for finding out how something was created is to create a Builder of the appropriate type, and pass in the existing object during creation, and then query the builder. Something like this:

 

myThingBuilder = CreateThingBuilder(theExistingThing)

 

Then on myThingBuilder, you would have various properties and methods you could examine. In the case of the LaminateSelectEntitiesBuilder -> SelectionList is typed as SelectTaggedObjectList, which has a method called GetSelectObjectArray(), which the docs say “Returns the list of SelectObjects in the selection list.”

 

But in this case, CreateLaminateSelectEntitiesBuilder() does not accept any arguments, so there is no way to tell it to create the builder with the existing objects!

 

Based on this, I don’t see a way to do what you want, but if there is another way, perhaps someone with more NXOpen.CAE expertise will chime in.