Continue to Site

Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations cowski on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

API on Python to modify the reference node rigid elements

Status
Not open for further replies.

Mmelloc

New member
Jan 18, 2017
2
I'm having some troubles when I try to modify the reference node of a rigid element
or create a new one.
I used the "Node" property of the element object, as depicted in the following code line, where 2 is just an example:

feElem.Node(0) = 2

Quoting pyFemap:
"
# The method Node is actually a property, but must be used as a method to correctly pass the arguments
def Node(self, nVectorIndex=defaultNamedNotOptArg):
return self._oleobj_.InvokeTypes(18002, LCID, 2, (3, 0), ((3, 1),),nVectorIndex
)

"
Since one must use Node as a method, it is not possible to assign a value to it. This way, I am not being able neither to modify nor create a RBE.

Does anyone know a way around it?
 
Replies continue below

Recommended for you

" feElem.SetNode(0,2) " should do the trick.

This is a common issue writing FEMAP API through Python, since Python makes a harder distinction between how properties and methods pass arguments. Typically any time you want to write a value to a property, there is a corresponding method in the PyFemap library, of the type " [property] / Set[property] ". Take note that these "Set[property]" methods are not methods within the FEMAP API, but are purely PyFemap (Python) functions created to make Python behave syntactically similar to the FEMAP API.

Best,
Nick
 
It did the trick! It works perfectly now.

Thank you very much, Nick!

Best regards,
Matheus
 
then you should award nick's post with an LPS "great post!"

another day in paradise, or is paradise one day closer ?
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor