Есть ли в Google Sketchup командная строка для экспорта в формат 3ds или fbx?

Я ищу способ конвертировать сразу несколько файлов skp, kmz или dae в формат 3ds или fbx. В Sketchup Pro вы можете экспортировать как ... 3ds или fbx, но это займет слишком много времени, чтобы открыть каждый файл и экспортировать его. Есть ли в Sketchup командная строка или сценарий, который можно использовать для автоматизации этого процесса? Спасибо


person odle    schedule 09.03.2011    source источник


Ответы (1)


вам нужно вызвать Sketchup из командной строки, указав скрипт для немедленного запуска

sketchup.exe -RubyStartup d:\scripts\runexport.rb

в вашем ruby-скрипте (runexport.rb) вы можете

  1. загрузить свою модель. См. http://code.google.com/apis/sketchup/docs/ourdoc/model.html#import

  2. экспортировать свою модель. См. http://code.google.com/apis/sketchup/docs/ourdoc/model.html#export

  3. и, наконец, закройте Sketchup. См. http://forums.sketchucation.com/viewtopic.php?f=180&t=29162

Для рекурсивного обхода каталога попробуйте этот рубиновый код (из Википедии)

Сопоставление с образцом с использованием регулярных выражений

#define a recursive function that will traverse the directory tree
def printAndDescend(pattern)
  #we keep track of the directories, to be used in the second, recursive part of this function
  directories=[]
  Dir['*'].sort.each do |name|
    if File.file?(name) and name[pattern]
      puts(File.expand_path(name))
    elsif File.directory?(name)
      directories << name
    end
  end
  directories.each do |name|
    #don't descend into . or .. on linux
    Dir.chdir(name){printAndDescend(pattern)} if !Dir.pwd[File.expand_path(name)]
  end
end
#print all ruby files
printAndDescend(/.+\.rb$/)
person PA.    schedule 10.03.2011
comment
это отлично сработало, но как мне сделать пакетный импорт из папки и экспортировать их, используя их собственное имя файла. извините, но я новичок в Ruby. Спасибо - person odle; 14.03.2011
comment
это означает, как передать параметры командной строки запускающему ruby-скрипту ... и я считаю, что ответ - нет. Итак, вам нужно найти способ представить в вашем скрипте список файлов, ранее созданных летучей мышью, которая вызывает Sketchup. - person PA.; 14.03.2011
comment
нет, я больше думал о том, чтобы запустить командную строку один раз, но в файле .rb есть некоторый код, который получает список файлов из каталога, импортирует и экспортирует их. Я искал кое-что с Dir[*].each {}, но еще не заработал. Думаешь, это сработает? - person odle; 14.03.2011
comment
Я не мог отредактировать свой собственный комментарий... ТАК отключил меня. Редактирование моего ответа. - person PA.; 14.03.2011
comment
Можно ли получить образец сценария, включающий все шаги? Я пытаюсь преобразовать .skp в .fbx - person Claus; 13.11.2019