• Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
  • Help Room /
avatar image
Question by Erotodo · May 21, 2016 at 01:12 PM · 2draycastingsizeresizediagonal

Resizing a 2d Sprite (box shaped) in 2D world knowing his diagonal?

Hi, i'm learning unity but i'm not very good with coding. i've a problem about the resizing of a 2d sprite box conform to the Vector2.distance calculated by a raycast2d from center to up-right corner of the base square. When i tap the screen, raycast2D should giving me the half diagonal of the next square that'll be instantiated but my new boxes are too big or wrong sized. How can i instantiate a box within the area intersected by other boxes? The wanted results is the smallest box in the image.

-I've added edge collider to the new square instantiated for the intersection with raycast center starting -The Sprites have 1 Pixel Per Unit and 512x512 of MaxSize -The Black square in the image is rolling and the next instantiated square will have the same rotation That's my Raycaster script:

public void RaycastFromCenter() { Vector2 worldPoint = gameObject.transform.position; RaycastHit2D hit = Physics2D.Raycast(Vector2.zero, Vector2.one, 100); if (hit.collider.tag == "Square Border") { Debug.Log (hit.collider.name); float distance = Vector2.Distance (Vector2.zero, hit.point); _lato = (distance / 2) / (Mathf.Sqrt (2));

     } 


For scaling the new Rolling square i've used this

float latoTemp = RaycasterScript._lato /100; gameObject.transform.localScale = new Vector2 (latoTemp, latoTemp);

Thanks to all alt text

squareexample.png (21.5 kB)
squareexample.png (21.5 kB)
Comment

People who like this

0 Show 2
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image LLIV · May 21, 2016 at 11:53 PM 0
Share

Could you be more specific in what you want to do exactly? Not about resizing the box but why you're trying to resize the box? There may be an easier way to do whatever it is you're trying to do.

avatar image Erotodo LLIV · May 22, 2016 at 04:12 PM 0
Share

sorry, i'm not very well with english. I'll try to specify my problem :)

on the screen you'll see 2 square, one is static and the other square,of same size, is rolling on itself. When you'll touch the screen the rolling square will impress another static square (not rolling) on it (the touch will spawn a new static square). After that i need to resize the rolling square. The size of resulting square (the new rolling square) will be within the area created by the intersection of base square and second square.

I'm using a raycast to calculate the next square half-diagonal but i haven't the wanted results. I think exists other ways to do that. i accept all suggestions :)

thanks

0 Replies

· Add your reply
  • Sort: 

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Welcome to Unity Answers

If you’re new to Unity Answers, please check our User Guide to help you navigate through our website and refer to our FAQ for more information.

Before posting, make sure to check out our Knowledge Base for commonly asked Unity questions.

Check our Moderator Guidelines if you’re a new moderator and want to work together in an effort to improve Unity Answers and support our users.

Follow this Question

Answers Answers and Comments

82 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

I can't get Raycasting in 2D to work, what am I missing? 1 Answer

How big is the 2D Core template? 0 Answers

Enemy destroys player if scale is bigger 1 Answer

Getting height in pixels of tilemap 1 Answer

Raycast2D with objects of same type on same LayerMask 0 Answers


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges