Version: 
Back to list

Algo :: createInstancesBySimilarity

Synopsis

   Create instances when there are similar parts. This can be used to repair instances or to simplify a model that has similar parts that could be instanciated instead to reduce the number of unique meshes (reduces drawcalls, GPU memory usage and file size). Using 1.0 (100%) in all similarity criterias is non destructive. Using lower values will help finding more similar parts, even if their polycount or dimensions varies a bit.

GUI Dialog

   

Script function

   algo.createInstancesBySimilarity(occurrences, dimensionsSimilarity, polycountSimilarity, ignoreSymmetry, keepExistingPrototypes, createNewOccurrencesForPrototypes)

Parameters

   occurrences (OccurrenceList) : Occurrence for which we want to find similar parts and create instances using prototypes.
   dimensionsSimilarity (Coeff) : The percentage of similarity on dimensions. A value of 1.0 (100%) will find parts that have exactly the same dimensions. A lower value will increase the likelyhood to find similar parts, at the cost of precision.
   polycountSimilarity (Coeff) : The percentage of similarity on polycount. A value of 1.0 (100%) will find parts that have exactly the same polycount. A lower value will increase the likelyhood to find similar parts, at the cost of precision.
   ignoreSymmetry (Boolean) : If True, symmetries will be ignored, otherwise negative scaling will be applied in the occurrence transformation.
   keepExistingPrototypes (Boolean) : If True, existing prototypes will be kept. Otherwise, the selection will be singularized and instanced will be created from scratch.
   createNewOccurrencesForPrototypes (Boolean) : If True, a new occurrence will be created for each prototype. Those occurrences won't appear in the hierarchy, and so deleting one of the part in the scene has no risks of singularizing. If set to False, an arbitrary occurrence will be used as the prototype for other similar occurrences, which is less safe but will result in less occurrences.