Is there a way to split lots of 1-D elements all at once

Altair Forum User
Altair Forum User
Altair Employee
edited March 2021 in Community Q&A

Hello everyone,

 

I am currently working on a lattice structure made of beam elements and I would like to split all those elements into two, in order to increase the mesh's density. So far I have found how to split 1-D elements by drawing a line... but considering there are close to 26 000 elements, this method is definitely not ideal here !

 

So my question is: is there an easy way to select all the 1-D elements and split them into two 'in one click' ?

 

Thank you in advance for your time.

 

Matthieu

Tagged:

Answers

  • tinh
    tinh Altair Community Member
    edited June 2017

    Hi

    a simple Tcl script may help you:

     *createmarkpanel elems 1 'Select 1d (bar2) elements:' *createmark elems 2 'by config' bar2 *markintersection elems 1 elems 2 set ENum  [hm_marklength elems 1] if {$ENum} {      eval *createarray $ENum [lrepeat $ENum 2]      *elementmarksplitwith1D 1 1 $ENum } *clearmark elems 1; *clearmark elems 2

         

  • Altair Forum User
    Altair Forum User
    Altair Employee
    edited June 2017

    Hello,

     

    Thank you for your answer; I will look into it (might not be instantaneous since I started using HyperWorks only a month ago)

     

    Regards,

     

    Matthieu

  • Altair Forum User
    Altair Forum User
    Altair Employee
    edited June 2017

    Hi Matthieu,

     

    Here is a macro for splitting 1D elements in 2 in one shot . I hope it will solve your problem and time

     

    *createmarkpanel elements 1 'select beams to split'
    #set elem_list [hm_getmark elements 1]
    set num [hm_marklength elements 1]

    hm_commandfilestate 0
    hm_blockerrormessages 1
    hm_blockmessages 1
    *entityhighlighting 0
    hwbrowsermanager view flush false

    eval *createarray $num [string repeat '2 ' $num]
    *elementmarksplitwith1D 1 1 $num

    *entityhighlighting 1
    hm_commandfilestate 1
    hm_blockerrormessages 0
    hm_blockmessages 0
    hwbrowsermanager view flush true

  • Altair Forum User
    Altair Forum User
    Altair Employee
    edited June 2017

    Thank you for your help ! I will try the macro as soon as I get the time, as I am quite busy on other projects at the same time

     

    Regards,

     

    Matthieu

  • sanket_patil
    sanket_patil Altair Community Member
    edited March 2021

    Hello All,

    Can anyone please explain me which parameters are considered in *elementmarksplitwith1D command?

    Before this command we are creating one array, which values we can use in this array?

    Thanks & Regards,

    Sanket Sunil Patil

     

  • Adriano Koga_20259
    Adriano Koga_20259 New Altair Community Member
    edited March 2021

    Hello All,

    Can anyone please explain me which parameters are considered in *elementmarksplitwith1D command?

    Before this command we are creating one array, which values we can use in this array?

    Thanks & Regards,

    Sanket Sunil Patil

     

    if i'm not mistaken this array of repeated '2' means that for each element 1d, you will split them into '2'.