SketchUp で新規ファイルを作ろうとすると、最初から人型のエンティティが配置されています (私は SketchUp Make しか使ったことがないので、他のバージョンでどうなのかはわかりませんが)。この人型エンティティを確実に特定する方法はないものでしょうか。
Ruby コンソールにて、
ruby
1Sketchup.active_model.definitions[0].name
とすることにより、SketchUp Make 2017 では、この人の名前が Chris とわかるので、
ruby
1Sketchup.active_model.definitions['Chris'].tap { |human| if human then ... end }
と特定し、操作することができます。
ただ、この名前はバージョンによって違うようで、前に使っていたバージョン、たしか SketchUp Make 2013 では、Derrick という名前でした。
SketchUp のバージョンに依存せずにこの人を特定するには、名前ではいけないということになります。たとえば、Chris がハードコーディングされていたとすると、SketchUp Make 2018 (になるのかは知りませんが) にバージョンアップして、人が Chris ではなくなったときに動作しなくなってしまいます。
かといって、
ruby
1Sketchup.active_model.definitions[0]
が必ず最初からいる「人」かどうかもわかりません。モデルをいじっているなかで、「人」を削除した結果、このコードでは別のエンティティを指してしまうかもしれません。
- SketchUp のバージョンに依らず、
- 存在すれば「人」を特定できる
ようなスマートな方法はないものでしょうか。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。