简体   繁体   English

Unity椭圆形绘制椭圆

[英]Unity Draw Ellipse at an angle

This one has me stumped. 这个让我难过。

I've got code to draw ellipses etc in Unity. 我有代码在Unity中绘制椭圆等。 It all works great. 一切都很好。 But at the moment I only get horizontal ellipses or vertical ellipses by changing the major and minor axes. 但是目前,通过更改长轴和短轴,我只能得到水平椭圆或垂直椭圆。

What I really need is to be able to draw ellipses at angle, tilted, skewiff, NOT straight up or sideways. 我真正需要的是能够以倾斜,倾斜,倾斜,而不是笔直或侧向的方式绘制椭圆。

Please help. 请帮忙。 Even better if it can be done using standard draw ellipse code. 如果可以使用标准的绘制椭圆代码完成,那就更好了。

I don't know how do you draw ellipses because you haven't post any code but this is how you can calculate points on tilted ellipse 我不知道如何绘制椭圆,因为您尚未发布任何代码,但这是如何计算倾斜椭圆上的点的方法

var resolution = 50; //resolution of ellipse
var a = 50;
var b = 20;
var rotation = Quaternion.Euler(45,0,0); //set your angles here
for(var i = 0f; i < 2*Mathf.PI; i+=2*Mathf.PI/resolution){
    var vector = new Vector3( a*Mathf.Cos(i) ,0, b*Mathf.Sin(i) );
    vector = rotation*vector; // you can multiply vector by quaternion to get tilted ellipse

    //you can do something with vector here

}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM