Example #1
0
        private void CreateFaceModel(FaceModelData data)
        {
            this.Model = data.ProduceFaceModel();
            this.ModelBuilder.Dispose();
            this.ModelBuilder = null;

            this.CollectionCompleted = true;

            if (this.Name == null)
            {
                foreach (var face in DatabaseManager.AllFaces)
                {
                    double diff = 0;
                    foreach (FaceShapeDeformations fs in Enum.GetValues(typeof(FaceShapeDeformations)))
                    {
                        if (fs != FaceShapeDeformations.Count)
                        {
                            diff += Math.Abs(face.Deformations[fs] - this.Model.FaceShapeDeformations[fs]);
                        }
                    }

                    if (diff < threshold)
                    {
                        this.Name = face.Name;
                        break;
                    }
                }
            }
        }
 void collectFaceModelCompleted(FaceModelData faceModelData)
 {
     print("Model created!");
     faceModel = faceModelData.ProduceFaceModel();
     faceModelBuilder.Dispose();
     faceModelBuilder            = null;
     IsFaceModelCollectCompleted = true;
 }