Jump to content
Sign in to follow this  
Bachelor22

Input Mask to choose Elements or Nodes

Recommended Posts

Hey guys,

 

I want to create a .tcl-script, that opens an input mask in HyperMesh where the user can select if he wants to mark elements or nodes (e.g. for force or pressure creation). So by clicking on Nodes he should be able to mark the relevant nodes, by clicking on Elements he should be able to mark the relevant elements.

Could you help me out with that problem?

 

Kind regards

Simon

Share this post


Link to post
Share on other sites

No, not really.

 

I'm trying to customize the process of setting up a model. Before actually marking the entities he's interested in, the user should have the possibility to choose if he wants to bring the load on elements (like it is needed for a pressure) or on nodes (like it is needed for a force).

 

If he wants to mark elements, this part of the code should be active:

*createentity loadcols name=loadcol1
*drawlistresetstyle
*setvalue loadcols id=2 name="Mechanische Belastung"
*createmarkpanel elems 1 "Wählen Sie die Knoten der Belastung aus."
set mag_val [hm_getfloat "Belastung =" "Betrag des Pressure (MPa):" 2000]

*pressuresonentity_curve elements 1 1 0 1 0 $mag_val 30 1 0 0 0 0 0

 

If he wants to mark nodes, this part should be active:

# *setvalue loadcols id=2 name="Mechanische Belastung"
# *startnotehistorystate {Created Force }
# *createmarkpanel nodes 1 "Wählen sie die Knoten der Belastung aus."
# set mag_val [hm_getfloat "Belastung =" "Betrag der Kraft (N):" 300]
# *loadcreateonentity_curve nodes 1 1 1 0 $mag_val 0 0 0 $mag_val 0 0 0 0 0
# *endnotehistorystate {Created Force }

 

I hope this made it a bit clearer.

 

Thanks in advance,

Simon

 

 

Share this post


Link to post
Share on other sites

Ok, so basically you want an user input to decide which type of selection must be used.

This can be done in a variety of ways, using simpler forms or the more elegant ones with graphic interface.

 

Using a simple yes or no question, this would be like so:

set answer [tk_messageBox -message "What type of load would you like to input? \n Yes: Force \n No: Pressure" -type yesno -icon question]
switch -- $answer {
    yes { "Code for Force load" }
    no  { "Code for Pressure load" }
}

If you want to have something nicer (which requires more work), you can use for example a radiobutton.

But in this case you need to build the hole interface for the user navigation like confirmation and return buttons and maybe even other options.

A code snippet to use a radiobutton would be like so:

 

#Get preview frame
set w [hwtk::demo::getpreviewframe]

set w [hwtk::frame $w.frame]
pack $w -anchor nw -padx 4

set ::feedback ""
set ::currentLoad "Force"

pack [hwtk::labelframe $w.lf -text "Select the type of Loading" -padding 2] -anchor nw

foreach load {Force Pressure} {
    pack [hwtk::radiobutton $w.lf.b$load -text $load -variable ::currentLoad \
        -value $load \
        -command "set ::feedback $load" \
        -help "$load"] -side top -pady 2 -fill x
}

pack [hwtk::label $w.label -text "Active Load:"] \
    [hwtk::label $w.label1 -textvariable ::feedback] -side left -pady 4

Hopefully this is helpful.

vipin and Bachelor22 like this

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...