void IEditorImageTargetBehaviour.InitializeImageTarget(ImageTarget imageTarget) { mTrackable = mImageTarget = imageTarget; mVirtualButtonBehaviours = new Dictionary <int, VirtualButtonBehaviour>(); // do not change the aspect ratio of user defined targets, these are set by the algorithm internally if (imageTarget.ImageTargetType == ImageTargetType.PREDEFINED) { // Handle any changes to the image target in the scene // that are not reflected in the config file Vector2 imgTargetUnitySize = GetSize(); imageTarget.SetSize(imgTargetUnitySize); } else // instead, set the aspect of the unity object to the value of the user defined target { Vector2 udtSize = imageTarget.GetSize(); // set the size of the target to the value returned from cloud reco: transform.localScale = new Vector3(udtSize.x, udtSize.x, udtSize.x); IEditorImageTargetBehaviour editorThis = this; editorThis.CorrectScale(); editorThis.SetAspectRatio(udtSize.y / udtSize.x); } }
private ImageTargetAbstractBehaviour CreateImageTargetBehaviour(ImageTarget imageTarget) { GameObject gameObject = new GameObject(); ImageTargetAbstractBehaviour behaviour = BehaviourComponentFactory.Instance.AddImageTargetBehaviour(gameObject); IEditorImageTargetBehaviour behaviour2 = behaviour; Debug.Log(string.Concat(new object[] { "Creating Image Target with values: \n ID: ", imageTarget.ID, "\n Name: ", imageTarget.Name, "\n Path: ", behaviour2.DataSetPath, "\n Size: ", imageTarget.GetSize().x, "x", imageTarget.GetSize().y })); behaviour2.SetNameForTrackable(imageTarget.Name); behaviour2.SetDataSetPath(behaviour2.DataSetPath); Vector2 size = imageTarget.GetSize(); float x = Mathf.Max(size.x, size.y); behaviour2.transform.localScale = new Vector3(x, x, x); behaviour2.CorrectScale(); behaviour2.SetAspectRatio(size.y / size.x); behaviour2.InitializeImageTarget(imageTarget); return(behaviour); }
void IEditorImageTargetBehaviour.InitializeImageTarget(ImageTarget imageTarget) { base.mTrackable = this.mImageTarget = imageTarget; this.mVirtualButtonBehaviours = new Dictionary <int, VirtualButtonAbstractBehaviour>(); if (imageTarget.ImageTargetType == ImageTargetType.PREDEFINED) { Vector2 size = this.GetSize(); imageTarget.SetSize(size); } else { Vector2 vector2 = imageTarget.GetSize(); float x = (vector2.x > vector2.y) ? vector2.x : vector2.y; base.transform.localScale = new Vector3(x, x, x); IEditorImageTargetBehaviour behaviour = this; behaviour.CorrectScale(); this.mAspectRatio = vector2.y / vector2.x; } if (base.mExtendedTracking) { this.mImageTarget.StartExtendedTracking(); } }
private ImageTargetBehaviour CreateImageTargetBehaviour(ImageTarget imageTarget) { GameObject imageTargetObject = new GameObject(); ImageTargetBehaviour newITB = imageTargetObject.AddComponent <ImageTargetBehaviour>(); IEditorImageTargetBehaviour newEditorITB = newITB; Debug.Log("Creating Image Target with values: " + "\n ID: " + imageTarget.ID + "\n Name: " + imageTarget.Name + "\n Path: " + newEditorITB.DataSetPath + "\n Size: " + imageTarget.GetSize().x + "x" + imageTarget.GetSize().y); // Set Image Target attributes. newEditorITB.SetNameForTrackable(imageTarget.Name); newEditorITB.SetDataSetPath(newEditorITB.DataSetPath); newEditorITB.transform.localScale = new Vector3(imageTarget.GetSize().x, 1.0f, imageTarget.GetSize().y); newEditorITB.CorrectScale(); newEditorITB.SetAspectRatio(imageTarget.GetSize()[1] / imageTarget.GetSize()[0]); newEditorITB.InitializeImageTarget(imageTarget); return(newITB); }