sketchucation logo sketchucation
    • Login
    1. Home
    2. tenquin
    3. Posts
    Oops, your profile's looking a bit empty! To help us tailor your experience, please fill in key details like your SketchUp version, skill level, operating system, and more. Update and save your info on your profile page today!
    🛣️ Road Profile Builder | Generate roads, curbs and pavements easily Download
    T
    Offline
    • Profile
    • Following 0
    • Followers 0
    • Topics 0
    • Posts 6
    • Groups 1

    Posts

    Recent Best Controversial
    • RE: Find and replace multiple components?

      Perdão TIG.
      Você tem razão, eu não estava sabendo usar o código corretamente.
      Agora me parece que está funcionando.
      Obrigado

      posted in Newbie Forum
      T
      tenquin
    • RE: Find and replace multiple components?

      @TIG

      Obrigado mais uma vez por responder.
      Não retorna nenhum erro, porém nenhum resultado também. Segue uma imagem.

      Script.JPG

      Minha intenção é buscar os componentes por atributos dinâmicos ao invés de por nome, se poder me dá uma luz de como ficaria o código assim eu agradeço, se não, depois tentarei editar o código para se adequar ao que desejo.

      posted in Newbie Forum
      T
      tenquin
    • RE: Find and replace multiple components?

      @tig said:

      OK

      Let's consider this...
      The original component is named [let's say] "DC" - so its unique-ified siblings are named DC#1, DC#2 etc...
      So we can search the model's definitions for matching 'patterns' and replace their instances...
      The naming has to be logical, and all instances the same...

      
      > model=Sketchup.active_model
      > defns=model.definitions
      > name="DC" # perhaps you'd use an inputbox to get this 'name' ?
      > defn=defns[name]
      > dcs=defns.find_all{|d| d.name =~ /^#{name}#/ }
      > # note how 'name' starts the match-pattern and has a following #
      > model.start_operation("Un-unique #{name}", true) # one-step undo
      > puts "Un-unique #{name}"
      > dcs.each{|d|
      >   p d.name # to see their names listed in the Ruby Console
      >   d.instances.each{|i| i.definition = defn }
      >   # replace with original
      > }
      > model.commit_operation
      > puts "Done"
      > 
      

      This works within nested components etc...
      You could check that the geometry/size etc of the instance of the original defn matches the instance of the to-be-un-uniqued definition, but that requires more convoluted code...

      Olá TIG

      Desculpe minha insistência.
      Há alguns meses conversamos sobre o código acima, que faz um script que substitui componentes.
      Ainda não consegui fazer com que funcionasse, criei um componente com nome DC e copiei e colei o código no console Sketchup,mas não obtive resultado.
      Estou me dedicando a Ruby, mas mesmo depois de ler o livro Automatic Skechup, não consegui identificar o que está errado...

      posted in Newbie Forum
      T
      tenquin
    • RE: Find and replace multiple components?

      Obrigado mais uma vez TIG!

      Vou estudar mais um pouco e tentar fazer,
      sou novo em programação mas vou tentar até conseguir. rsrs

      👍

      posted in Newbie Forum
      T
      tenquin
    • RE: Find and replace multiple components?

      Olá TIG!
      Boa tarde!
      Obrigado pelo retorno.

      Desculpe se não soube me expressar corretamente, na verdade preciso que o plugin troque todos os componentes que tem um parâmetro específico, no caso o parâmetro "modeloptions=portas inferiores"

      Desde já agradeço.


      Esses seriam os parâmetros de exemplo


      Essa seria o componente a ser trocado, sendo que teria que manter as dimensões lenx, leny, lenz e posições x,y,z....


      Essas seriam as portas de troca e estariam em uma biblioteca...

      posted in Newbie Forum
      T
      tenquin
    • RE: Find and replace multiple components?

      Boa Tarde!

      TIG, poderia nos auxiliar como desenvolver o plugin para substituir portas?
      Desde já agradeço.

      posted in Newbie Forum
      T
      tenquin
    • 1 / 1