Cleanup: doxy comments
This commit is contained in:
		@@ -48,25 +48,28 @@ typedef enum {
 | 
				
			|||||||
  /* Should not be used, only for None modifier type */
 | 
					  /* Should not be used, only for None modifier type */
 | 
				
			||||||
  eModifierTypeType_None,
 | 
					  eModifierTypeType_None,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* Modifier only does deformation, implies that modifier
 | 
					  /**
 | 
				
			||||||
 | 
					   * Modifier only does deformation, implies that modifier
 | 
				
			||||||
   * type should have a valid deformVerts function. OnlyDeform
 | 
					   * type should have a valid deformVerts function. OnlyDeform
 | 
				
			||||||
   * style modifiers implicitly accept either mesh or CV
 | 
					   * style modifiers implicitly accept either mesh or CV
 | 
				
			||||||
   * input but should still declare flags appropriately.
 | 
					   * input but should still declare flags appropriately.
 | 
				
			||||||
   */
 | 
					   */
 | 
				
			||||||
  eModifierTypeType_OnlyDeform,
 | 
					  eModifierTypeType_OnlyDeform,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* Modifier adds geometry. */
 | 
					  /** Modifier adds geometry. */
 | 
				
			||||||
  eModifierTypeType_Constructive,
 | 
					  eModifierTypeType_Constructive,
 | 
				
			||||||
  /* Modifier can add and remove geometry. */
 | 
					  /* Modifier can add and remove geometry. */
 | 
				
			||||||
  eModifierTypeType_Nonconstructive,
 | 
					  eModifierTypeType_Nonconstructive,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* both deformVerts & applyModifier are valid calls
 | 
					  /**
 | 
				
			||||||
 | 
					   * Both deformVerts & applyModifier are valid calls
 | 
				
			||||||
   * used for particles modifier that doesn't actually modify the object
 | 
					   * used for particles modifier that doesn't actually modify the object
 | 
				
			||||||
   * unless it's a mesh and can be exploded -> curve can also emit particles
 | 
					   * unless it's a mesh and can be exploded -> curve can also emit particles
 | 
				
			||||||
   */
 | 
					   */
 | 
				
			||||||
  eModifierTypeType_DeformOrConstruct,
 | 
					  eModifierTypeType_DeformOrConstruct,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* Like eModifierTypeType_Nonconstructive, but does not affect the geometry
 | 
					  /**
 | 
				
			||||||
 | 
					   * Like eModifierTypeType_Nonconstructive, but does not affect the geometry
 | 
				
			||||||
   * of the object, rather some of its CustomData layers.
 | 
					   * of the object, rather some of its CustomData layers.
 | 
				
			||||||
   * E.g. UVProject and WeightVG modifiers. */
 | 
					   * E.g. UVProject and WeightVG modifiers. */
 | 
				
			||||||
  eModifierTypeType_NonGeometrical,
 | 
					  eModifierTypeType_NonGeometrical,
 | 
				
			||||||
@@ -78,7 +81,8 @@ typedef enum {
 | 
				
			|||||||
  eModifierTypeFlag_SupportsMapping = (1 << 2),
 | 
					  eModifierTypeFlag_SupportsMapping = (1 << 2),
 | 
				
			||||||
  eModifierTypeFlag_SupportsEditmode = (1 << 3),
 | 
					  eModifierTypeFlag_SupportsEditmode = (1 << 3),
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* For modifiers that support editmode this determines if the
 | 
					  /**
 | 
				
			||||||
 | 
					   * For modifiers that support editmode this determines if the
 | 
				
			||||||
   * modifier should be enabled by default in editmode. This should
 | 
					   * modifier should be enabled by default in editmode. This should
 | 
				
			||||||
   * only be used by modifiers that are relatively speedy and
 | 
					   * only be used by modifiers that are relatively speedy and
 | 
				
			||||||
   * also generally used in editmode, otherwise let the user enable
 | 
					   * also generally used in editmode, otherwise let the user enable
 | 
				
			||||||
@@ -86,22 +90,25 @@ typedef enum {
 | 
				
			|||||||
   */
 | 
					   */
 | 
				
			||||||
  eModifierTypeFlag_EnableInEditmode = (1 << 4),
 | 
					  eModifierTypeFlag_EnableInEditmode = (1 << 4),
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* For modifiers that require original data and so cannot
 | 
					  /**
 | 
				
			||||||
 | 
					   * For modifiers that require original data and so cannot
 | 
				
			||||||
   * be placed after any non-deformative modifier.
 | 
					   * be placed after any non-deformative modifier.
 | 
				
			||||||
   */
 | 
					   */
 | 
				
			||||||
  eModifierTypeFlag_RequiresOriginalData = (1 << 5),
 | 
					  eModifierTypeFlag_RequiresOriginalData = (1 << 5),
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* For modifiers that support pointcache,
 | 
					  /**
 | 
				
			||||||
   * so we can check to see if it has files we need to deal with. */
 | 
					   * For modifiers that support pointcache,
 | 
				
			||||||
 | 
					   * so we can check to see if it has files we need to deal with.
 | 
				
			||||||
 | 
					   */
 | 
				
			||||||
  eModifierTypeFlag_UsesPointCache = (1 << 6),
 | 
					  eModifierTypeFlag_UsesPointCache = (1 << 6),
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* For physics modifiers, max one per type */
 | 
					  /** For physics modifiers, max one per type */
 | 
				
			||||||
  eModifierTypeFlag_Single = (1 << 7),
 | 
					  eModifierTypeFlag_Single = (1 << 7),
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* Some modifier can't be added manually by user */
 | 
					  /** Some modifier can't be added manually by user */
 | 
				
			||||||
  eModifierTypeFlag_NoUserAdd = (1 << 8),
 | 
					  eModifierTypeFlag_NoUserAdd = (1 << 8),
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* For modifiers that use CD_PREVIEW_MCOL for preview. */
 | 
					  /** For modifiers that use CD_PREVIEW_MCOL for preview. */
 | 
				
			||||||
  eModifierTypeFlag_UsesPreview = (1 << 9),
 | 
					  eModifierTypeFlag_UsesPreview = (1 << 9),
 | 
				
			||||||
  eModifierTypeFlag_AcceptsVertexCosOnly = (1 << 10),
 | 
					  eModifierTypeFlag_AcceptsVertexCosOnly = (1 << 10),
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -169,7 +176,8 @@ typedef struct ModifierTypeInfo {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  /********************* Non-optional functions *********************/
 | 
					  /********************* Non-optional functions *********************/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* Copy instance data for this modifier type. Should copy all user
 | 
					  /**
 | 
				
			||||||
 | 
					   * Copy instance data for this modifier type. Should copy all user
 | 
				
			||||||
   * level settings to the target modifier.
 | 
					   * level settings to the target modifier.
 | 
				
			||||||
   *
 | 
					   *
 | 
				
			||||||
   * \param flag: Copying options (see BKE_lib_id.h's LIB_ID_COPY_... flags for more).
 | 
					   * \param flag: Copying options (see BKE_lib_id.h's LIB_ID_COPY_... flags for more).
 | 
				
			||||||
@@ -178,7 +186,8 @@ typedef struct ModifierTypeInfo {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  /********************* Deform modifier functions *********************/
 | 
					  /********************* Deform modifier functions *********************/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* Only for deform types, should apply the deformation
 | 
					  /**
 | 
				
			||||||
 | 
					   * Only for deform types, should apply the deformation
 | 
				
			||||||
   * to the given vertex array. If the deformer requires information from
 | 
					   * to the given vertex array. If the deformer requires information from
 | 
				
			||||||
   * the object it can obtain it from the mesh argument if non-NULL,
 | 
					   * the object it can obtain it from the mesh argument if non-NULL,
 | 
				
			||||||
   * and otherwise the ob argument.
 | 
					   * and otherwise the ob argument.
 | 
				
			||||||
@@ -189,15 +198,17 @@ typedef struct ModifierTypeInfo {
 | 
				
			|||||||
                      float (*vertexCos)[3],
 | 
					                      float (*vertexCos)[3],
 | 
				
			||||||
                      int numVerts);
 | 
					                      int numVerts);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* Like deformMatricesEM but called from object mode (for supporting modifiers in sculpt mode) */
 | 
					  /**
 | 
				
			||||||
 | 
					   * Like deformMatricesEM but called from object mode (for supporting modifiers in sculpt mode).
 | 
				
			||||||
 | 
					   */
 | 
				
			||||||
  void (*deformMatrices)(struct ModifierData *md,
 | 
					  void (*deformMatrices)(struct ModifierData *md,
 | 
				
			||||||
                         const struct ModifierEvalContext *ctx,
 | 
					                         const struct ModifierEvalContext *ctx,
 | 
				
			||||||
                         struct Mesh *mesh,
 | 
					                         struct Mesh *mesh,
 | 
				
			||||||
                         float (*vertexCos)[3],
 | 
					                         float (*vertexCos)[3],
 | 
				
			||||||
                         float (*defMats)[3][3],
 | 
					                         float (*defMats)[3][3],
 | 
				
			||||||
                         int numVerts);
 | 
					                         int numVerts);
 | 
				
			||||||
 | 
					  /**
 | 
				
			||||||
  /* Like deformVerts but called during editmode (for supporting modifiers)
 | 
					   * Like deformVerts but called during editmode (for supporting modifiers)
 | 
				
			||||||
   */
 | 
					   */
 | 
				
			||||||
  void (*deformVertsEM)(struct ModifierData *md,
 | 
					  void (*deformVertsEM)(struct ModifierData *md,
 | 
				
			||||||
                        const struct ModifierEvalContext *ctx,
 | 
					                        const struct ModifierEvalContext *ctx,
 | 
				
			||||||
@@ -217,7 +228,8 @@ typedef struct ModifierTypeInfo {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  /********************* Non-deform modifier functions *********************/
 | 
					  /********************* Non-deform modifier functions *********************/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* For non-deform types: apply the modifier and return a mesh data-block.
 | 
					  /**
 | 
				
			||||||
 | 
					   * For non-deform types: apply the modifier and return a mesh data-block.
 | 
				
			||||||
   *
 | 
					   *
 | 
				
			||||||
   * The mesh argument should always be non-NULL; the modifier should use the
 | 
					   * The mesh argument should always be non-NULL; the modifier should use the
 | 
				
			||||||
   * passed in mesh data-block rather than object->data, as it contains the mesh
 | 
					   * passed in mesh data-block rather than object->data, as it contains the mesh
 | 
				
			||||||
@@ -242,14 +254,16 @@ typedef struct ModifierTypeInfo {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  /********************* Optional functions *********************/
 | 
					  /********************* Optional functions *********************/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* Initialize new instance data for this modifier type, this function
 | 
					  /**
 | 
				
			||||||
 | 
					   * Initialize new instance data for this modifier type, this function
 | 
				
			||||||
   * should set modifier variables to their default values.
 | 
					   * should set modifier variables to their default values.
 | 
				
			||||||
   *
 | 
					   *
 | 
				
			||||||
   * This function is optional.
 | 
					   * This function is optional.
 | 
				
			||||||
   */
 | 
					   */
 | 
				
			||||||
  void (*initData)(struct ModifierData *md);
 | 
					  void (*initData)(struct ModifierData *md);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* Should add to passed \a r_cddata_masks the data types that this
 | 
					  /**
 | 
				
			||||||
 | 
					   * Should add to passed \a r_cddata_masks the data types that this
 | 
				
			||||||
   * modifier needs. If (mask & (1 << (layer type))) != 0, this modifier
 | 
					   * modifier needs. If (mask & (1 << (layer type))) != 0, this modifier
 | 
				
			||||||
   * needs that custom data layer. It can change required layers
 | 
					   * needs that custom data layer. It can change required layers
 | 
				
			||||||
   * depending on the modifier's settings.
 | 
					   * depending on the modifier's settings.
 | 
				
			||||||
@@ -266,7 +280,8 @@ typedef struct ModifierTypeInfo {
 | 
				
			|||||||
                           struct ModifierData *md,
 | 
					                           struct ModifierData *md,
 | 
				
			||||||
                           struct CustomData_MeshMasks *r_cddata_masks);
 | 
					                           struct CustomData_MeshMasks *r_cddata_masks);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* Free internal modifier data variables, this function should
 | 
					  /**
 | 
				
			||||||
 | 
					   * Free internal modifier data variables, this function should
 | 
				
			||||||
   * not free the md variable itself.
 | 
					   * not free the md variable itself.
 | 
				
			||||||
   *
 | 
					   *
 | 
				
			||||||
   * This function is responsible for freeing the runtime data as well.
 | 
					   * This function is responsible for freeing the runtime data as well.
 | 
				
			||||||
@@ -275,7 +290,8 @@ typedef struct ModifierTypeInfo {
 | 
				
			|||||||
   */
 | 
					   */
 | 
				
			||||||
  void (*freeData)(struct ModifierData *md);
 | 
					  void (*freeData)(struct ModifierData *md);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* Return a boolean value indicating if this modifier is able to be
 | 
					  /**
 | 
				
			||||||
 | 
					   * Return a boolean value indicating if this modifier is able to be
 | 
				
			||||||
   * calculated based on the modifier data. This is *not* regarding the
 | 
					   * calculated based on the modifier data. This is *not* regarding the
 | 
				
			||||||
   * md->flag, that is tested by the system, this is just if the data
 | 
					   * md->flag, that is tested by the system, this is just if the data
 | 
				
			||||||
   * validates (for example, a lattice will return false if the lattice
 | 
					   * validates (for example, a lattice will return false if the lattice
 | 
				
			||||||
@@ -285,29 +301,33 @@ typedef struct ModifierTypeInfo {
 | 
				
			|||||||
   */
 | 
					   */
 | 
				
			||||||
  bool (*isDisabled)(const struct Scene *scene, struct ModifierData *md, bool userRenderParams);
 | 
					  bool (*isDisabled)(const struct Scene *scene, struct ModifierData *md, bool userRenderParams);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* Add the appropriate relations to the dependency graph.
 | 
					  /**
 | 
				
			||||||
 | 
					   * Add the appropriate relations to the dependency graph.
 | 
				
			||||||
   *
 | 
					   *
 | 
				
			||||||
   * This function is optional.
 | 
					   * This function is optional.
 | 
				
			||||||
   */
 | 
					   */
 | 
				
			||||||
  void (*updateDepsgraph)(struct ModifierData *md, const ModifierUpdateDepsgraphContext *ctx);
 | 
					  void (*updateDepsgraph)(struct ModifierData *md, const ModifierUpdateDepsgraphContext *ctx);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* Should return true if the modifier needs to be recalculated on time
 | 
					  /**
 | 
				
			||||||
 | 
					   * Should return true if the modifier needs to be recalculated on time
 | 
				
			||||||
   * changes.
 | 
					   * changes.
 | 
				
			||||||
   *
 | 
					   *
 | 
				
			||||||
   * This function is optional (assumes false if not present).
 | 
					   * This function is optional (assumes false if not present).
 | 
				
			||||||
   */
 | 
					   */
 | 
				
			||||||
  bool (*dependsOnTime)(struct ModifierData *md);
 | 
					  bool (*dependsOnTime)(struct ModifierData *md);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* True when a deform modifier uses normals, the requiredDataMask
 | 
					  /**
 | 
				
			||||||
 | 
					   * True when a deform modifier uses normals, the requiredDataMask
 | 
				
			||||||
   * cant be used here because that refers to a normal layer whereas
 | 
					   * cant be used here because that refers to a normal layer whereas
 | 
				
			||||||
   * in this case we need to know if the deform modifier uses normals.
 | 
					   * in this case we need to know if the deform modifier uses normals.
 | 
				
			||||||
   *
 | 
					   *
 | 
				
			||||||
   * this is needed because applying 2 deform modifiers will give the
 | 
					   * this is needed because applying 2 deform modifiers will give the
 | 
				
			||||||
   * second modifier bogus normals.
 | 
					   * second modifier bogus normals.
 | 
				
			||||||
   * */
 | 
					   */
 | 
				
			||||||
  bool (*dependsOnNormals)(struct ModifierData *md);
 | 
					  bool (*dependsOnNormals)(struct ModifierData *md);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* Should call the given walk function on with a pointer to each Object
 | 
					  /**
 | 
				
			||||||
 | 
					   * Should call the given walk function on with a pointer to each Object
 | 
				
			||||||
   * pointer that the modifier data stores. This is used for linking on file
 | 
					   * pointer that the modifier data stores. This is used for linking on file
 | 
				
			||||||
   * load and for unlinking objects or forwarding object references.
 | 
					   * load and for unlinking objects or forwarding object references.
 | 
				
			||||||
   *
 | 
					   *
 | 
				
			||||||
@@ -318,7 +338,8 @@ typedef struct ModifierTypeInfo {
 | 
				
			|||||||
                            ObjectWalkFunc walk,
 | 
					                            ObjectWalkFunc walk,
 | 
				
			||||||
                            void *userData);
 | 
					                            void *userData);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* Should call the given walk function with a pointer to each ID
 | 
					  /**
 | 
				
			||||||
 | 
					   * Should call the given walk function with a pointer to each ID
 | 
				
			||||||
   * pointer (i.e. each data-block pointer) that the modifier data
 | 
					   * pointer (i.e. each data-block pointer) that the modifier data
 | 
				
			||||||
   * stores. This is used for linking on file load and for
 | 
					   * stores. This is used for linking on file load and for
 | 
				
			||||||
   * unlinking data-blocks or forwarding data-block references.
 | 
					   * unlinking data-blocks or forwarding data-block references.
 | 
				
			||||||
@@ -331,7 +352,8 @@ typedef struct ModifierTypeInfo {
 | 
				
			|||||||
                        IDWalkFunc walk,
 | 
					                        IDWalkFunc walk,
 | 
				
			||||||
                        void *userData);
 | 
					                        void *userData);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* Should call the given walk function for each texture that the
 | 
					  /**
 | 
				
			||||||
 | 
					   * Should call the given walk function for each texture that the
 | 
				
			||||||
   * modifier data stores. This is used for finding all textures in
 | 
					   * modifier data stores. This is used for finding all textures in
 | 
				
			||||||
   * the context for the UI.
 | 
					   * the context for the UI.
 | 
				
			||||||
   *
 | 
					   *
 | 
				
			||||||
@@ -343,7 +365,8 @@ typedef struct ModifierTypeInfo {
 | 
				
			|||||||
                         TexWalkFunc walk,
 | 
					                         TexWalkFunc walk,
 | 
				
			||||||
                         void *userData);
 | 
					                         void *userData);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* Free given run-time data.
 | 
					  /**
 | 
				
			||||||
 | 
					   * Free given run-time data.
 | 
				
			||||||
   *
 | 
					   *
 | 
				
			||||||
   * This data is coming from a modifier of the corresponding type, but actual
 | 
					   * This data is coming from a modifier of the corresponding type, but actual
 | 
				
			||||||
   * modifier data is not known here.
 | 
					   * modifier data is not known here.
 | 
				
			||||||
@@ -355,10 +378,11 @@ typedef struct ModifierTypeInfo {
 | 
				
			|||||||
   */
 | 
					   */
 | 
				
			||||||
  void (*freeRuntimeData)(void *runtime_data);
 | 
					  void (*freeRuntimeData)(void *runtime_data);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* Register the panel types for the modifier's UI. */
 | 
					  /** Register the panel types for the modifier's UI. */
 | 
				
			||||||
  void (*panelRegister)(struct ARegionType *region_type);
 | 
					  void (*panelRegister)(struct ARegionType *region_type);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* Is called when the modifier is written to a file. The modifier data struct itself is written
 | 
					  /**
 | 
				
			||||||
 | 
					   * Is called when the modifier is written to a file. The modifier data struct itself is written
 | 
				
			||||||
   * already.
 | 
					   * already.
 | 
				
			||||||
   *
 | 
					   *
 | 
				
			||||||
   * This method should write any additional arrays and referenced structs that should be
 | 
					   * This method should write any additional arrays and referenced structs that should be
 | 
				
			||||||
@@ -366,7 +390,8 @@ typedef struct ModifierTypeInfo {
 | 
				
			|||||||
   */
 | 
					   */
 | 
				
			||||||
  void (*blendWrite)(struct BlendWriter *writer, const struct ModifierData *md);
 | 
					  void (*blendWrite)(struct BlendWriter *writer, const struct ModifierData *md);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /* Is called when the modifier is read from a file.
 | 
					  /**
 | 
				
			||||||
 | 
					   * Is called when the modifier is read from a file.
 | 
				
			||||||
   *
 | 
					   *
 | 
				
			||||||
   * It can be used to update pointers to arrays and other structs. Furthermore, fields that have
 | 
					   * It can be used to update pointers to arrays and other structs. Furthermore, fields that have
 | 
				
			||||||
   * not been written (e.g. runtime data) can be reset.
 | 
					   * not been written (e.g. runtime data) can be reset.
 | 
				
			||||||
@@ -447,7 +472,8 @@ typedef struct CDMaskLink {
 | 
				
			|||||||
  struct CustomData_MeshMasks mask;
 | 
					  struct CustomData_MeshMasks mask;
 | 
				
			||||||
} CDMaskLink;
 | 
					} CDMaskLink;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Calculates and returns a linked list of CustomData_MeshMasks and modified
 | 
					/**
 | 
				
			||||||
 | 
					 * Calculates and returns a linked list of CustomData_MeshMasks and modified
 | 
				
			||||||
 * final datamask, indicating the data required by each modifier in the stack
 | 
					 * final datamask, indicating the data required by each modifier in the stack
 | 
				
			||||||
 * pointed to by md for correct evaluation, assuming the data indicated by
 | 
					 * pointed to by md for correct evaluation, assuming the data indicated by
 | 
				
			||||||
 * final_datamask is required at the end of the stack.
 | 
					 * final_datamask is required at the end of the stack.
 | 
				
			||||||
@@ -473,7 +499,7 @@ typedef struct VirtualModifierData {
 | 
				
			|||||||
struct ModifierData *BKE_modifiers_get_virtual_modifierlist(const struct Object *ob,
 | 
					struct ModifierData *BKE_modifiers_get_virtual_modifierlist(const struct Object *ob,
 | 
				
			||||||
                                                            struct VirtualModifierData *data);
 | 
					                                                            struct VirtualModifierData *data);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* ensure modifier correctness when changing ob->data */
 | 
					/** Ensure modifier correctness when changing ob->data. */
 | 
				
			||||||
void BKE_modifiers_test_object(struct Object *ob);
 | 
					void BKE_modifiers_test_object(struct Object *ob);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* here for do_versions */
 | 
					/* here for do_versions */
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -386,7 +386,8 @@ static void gpencil_convert_spline(Main *bmain,
 | 
				
			|||||||
  BKE_gpencil_stroke_geometry_update(gps);
 | 
					  BKE_gpencil_stroke_geometry_update(gps);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Convert a curve object to grease pencil stroke.
 | 
					/**
 | 
				
			||||||
 | 
					 * Convert a curve object to grease pencil stroke.
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * \param bmain: Main thread pointer
 | 
					 * \param bmain: Main thread pointer
 | 
				
			||||||
 * \param scene: Original scene.
 | 
					 * \param scene: Original scene.
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1508,7 +1508,9 @@ void BKE_gpencil_dissolve_points(bGPDframe *gpf, bGPDstroke *gps, const short ta
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Merge by distance ------------------------------------- */
 | 
					/* Merge by distance ------------------------------------- */
 | 
				
			||||||
/* Reduce a series of points when the distance is below a threshold.
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Reduce a series of points when the distance is below a threshold.
 | 
				
			||||||
 * Special case for first and last points (both are keeped) for other points,
 | 
					 * Special case for first and last points (both are keeped) for other points,
 | 
				
			||||||
 * the merge point always is at first point.
 | 
					 * the merge point always is at first point.
 | 
				
			||||||
 * \param gpf: Grease Pencil frame
 | 
					 * \param gpf: Grease Pencil frame
 | 
				
			||||||
@@ -1845,9 +1847,10 @@ static Material *gpencil_add_material(Main *bmain,
 | 
				
			|||||||
  return mat_gp;
 | 
					  return mat_gp;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Convert a mesh object to grease pencil stroke.
 | 
					/**
 | 
				
			||||||
 | 
					 * Convert a mesh object to grease pencil stroke.
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * \param bmain: Main thread pointer
 | 
					 * \param bmain: Main thread pointer.
 | 
				
			||||||
 * \param depsgraph: Original depsgraph.
 | 
					 * \param depsgraph: Original depsgraph.
 | 
				
			||||||
 * \param scene: Original scene.
 | 
					 * \param scene: Original scene.
 | 
				
			||||||
 * \param ob_gp: Grease pencil object to add strokes.
 | 
					 * \param ob_gp: Grease pencil object to add strokes.
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1348,9 +1348,10 @@ void BKE_rigidbody_main_collection_object_add(Main *bmain, Collection *collectio
 | 
				
			|||||||
/* ************************************** */
 | 
					/* ************************************** */
 | 
				
			||||||
/* Utilities API */
 | 
					/* Utilities API */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Get RigidBody world for the given scene, creating one if needed
 | 
					/**
 | 
				
			||||||
 | 
					 * Get RigidBody world for the given scene, creating one if needed
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * \param scene: Scene to find active Rigid Body world for
 | 
					 * \param scene: Scene to find active Rigid Body world for.
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
RigidBodyWorld *BKE_rigidbody_get_world(Scene *scene)
 | 
					RigidBodyWorld *BKE_rigidbody_get_world(Scene *scene)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1242,7 +1242,8 @@ bool BM_face_split_edgenet_connect_islands(BMesh *bm,
 | 
				
			|||||||
                                           uint *r_edge_net_new_len)
 | 
					                                           uint *r_edge_net_new_len)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  /* -------------------------------------------------------------------- */
 | 
					  /* -------------------------------------------------------------------- */
 | 
				
			||||||
  /* This function has 2 main parts.
 | 
					  /**
 | 
				
			||||||
 | 
					   * This function has 2 main parts.
 | 
				
			||||||
   *
 | 
					   *
 | 
				
			||||||
   * - Check if there are any holes.
 | 
					   * - Check if there are any holes.
 | 
				
			||||||
   * - Connect the holes with edges (if any are found).
 | 
					   * - Connect the holes with edges (if any are found).
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -381,10 +381,11 @@ static void gp_stroke_convertcoords(tGPsdata *p, const float mval[2], float out[
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Apply smooth to buffer while drawing
 | 
					/**
 | 
				
			||||||
 | 
					 * Apply smooth to buffer while drawing
 | 
				
			||||||
 * to smooth point C, use 2 before (A, B) and current point (D):
 | 
					 * to smooth point C, use 2 before (A, B) and current point (D):
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 *   A----B-----C------D
 | 
					 * `A----B-----C------D`
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * \param p: Temp data
 | 
					 * \param p: Temp data
 | 
				
			||||||
 * \param inf: Influence factor
 | 
					 * \param inf: Influence factor
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -282,8 +282,10 @@ void ED_gplayer_frames_duplicate(bGPDlayer *gpl)
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Set keyframe type for selected frames from given gp-layer
 | 
					/**
 | 
				
			||||||
 * \param type: The type of keyframe (eBezTriple_KeyframeType) to set selected frames to
 | 
					 * Set keyframe type for selected frames from given gp-layer
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * \param type: The type of keyframe (#eBezTriple_KeyframeType) to set selected frames to.
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
void ED_gplayer_frames_keytype_set(bGPDlayer *gpl, short type)
 | 
					void ED_gplayer_frames_keytype_set(bGPDlayer *gpl, short type)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -472,15 +472,16 @@ static void set_pixel(ImBuf *ibuf, int idx, const float col[4])
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* check if the size of the leak is narrow to determine if the stroke is closed
 | 
					/**
 | 
				
			||||||
 | 
					 * Check if the size of the leak is narrow to determine if the stroke is closed
 | 
				
			||||||
 * this is used for strokes with small gaps between them to get a full fill
 | 
					 * this is used for strokes with small gaps between them to get a full fill
 | 
				
			||||||
 * and do not get a full screen fill.
 | 
					 * and do not get a full screen fill.
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * \param ibuf: Image pixel data
 | 
					 * \param ibuf: Image pixel data.
 | 
				
			||||||
 * \param maxpixel: Maximum index
 | 
					 * \param maxpixel: Maximum index.
 | 
				
			||||||
 * \param limit: Limit of pixels to analyze
 | 
					 * \param limit: Limit of pixels to analyze.
 | 
				
			||||||
 * \param index: Index of current pixel
 | 
					 * \param index: Index of current pixel.
 | 
				
			||||||
 * \param type: 0-Horizontal 1-Vertical
 | 
					 * \param type: 0-Horizontal 1-Vertical.
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
static bool is_leak_narrow(ImBuf *ibuf, const int maxpixel, int limit, int index, int type)
 | 
					static bool is_leak_narrow(ImBuf *ibuf, const int maxpixel, int limit, int index, int type)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
@@ -576,11 +577,12 @@ static bool is_leak_narrow(ImBuf *ibuf, const int maxpixel, int limit, int index
 | 
				
			|||||||
  return (bool)(t_a && t_b);
 | 
					  return (bool)(t_a && t_b);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Boundary fill inside strokes
 | 
					/**
 | 
				
			||||||
 | 
					 * Boundary fill inside strokes
 | 
				
			||||||
 * Fills the space created by a set of strokes using the stroke color as the boundary
 | 
					 * Fills the space created by a set of strokes using the stroke color as the boundary
 | 
				
			||||||
 * of the shape to fill.
 | 
					 * of the shape to fill.
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * \param tgpf: Temporary fill data
 | 
					 * \param tgpf: Temporary fill data.
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
static void gpencil_boundaryfill_area(tGPDfill *tgpf)
 | 
					static void gpencil_boundaryfill_area(tGPDfill *tgpf)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -551,10 +551,11 @@ static void gp_brush_angle(bGPdata *gpd, Brush *brush, tGPspoint *pt, const floa
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Apply smooth to buffer while drawing
 | 
					/**
 | 
				
			||||||
 | 
					 * Apply smooth to buffer while drawing
 | 
				
			||||||
 * to smooth point C, use 2 before (A, B) and current point (D):
 | 
					 * to smooth point C, use 2 before (A, B) and current point (D):
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 *   A----B-----C------D
 | 
					 * `A----B-----C------D`
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * \param p: Temp data
 | 
					 * \param p: Temp data
 | 
				
			||||||
 * \param inf: Influence factor
 | 
					 * \param inf: Influence factor
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -285,7 +285,8 @@ bGPdata *ED_gpencil_data_get_active(const bContext *C)
 | 
				
			|||||||
  return ob->data;
 | 
					  return ob->data;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Get the active Grease Pencil datablock
 | 
					/**
 | 
				
			||||||
 | 
					 * Get the active Grease Pencil datablock
 | 
				
			||||||
 * \note This is the original (bmain) copy of the datablock, stored in files.
 | 
					 * \note This is the original (bmain) copy of the datablock, stored in files.
 | 
				
			||||||
 * Do not use for reading evaluated copies of GP Objects data
 | 
					 * Do not use for reading evaluated copies of GP Objects data
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -344,9 +344,11 @@ bool AnimationImporter::write_animation_list(const COLLADAFW::AnimationList *ani
 | 
				
			|||||||
  return true;
 | 
					  return true;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* \todo refactor read_node_transform to not automatically apply anything,
 | 
					/**
 | 
				
			||||||
 | 
					 * \todo refactor read_node_transform to not automatically apply anything,
 | 
				
			||||||
 * but rather return the transform matrix, so caller can do with it what is
 | 
					 * but rather return the transform matrix, so caller can do with it what is
 | 
				
			||||||
 * necessary. Same for \ref get_node_mat */
 | 
					 * necessary. Same for \ref get_node_mat
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
void AnimationImporter::read_node_transform(COLLADAFW::Node *node, Object *ob)
 | 
					void AnimationImporter::read_node_transform(COLLADAFW::Node *node, Object *ob)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  float mat[4][4];
 | 
					  float mat[4][4];
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user