i am develping one component,this component use drawviewportmesh to draw a lot of arrows(about 10000 arrows)
public override void DrawViewportMeshes(IGH_PreviewArgs args)
{
foreach(Plane p in planes)
{
Point3d x = new Point3d(p.OriginX + scale * p.XAxis.X, p.OriginY + scale * p.XAxis.Y, p.OriginZ + scale * p.XAxis.Z);
Point3d y = new Point3d(p.OriginX + scale * p.YAxis.X, p.OriginY + scale * p.YAxis.Y, p.OriginZ + scale * p.YAxis.Z);
Point3d z = new Point3d(p.OriginX + scale * p.ZAxis.X, p.OriginY + scale * p.ZAxis.Y, p.OriginZ + scale * p.ZAxis.Z);
args.Display.DrawArrow(new Line(p.Origin, x), System.Drawing.Color.Firebrick);
args.Display.DrawArrow(new Line(p.Origin, y), System.Drawing.Color.LimeGreen);
args.Display.DrawArrow(new Line(p.Origin, z), System.Drawing.Color.RoyalBlue);
}
}
it can work,but it is very slow in viewport,how to make it faster,thank you very much