Order of objects selected by SSGET "_F"

Dear,

Please correct me if I am wrong about the selection process using FENCE (SSGET "_F" ....)

BricsCAD returns the elements in the order they were created in the database.

Autocad returns in order following the sequence of points in the list passed as a parameter.

How can I get the return in BrisCAD following the points in the list, just as it happens in Autocad?

Does anyone know any code or some way to reset the storage order of the selected objects.

Thank you in advance for your comments.

Ney Paula

Comments

  • @Ney_Paula ,
    Wow, that is likely an issue for the underlying libraries so long term fix range.
    I never realized acad did that, and its a super useful feature for civils that cut through things "in order" of the fence.
    I wrote my own "intersect linear with other linears" tool, but its limited to what I handled.
    I think you can do a work around with the vla intersect curve functions out there.
    You make a temp pline and have it do the fence selection, then get entities and intersect with your pline to figure the order.
    That's not trivial, so not saying a couple hours work.
    Search the adesk and swamp forums as I know I have seen it.
    thx

  • Muito obrigado James,

    Era isso que eu temia. Terei que analisar para decidir se compensa o trabalho. 

    Mas uma coisa é certa. Terei que me dedicar mais nos testes das rotinas que uso (SSGET "_F"...

    De qualquer forma agradeço imensamente pela atenção dedicada.

    Ney Paula

  • @Ney_Paula,
    I had three years of spanish in high school, which helped me copy and paste your message into an online translator :)
    I agree a task like yours is tough.
    If bricsys is watching, even something this "minor" could be worth paying for autocad each year.
    We bill $150 an hour, and I bet the workaround creation will take more than 10 hours of programming.
    So billable people get hit hard by long automation tasks.
    We need to do a support request on this to get the fix in the pipeline.
    thx

  • If you check a fence selection set with the ssnamex function, you will notice that the points where the fence intersects the objects can be retrieved. With these points and the point list of the fence itself it should be possible to sort the selection set.

  • @Roy Klein Gebbinck
    Great idea, I never noticed that. wow.

  • Gostaria de agradecer ao fórum, em especial ao Roy Klein  por me informar a existência da função SSNAME, que viabilizou solução do problema. 

    Deixo em anexo minha colaboração para quem esteja sofrendo com o mesmo problema. Segue o DWG de exemplo e o código LSP para ser usado no BrisCAD, emulando o uso do SSGET "_F" igual ao Autocad.

    Ressalto que só testei o código para atender ao meu propósito específico, então cuidado ao utilizá-lo, principalmente no que se refere a performance.

    Esse espírito de colaboração é que nós move pra frente.

    Obrigado.

  • Be careful if fence does a "U" or loop, the distance to pick point can return wrong order and getdistatpoint would be better compared to say a pline of points used for fence as it will get true distance away from 1st point.