user: Give a detailed overview of Bpy.Props: syntax, arguments, return values, common patterns.

assistant: n’, and the default, system-defined storage is not used for this property. This function must take 2 values (self, value) and return None. Note Defining this callback without a matching get one is invalid. get_transform (Callable[[ bpy.types.bpy_struct , int, bool], int]) – Function to be called when this value is ‘read’, if some additional processing must be performed on the stored value. This function must take three arguments (self, the stored value, and a boolean indicating if the property is currently set), and return the final, transformed value of the property. Note The callback is responsible to ensure that value limits of the property (min/max, length…) are respected. Otherwise a ValueError exception is raised. set_transform (Callable[[ bpy.types.bpy_struct , int, int, bool], int]) – Function to be called when this value is ‘written’, if some additional processing must be performed on the given value before storing it. This function must take four arguments (self, the given value to store, the currently stored value (‘raw’ value, without any get_transform applied to it), and a boolean indicating if the property is currently set), and return the final, transformed value of the property. Note The callback is responsible to ensure that value limits (min/max, length…) are respected. Otherwise a ValueError exception is raised. bpy.props. FloatProperty ( * , name = '' , description = '' , translation_context = '*' , default = 0.0 , min = -3.402823e+38 , max = 3.402823e+38 , soft_min = -3.402823e+38 , soft_max = 3.402823e+38 , step = 3 , precision = 2 , options = {'ANIMATABLE'} , override = set() , tags = set() , subtype = 'NONE' , unit = 'NONE' , update = None , get = None , set = None , get_transform = None , set_transform = None ) ¶ Returns a new float (single precision) property definition. Parameters : name ( str ) – Name used in the user interface. description ( str ) – Text used for the tooltip and api documentation. translation_context ( str ) – Text used as context to disambiguate translations. min ( float ) – Hard minimum, trying to assign a value below will silently assign this minimum instead. max ( float ) – Hard maximum, trying to assign a value above will silently assign this maximum instead. soft_min ( float ) – Soft minimum (>= min ), user won’t be able to drag the widget below this value in the UI. soft_max ( float ) – Soft maximum ( max ), user won’t be able to drag the widget above this value in the UI. step ( int ) – Step of increment/decrement in UI, in [1, 100], defaults to 3 (WARNING: actual value is /100). precision ( int ) – Maximum number of decimal digits to display, in [0, 6]. Fraction is automatically hidden for exact integer values of fields with unit ‘NONE’ or ‘TIME’ (frame count) and step divisible by 100. options ( set [ str ] ) – Enumerator in Property Flag Items . override ( set [ str ] ) – Enumerator in Property Override Flag Items . tags ( set [ str ] ) – Enumerator of tags that are defined by parent class. subtype ( str ) – Enumerator in Property Subtype Number Items . unit ( str ) – Enumerator in Property Unit Items . update (Callable[[ bpy.types.bpy_struct , bpy.types.Context ], None]) – Function to be called when this value is modified, This function must take 2 values (self, context) and return None. Warning there are no safety checks to avoid infinite recursion. get (Callable[[ bpy.types.bpy_struct ], float]) – Function to be called when this value is ‘read’, and the default, system-defined storage is not used for this property. This function must take 1 value (self) and return the value of the property. Note Defining this callback without a matching set one will make the property read-only (even if READ_ONLY option is not set). set (Callable[[ bpy.types.bpy_struct , float], None]) – Function to be called when this value is ‘written’, and the default, system-defined storage is not used for this property. This function must take 2 values (self, value) and return None. Note Defining this callback without a matching get one is invalid. get_transform (Callable[[ bpy.types.bpy_struct , float, bool], float]) – Function to be called when this value is ‘read’, if some additional processing must be performed on the stored value. This function must take three arguments (self, the stored value, and a boolean indicating if the property is currently set), and return the final, transformed value of the property. Note The callback is responsible to ensure that value limits of the property (min/max, length…) are respected. Otherwise a ValueError exception is raised. set_transform (Callable[[ bpy.types.bpy_struct , float, float, bool], float]) – Function to be called when this value is ‘written’, if some additional processing must be performed on the given value before storing it. This function must take four arguments (self, the given value to store, the currently stored value (‘raw’ value, without any get_transform applied to it), and a boolean indicating if the property is currently set), and return the final, transformed value of the property. Note The callback is responsible to ensure that value limits (min/max, length…) are respected. Otherwise a ValueError exception is raised. bpy.props. FloatVectorProperty ( * , name = '' , description = '' , translation_context = '*' , default = (0.0, 0.0, 0.0) , min = sys.float_info.min , max = sys.float_info.max , soft_min = sys.float_info.min , soft_max = sys.float_info.max , step = 3 , precision = 2 , options = {'ANIMATABLE'} , override = set() , tags = set() , subtype = 'NONE' , unit = 'NONE' , size = 3 , update = None , get = None , set = None ) ¶ Returns a new vector float property definition. Parameters : name ( str ) – Name used in the user interface. description ( str ) – Text used for the tooltip and api documentation. translation_context ( str ) – Text used as context to disambiguate translations. default ( Sequence [ float ] ) – Sequence of floats the length of size . min ( float ) – Hard minimum, trying to assign a value below will silently assign this minimum instead. max ( float ) – Hard maximum, trying to assign a value above will silently assign this maximum instead. soft_min ( float ) – Soft minimum (>= min ), user won’t be able to drag the widget below this value in the UI. soft_max ( float ) – Soft maximum ( max ), user won’t be able to drag the widget above this value in the UI. options ( set [ str ] ) – Enumerator in Property Flag Items . override ( set [ str ] ) – Enumerator in Property Override Flag Items . tags ( set [ str ] ) – Enumerator of tags that are defined by parent class. step ( int ) – Step of increment/decrement in UI, in [1, 100], defaults to 3 (WARNING: actual value is /100). precision ( int ) – Maximum number of decimal digits to display, in [0, 6]. Fraction is automatically hidden for exact integer values of fields with unit ‘NONE’ or ‘TIME’ (frame count) and step divisible by 100. subtype ( str ) – Enumerator in Property Subtype Number Array Items . unit ( str ) – Enumerator in Property Unit Items . size ( int | Sequence [ int ] ) – Vector dimensions in [1, 32]. An int sequence can be used to define multi-dimension arrays. update (Callable[[ bpy.types.bpy_struct , bpy.types.Context ], None]) – Function to be called when this value is modified, This function must take 2 values (self, context) and return None. Warning there are no safety checks to avoid infinite recursion. get (Callable[[ bpy.types.bpy_struct ], Sequence[float]]) – Function to be called when this value is ‘read’, and the default, system-defined storage is not used for this property. This function must take 1 value (self) and return the value of the property. Note Defining this callback without a matching set one will make the property read-only (even if READ_ONLY option is not set). set (Callable[[ bpy.types.bpy_struct , tuple[float, …]], None]) – Function to be called when this value is ‘written’, and the default, system-defined storage is not used for this property. This function must take 2 values (self, value) and return None. Note Defining this callback without a matching get one is invalid. get_transform (Callable[[ bpy.types.bpy_struct , Sequence[float], bool], Sequence[float]]) – Function to be called when this value is ‘read’, if some additional processing must be performed on the stored value. This function must take three arguments (self, the stored value, and a boolean indicating if the property is currently set), and return the final, transformed value of the property. Note The callback is responsible to ensure that value limits of the property (min/max, length…) are respected. Otherwise a ValueError exception is raised. set_transform (Callable[[ bpy.types.bpy_struct , Sequence[float], Sequence[float], bool], Sequence[float]]) – Function to be called when this value is ‘written’, if some additional processing must be performed on the given value before storing it. This function must take four arguments (self, the given value to store, the currently stored value (‘raw’ value, without any get_transform applied to it), and a boolean indicating if the property is currently set), and return the final, transformed value of the property. Note The callback is responsible to ensure that value limits (min/max, length…) are respected. Otherwise a ValueError exception is raised. bpy.props. IntProperty ( * , name = '' , description = '' , translation_context = '*' , default = 0 , min = -2**31 , max = 2**31 - 1 , soft_min = -2**31 , soft_max = 2**31 - 1 , step = 1 , options = {'ANIMATABLE'} , override = set() , tags = set() , subtype = 'NONE' , update = None , get = None , set = None , get_transform = None , set_transform = None ) ¶ Returns a new int property definition. Parameters : name ( str ) – Name used in the user interface. description ( str ) – Text used for the tooltip and api documentation. translation_context ( str ) – Text used as context to disambiguate translations. min ( int ) – Hard minimum, trying to assign a value below will silently assign this minimum instead. max ( int ) – Hard maximum, trying to assign a value above will silently assign this maximum instead. soft_min ( int ) – Soft minimum (>= min ), user won’t be able to drag the widget below this value in the UI. soft_max ( int ) – Soft maximum ( max ), user won’t be able to drag the widget above this value in the UI. step ( int ) – Step of increment/decrement in UI, in [1, 100], defaults to 1 (WARNING: unused currently!). options ( set [ str ] ) – Enumerator in Property Flag Items . override ( set [ str ] ) – Enumerator in Property Override Flag Items . tags ( set [ str ] ) – Enumerator of tags that are defined by parent class. subtype ( str ) – Enumerator in Property Subtype Number Items . update (Callable[[ bpy.types.bpy_struct , bpy.types.Context ], None]) – Function to be called when this value is modified, This function must take 2 values (self, context) and return None. Warning there are no safety checks to avoid infinite recursion. get (Callable[[ bpy.types.bpy_struct ], int]) – Function to be called when this value is ‘read’, and the default, system-defined storage is not used for this property. This function must take 1 value (self) and return the value of the property. Note Defining this callback without a matching set one will make the property read-only (even if READ_ONLY option is not set). set (Callable[[ bpy.types.bpy_struct , int], None]) – Function to be called when this value is ‘written’, and the default, system-defined storage is not used for this property. This function must take 2 values (self, value) and return None. Note Defining this callback without a matching get one is invalid. get_transform (Callable[[ bpy.types.bpy_struct , int, bool], int]) – Function to be called when this value is ‘read’, if some additional processing must be performed on the stored value. This function must take three arguments (self, the stored value, and a boolean indicating if the property is currently set), and return the final, transformed value of the property. Note The callback is responsible to ensure that value limits of the property (min/max, length…) are respected. Otherwise a ValueError exception is raised. set_transform (Callable[[ bpy.types.bpy_struct , int, int, bool], int]) – Function to be called when this value is ‘written’, if some additional processing must be performed on the given value before storing it. This function must take four arguments (self, the given value to store, the currently stored value (‘raw’ value, without any get_transform applied to it), and a boolean indicating if the property is currently set), and return the final, transformed value of the property. Note The callback is responsible to ensure that value limits (min/max, length…) are respected. Otherwise a ValueError exception is raised. bpy.props. IntVectorProperty ( * , name = '' , description = '' , translation_context = '*' , default = (0, 0, 0) , min = -2**31 , max = 2**31 - 1 , soft_min = -2**31 , soft_max = 2**31 - 1 , step = 1 , options = {'ANIMATABLE'} , override = set() , tags = set() , subtype = 'NONE' , size = 3 , update = None , get = None , set = None , get_transform = None , set_transform = None ) ¶ Returns a new vector int property definition. Parameters : name ( str ) – Name used in the user interface. description ( str ) – Text used for the tooltip and api documentation. translation_context ( str ) – Text used as context to disambiguate translations. default ( Sequence [ int ] ) – sequence of ints the length of size . min ( int ) – Hard minimum, trying to assign a value below will silently assign this minimum instead. max ( int ) – Hard maximum, trying to assign a value above will silently assign this maximum instead. soft_min ( int ) – Soft minimum (>= min ), user won’t be able to drag the widget below this value in the UI. soft_max ( int ) – Soft maximum ( max ), user won’t be able to drag the widget above this value in the UI. step ( int ) – Step of increment/decrement in UI, in [1, 100], defaults to 1 (WARNING: unused currently!). options ( set [ str ] ) – Enumerator in Property Flag Items . override ( set [ str ] ) – Enumerator in Property Override Flag Items . tags ( set [ str ] ) – Enumerator of tags that are defined by parent class. subtype ( str ) – Enumerator in Property Subtype Number Array Items . size ( int | Sequence [ int ] ) – Vector dimensions in [1, 32]. An int sequence can be used to define multi-dimension arrays. update (Callable[[ bpy.types.bpy_struct , bpy.types.Context ], None]) – Function to be called when this value is modified, This function must take 2 values (self, context) and return None. Warning there are no safety checks to avoid infinite recursion. get (Callable[[ bpy.types.bpy_struct ], Sequence[int]]) – Function to be called when this value is ‘read’, and the default, system-defined storage is not used for this property. This function must take 1 value (self) and return the value of the property. Note Defining this callback without a matching set one will make the property read-only (even if READ_ONLY option is not set). set (Callable[[ bpy.types.bpy_struct , tuple[int, …]], None]) – Function to be called when this value is ‘written’, and the default, system-defined storage is not used for this property. This function must take 2 values (self, value) and return None. Note Defining this callback without a matching get one is invalid. get_transform (Callable[[ bpy.types.bpy_struct , Sequence[int], bool], Sequence[int]]) – Function to be called when this value is ‘read’, if some additional processing must be performed on the stored value. This function must take three arguments (self, the stored value, and a boolean indicating if the property is currently set), and return the final, transformed value of the property. Note The callback is responsible to ensure that value limits of the property (min/max, length…) are respected. Otherwise a ValueError exception is raised. set_transform (Callable[[ bpy.types.bpy_struct , Sequence[int], Sequence[int], bool], Sequence[int]]) – Function to be called when this value is ‘written’, if some additional processing must be performed on the given value before storing it. This function must take four arguments (self, the given value to store, the currently stored value (‘raw’ value, without any get_transform applied to it), and a boolean indicating if the property is currently set), and return the final, transformed value of the property. Note The callback is responsible to ensure that value limits (min/max, length…) are respected. Otherwise a ValueError exception is raised. bpy.props. PointerProperty ( type , * , name = '' , description = '' , translation_context = '*' , options = {'ANIMATABLE'} , override = set() , tags = set() , poll = None , update = None ) ¶ Returns a new pointer property definition. Parameters : type (type[ bpy.types.PropertyGroup | bpy.types.ID ]) – A subclass of a property group or ID types. name ( str ) – Name used in the user interface. description ( str ) – Text used for the tooltip and api documentation. translation_context ( str ) – Text used as context to disambiguate translations. options ( set [ str ] ) – Enumerator in Property Flag Items . override ( set [ str ] ) – Enumerator in Property Override Flag Items . tags ( set [ str ] ) – Enumerator of tags that are defined by parent class. poll (Callable[[ bpy.types.bpy_struct , bpy.types.ID ], bool]) – Function that determines whether an item is valid for this property. The function must take 2 values (self, object) and return a boolean. Note The return value will be checked only when assigning an item from the UI, but it is still possible to assign an “invalid” item to the property directly. update (Callable[[ bpy.types.bpy_struct , bpy.types.Context ], None]) – Function to be called when this value is modified, This function must take 2 values (self, context) and return None. Warning there are no safety checks to avoid infinite recursion. Note P