Я пытаюсь использовать встроенный класс ModelObserver в Sketchup, чтобы инициировать экспорт файла, когда пользователь сохраняет текущую модель. По какой-то причине мой код запускает бесконечный цикл — текст onSaveModel выводится только один раз, но exportModel() попадает в цикл.
Мои навыки Ruby невелики, но я также слышал, что SketchUp Ruby API время от времени дает сбои. Кто-нибудь видел эту проблему раньше?
Код:
def protohypeEntry
Sketchup.active_model.add_observer(ProtohypeModelObserver.new)
end
class ProtohypeModelObserver < Sketchup::ModelObserver
def onSaveModel(model)
puts "onSaveModel" + model.to_s
exportModel()
end
end
def exportModel()
puts "exportModel()"
model = Sketchup.active_model
options_hash = { :triangulated_faces => true,
:doublesided_faces => true,
:edges => false,
:author_attribution => true,
:texture_maps => true,
:selectionset_only => false,
:preserve_instancing => true }
status = model.export 'C:\Users\Pelle\Test\test.dae', options_hash
end
protohypeEntry()