Play Mode Snapping

I would like to ask you a question regarding snapping, I am working on a Tangram puzzle for a client and I cant seem to find any information regarding Tangrams on the internet can you please help me, if you guys have any knowledge about Tangrams in Unity ?

Also I have adding this snapping script, but it doesn’t seem to work!

using UnityEngine;
using System.Collections;

public class ManageDragAndDrop : MonoBehaviour {
Vector3 initialPosition;

// Use this for initialization
void Start () {
	initialPosition = gameObject.transform.position;
	print (initialPosition);
}

// Update is called once per frame
void Update () {

}
public void Drag (){
	//store position of mouse
	GameObject.Find("Image").transform.position = Input.mousePosition;
}
public void Drop (){
	for (int i=1;i<=3;i++){
		GameObject placehold = GameObject.Find ("placeHolder"+i);
		float distance = Vector3.Distance (GameObject.Find ("Image").transform.position, placehold.transform.position);
		//print ("distance =" + distance);

		if (distance < 500)
		{
			if (placehold.CompareTag("match")==true)
			{
				GameObject.Find ("Image").transform.position = placehold.transform.position;
				print("match ok +"+initialPosition);
			} else {
				GameObject.Find ("Image").transform.position = initialPosition;
				print("not mach +-"+initialPosition);
			}
		} else {
			GameObject.Find ("Image").transform.position = initialPosition;
			print("distance > 50 "+initialPosition);
		}
	}
}

}