🎉Community Raffle - Win $25

An exclusive raffle opportunity for active members like you! Complete your profile, answer questions and get your first accepted badge to enter the raffle.
Join and Win

TCL auto self-intersection fixing

Hi,

 

I am working with 3D tetra meshes with small amount of self-intersections and would like to remove the intersection with tcl scripts (or command file) using HyperMesh's 'Automatic Self-intersection Fix' tool (see pic attached).

 

I realised that the command for checking penetration and self-intersection is *checkpenetration elements 1 0 1 1 0 0 0 0  . However, there is no command can be found for the auto-fixing feature. Any idea on this?

 

Many thanks,

Wensong

 

PS. I found on internet that the way of saving checkpenetration results is as following:

*checkpenetration elements 1 0 1 0 0 0 0 0
::hmCollisionGui::FindTreeSelection 0 0 0 0 0
*marktousermark elements 1

Could anyone please kindly explain to me what is this ::hmCollisionGui:: command and is it possible that the auto-fixing command is also under this command branch? 

<?xml version="1.0" encoding="UTF-8"?>post-32676-0-11752600-1428560995_thumb.j

Find more posts tagged with

Sort by:
1 - 11 of 111

    Hi,

    I have attached pdf for Hmcollision check.

    Regards

    Rahul R

    Unable to find an attachment - read this blog

    Hi,

    I have attached pdf for Hmcollision check.

    Regards

    Rahul R

     

    Hi Rahul,

     

    Thanks for the pdf. That's very much appreciated!

     

    I wonder if you by any chance have idea on the intersection fixing command too?

     

    Many thanks,

    Wensong

    Hi,

     

    Try this:  ::hwat::utils::PenetrationCheck

    Hi Prakash,

     

    Do you have a description for this command? it appears like there are few arguments required to be filled in. 

     

    Cheers,

    Wensong

    Hi,

    In 13.0, we have the upgraded hm_collision* APIs.

     

    It has the features to detect the vector and depth of penetration area.Here is a sample model and Tcl script that shows how to use these APIs and get the relevant data.

     

    Regards

    Rahul R

    Unable to find an attachment - read this blog

    Hi,

    In 13.0, we have the upgraded hm_collision* APIs.

     

    It has the features to detect the vector and depth of penetration area.Here is a sample model and Tcl script that shows how to use these APIs and get the relevant data.

     

    Regards

    Rahul R

     

    Hi Rahul,

     

    Yes, I am now able to get relevant information about the self-intersection elements. However, I still need to figure out a way to AUTO FIX the intersections. The reason is that I have a number of meshed to remesh and it is not practical to remove those self-intersections manually one by one.

     

    Since HM has this auto-fixing feature in GUI (as shown in the screen shot with the original post), do you have any corresponding tcl commands for it? so that I not only can find where the element intersections happen but also to be able to fix it automatically through scripting.

     

    I hope I explained the problem clear enough.

     

    Cheers,

    Wensong

    Hi,

    Unfortunately there aren't any commands yet for auto fixing intersections or penetrations.

    All you can do so far is to use the tools in the penetrations panel interactively.

     

    Regards

    Rahul R

    tinhUser: "tinh"
    Altair Community Member
    Updated by tinh

    Hi Rahul,

     

    Yes, I am now able to get relevant information about the self-intersection elements. However, I still need to figure out a way to AUTO FIX the intersections. The reason is that I have a number of meshed to remesh and it is not practical to remove those self-intersections manually one by one.

     

    Since HM has this auto-fixing feature in GUI (as shown in the screen shot with the original post), do you have any corresponding tcl commands for it? so that I not only can find where the element intersections happen but also to be able to fix it automatically through scripting.

     

    I hope I explained the problem clear enough.

     

    Cheers,

    Wensong

     

    Hi,

    if the penetration tab is existing, you can invoke auto-fix by below command:

     

    hmCollisionGui::AutoFixDo

    Hi,

    if the penetration tab is existing, you can invoke auto-fix by below command:

     

    hmCollisionGui::AutoFixDo

     

    Hi Tinh,

     

    This is truly helpful! Thank you!

     

    I wonder if you also have any idea on how to 'select' the first item in the result tree of the penetration tab? The AutoFixDo command you provided requires the intersection item to be selected first.

     

    This is the very last bit missing.

     

    Cheers,

    Wensong

    <?xml version="1.0" encoding="UTF-8"?>post-32676-0-57217400-1430112888_thumb.j

    OK it is solved.

     

    For item selection in the result tree of penetration tab:

    hmCollisionGui::FindTreeSelection 0 0 0 0 0

     

    For autofixing of self-intersections and penetrations:

    hmCollisionGui::AutoFixDo

     

    Thank you all for your help. Hope HM scripting reference guide can be a bit more comprehensive in the future in a way that all these GUI commands are covered too.

     

    Cheers,

    Wensong

    But how can we get the depth value