- Home /
Scale Object Between clicking Point and current Point.
Hello,
I am trying to scale a circle, when the user clicks on it and drag it anywhere, its scale changes with the radius being the length between the two dragging points.
how can I do this?
Answer by HawkSandwich · Jun 16, 2017 at 11:15 AM
This should be simple enough as I understand it.
The first step is to put the circle between the two points. You can use a midpoint algorithm to find the Vector3 directly in the middle of the two points, and put your circle at that Vector3.
Once the circle is in the right position, just set the scale of the circle to Vector3.Distance(clickingPoint, currentPoint) / x;
x represents your circle's diameter. So if your circle is 1 meter in diameter, just remove the /x at the end. Otherwise it'll divide by the diameter of the circle to get the right scale.
how can I return a value from the On$$anonymous$$ouseDrag function to On$$anonymous$$ouseUp? I want to use mousePosition and objPosition values in On$$anonymous$$ouseUp.
void On$$anonymous$$ouseDrag()
{
prefab.SetActive (true);
Vector3 mousePosition = new Vector3 (Input.mousePosition.x, Input.mousePosition.y, distance);
Vector3 objPosition = Camera.main.ScreenToWorldPoint (mousePosition);
transform.position = objPosition;
}
Sorry for the late reply. In 99% of cases, it's usually not the best option to use On$$anonymous$$ouseX in your game, as it doesn't return specific values about the object you're interacting with. Ins$$anonymous$$d you should probably do a raycast from your mouse position so you can check what's being hit and stuff.
That aside, you could just call a separate function from On$$anonymous$$ouseUp or what have you, then in that function you find the objPosition and mousePosition.
Oh Thanks!!! I tried Raycasting and it works.
Your answer
Follow this Question
Related Questions
How to 9-Slice a 2D Sprite without Plugins? 2 Answers
Scaling problem with image on buttons. 1 Answer
Transparency When DistanceProblem 0 Answers
[2D] Object at X distance to Y direction from point 1 Answer
Scale Sprites Smoothly - problem 0 Answers