PointerProperty

参考:

Object referenced by PointerProperty in Python can not be deleted properly – Blender Stack Exchange

expected a single argument エラー

現象

クラスのインスタンスを作成しようとすると引数の数が不一致である旨のエラーが発生する。

TypeError: bpy_struct.__new__(type): expected a single argument

対処法

インスタンス生成用の関数を使用する。

mesh = bpy.data.meshes.new(name="New Mesh")

参考:

Data Creation/Removal | Blender Python API [Official]

PyExc_TypeError: expected a single argument – blender/bpy_rna.c at v2.93.5 · blender/blender – GitHub

Writing is not allowed エラー

現象

コンテキストアクセスでプロパティを変更しようとするとエラーが発生する。

AttributeError: Writing to ID classes in this context is not allowed

参考:

AttributeError: Writing to ID classes in this context is not allowed – Blender Artists Community

How can I change a custom property value in python? – Blender Stack Exchange

PyExc_AttributeError: Writing to ID classes in this context is not allowed – blender/bpy_rna.c at v2.93.5 · blender/blender – GitHub

no attribute scene エラー

現象

初期化が完了していない段階で bpy.centext.scene にアクセスするとエラーが発生する。

AttributeError: '_RestrictContext' object has no attribute 'scene'

参考:

Accessing bpy.context gives a ‘_RestrictContext’ warning, how to fix this? – Blender Stack Exchange

AttributeError: ‘_RestrictContext’ object has no attribute ‘scene’ – Stack Overflow

already registered as a subclass

現象

アドオンを有効化する際にサブクラスとして既に登録されている旨のエラーが発生する。

ValueError register_class(...) already registered as a subclass

対処法

  • 該当するアドオンが壊れている。
  • アドオンの初期化に失敗し、再度有効化しようとした際に発生する。その場合は Blender の再起動が必要。
  • register / unregister 関数において、register_class 及び unregister_class を呼び出す記述の整合性が取れているか確認する。

参考:

Error “register_class(…): already registered as a subclass” – Blender Artists Community

Class already registered as subclass? – Blender Stack Exchange

プロパティが表示/設定できない

カスタムプロパティは IDBonePoseBone 及びその派生クラスにのみ追加できる。

Custom properties can be added to any subclass of an ID, Bone and PoseBone.

── Blender Python API

参考:

TypeError: UILayout.prop() when trying to display custom settings in a menu – Blender Stack Exchange

Tips

参考:

Gotchas | Blender Python API [Official]

記事をシェアする:
タグ:

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です