[TUTORIAL](Csharp) Vector3.Distance
3 participantes
Página 1 de 1
[TUTORIAL](Csharp) Vector3.Distance
Bom Pessoal blz hj vou explicar como funciona o Vector3.Distace e como fazer seu Próprio Método Vector3.Distace
Bom Na Geometria analítica isso se chama Distância entre dois pontos
onde teremos dois pontos (pontoA(xa,ya)) e (pontoB(xb,yb))
como estaremos usando como referencia o vector3 acrescentaremos mais um eixo no código c#
esse pontos tem coordenadas x e y
esse dois pontos tem coordenadas predefinidas digamos que o pontoA Seja(10,-9) e PontoB seja (5 ,9)
a formula para descobrir a distancia entre esse dois pontos e
Onde pegaremos o x do ponto a menos o x do ponto b elevado ao quadrado e y do ponto a menos o y do ponto b elevado ao quadrado
pegaremos o resultado e extraiamos a raiz se existe
calculo
Agora passaremos pro C#
Criaremos 3 variáveis
duas do tipo transform que serão os dois pontos
outra do tipo string para exibir o resultado
Criaremos um método chamado CalcDistace nele vamos calcular a distancia entre esse pontos
e dentro do método criaremos duas variáveis locais do tipo vector3 e passaremos a posição dos objetos
Criaremos mais três variáveis do tipo float onde vamos calcular xa - xb, ya - yb , za - zb
Criaremos mais uma variável local chamada para receber a distancia entre os pontos
onde pegaremos a raiz quadrada do CalcX, CalcY e CalcZ elevado ao quadrado
Basta agora passar o valor de distancie para algo que exiba texto
Espero que tenha compreendido :D
script abaixo :D
Deixe seu Like :D :D
Bom Na Geometria analítica isso se chama Distância entre dois pontos
onde teremos dois pontos (pontoA(xa,ya)) e (pontoB(xb,yb))
como estaremos usando como referencia o vector3 acrescentaremos mais um eixo no código c#
esse pontos tem coordenadas x e y
esse dois pontos tem coordenadas predefinidas digamos que o pontoA Seja(10,-9) e PontoB seja (5 ,9)
a formula para descobrir a distancia entre esse dois pontos e
Onde pegaremos o x do ponto a menos o x do ponto b elevado ao quadrado e y do ponto a menos o y do ponto b elevado ao quadrado
pegaremos o resultado e extraiamos a raiz se existe
calculo
Agora passaremos pro C#
Criaremos 3 variáveis
duas do tipo transform que serão os dois pontos
outra do tipo string para exibir o resultado
- Código:
public Transform objectA;
public Transform objectB;
public string distanceText;
Criaremos um método chamado CalcDistace nele vamos calcular a distancia entre esse pontos
e dentro do método criaremos duas variáveis locais do tipo vector3 e passaremos a posição dos objetos
- Código:
Vector3 pointA = objectA.transform.position;
Vector3 pointB = objectB.transform.position;
Criaremos mais três variáveis do tipo float onde vamos calcular xa - xb, ya - yb , za - zb
- Código:
float calcX = pointA.x - (pointB.x);
float calcY = pointA.y - (pointB.y);
float calcZ = pointA.z - (pointB.z);
Criaremos mais uma variável local chamada para receber a distancia entre os pontos
onde pegaremos a raiz quadrada do CalcX, CalcY e CalcZ elevado ao quadrado
- Código:
float distance = Mathf.Sqrt(calcX * calcX ) + Mathf.Sqrt(calcY * calcY) + Mathf.Sqrt(calcZ * calcZ);
Basta agora passar o valor de distancie para algo que exiba texto
- Código:
distanceText = distance.ToString();
Espero que tenha compreendido :D
script abaixo :D
Deixe seu Like :D :D
- Código:
using UnityEngine;
using System.Collections;
public class Distance : MonoBehaviour {
public Transform objectA;
public Transform objectB;
public string distanceText;
void Start ()
{
}
void Update ()
{
if (Input.GetKeyDown(KeyCode.C))
{
CalcDistace();
}
}
void CalcDistace()
{
Vector3 pointA = objectA.transform.position;
Vector3 pointB = objectB.transform.position;
float calcX = pointA.x - (pointB.x);
float calcY = pointA.y - (pointB.y);
float calcZ = pointA.z - (pointB.z);
float distance = Mathf.Sqrt(calcX * calcX ) + Mathf.Sqrt(calcY * calcY) + Mathf.Sqrt(calcZ * calcZ);
distanceText = distance.ToString();
}
}
Weslley- Moderador
- PONTOS : 5677
REPUTAÇÃO : 744
Idade : 26
Áreas de atuação : Inversión, Desarrollo, Juegos e Web
Respeito as regras :
Re: [TUTORIAL](Csharp) Vector3.Distance
MarcosSchultz escreveu:UUUU, conteúdo top
Vlw marcos :D
Weslley- Moderador
- PONTOS : 5677
REPUTAÇÃO : 744
Idade : 26
Áreas de atuação : Inversión, Desarrollo, Juegos e Web
Respeito as regras :
Re: [TUTORIAL](Csharp) Vector3.Distance
Muito bom, fiquei em duvida nessa parte
Mathf.Sqrt
o que é esse sqrt?
Mathf.Sqrt
o que é esse sqrt?
rafaelllsd- ProgramadorMaster
- PONTOS : 5192
REPUTAÇÃO : 507
Idade : 24
Áreas de atuação : Unity, Audacity, Blender, Gimp, C#, JS, MySQL.
Respeito as regras :
Re: [TUTORIAL](Csharp) Vector3.Distance
rafaelllsd escreveu:Muito bom, fiquei em duvida nessa parte
Mathf.Sqrt
o que é esse sqrt?
Ele retorna a Raiz quadrada do valor entre parênteses
Weslley- Moderador
- PONTOS : 5677
REPUTAÇÃO : 744
Idade : 26
Áreas de atuação : Inversión, Desarrollo, Juegos e Web
Respeito as regras :
Tópicos semelhantes
» [TUTORIAL](Csharp) Partial
» [TUTORIAL](Csharp) Polimorfismo [PARTE 1]
» [TUTORIAL] Unity Csharp Script - Dicas, Informações..etc
» [TUTORIAL](Csharp) Herança e método virtual [PARTE 2]
» [TUTORIAL] Tutorial Unity 3D Movimentação de Personagem com Botões UI
» [TUTORIAL](Csharp) Polimorfismo [PARTE 1]
» [TUTORIAL] Unity Csharp Script - Dicas, Informações..etc
» [TUTORIAL](Csharp) Herança e método virtual [PARTE 2]
» [TUTORIAL] Tutorial Unity 3D Movimentação de Personagem com Botões UI
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos