一、绘制二维坐标下线段:
1、obj1,obj2两个物体之间的连线:VectorLine.SetLine();
using Vectrosity;
//绘制二维obj1,obj2两个物体之间的连线
public void Drawline()
{
//线段里的点
Vector2 parentPoint = obj1.transform.GetComponent<RectTransform>().anchoredPosition;
Vector2 objPoint = obj2.transform.GetComponent<RectTransform>().anchoredPosition;
Vector2 turnPoint = new Vector2(parentPoint.x,objPoint.y);
//画线
VectorLine line = VectorLine.SetLine(Color.white, parentPoint, turnPoint, objPoint);
line.name = obj1.Name + "Line";
line.drawTransform = line.rectTransform;
line.rectTransform.SetParent(transform.Find("Lines"));
line.rectTransform.localScale = new Vector3(1, 1, 1);
}
2、绘制二维坐标下:obj1,obj2两个物体之间的连线;line.Draw();
using Vectrosity;
//绘制二维obj1,obj2两个物体之间的连线
public void Drawline(DeviceGroupController groupController,DeviceObjController objController)
{
string lineName= obj1.name + "Line";
Vector2 parentPoint = obj1.transform.GetComponent<RectTransform>().anchoredPosition;
Vector2 objPoint = obj2.transform.GetComponent<RectTransform>().anchoredPosition;
Vector2 turnPoint = new Vector2(parentPoint.x,objPoint.y);
List<Vector2> linePoints = new List<Vector2>() { parentPoint, turnPoint, objPoint };
VectorLine line = new VectorLine(lineName, linePoints, 2.0f,LineType.Continuous);
line.rectTransform.SetParent(transform.Find("Lines"));
line.rectTransform.localScale = new Vector3(1, 1, 1);
line.Draw();
}
二、绘制三维坐标下画线段
line3D.Draw3D();
line3D.Draw3DAuto();
/// <summary>
/// 绘制首位相连的线/圈
/// </summary>
private VectorLine Set3DLine(List<Vector3> points,LayerMask lineLayer,Camera lineCamera,float lineWidth)
{
string _LineName ="line";
VectorLine line3D = new VectorLine(_LineName, new List<Vector3>(), lineWidth, LineType.Continuous, Joins.Weld);
line3D.points3 =points;
line3D.layer = lineLayer;
line3D.drawTransform = line3D.rectTransform;
line3D.Draw3D();
line3D.SetWidth(lineWidth);
line3D.rectTransform.SetParent(transform);
VectorLine.SetCamera3D(lineCamera);
//line3D.Draw3D();//静态画线
line3D.Draw3DAuto();//可保证画出来的线段,在线段里点位坐标更改时,实时绘制线段
return line3D;
}
三、其他图形
可结合插件demo,绘制网格,圆,曲线等等;
Highlight 和Grid3D两个Demo的截图;
部分API