How to add LineRenderer positions based on an Array of GameObjects

I’ve got an Array of GameObjects so I can generate a ‘path’ of positions at run time. The Array is public as it’s important I can easily define the amount in the editor and position the GameObjects easily in the editor’s viewport.

I also have a LineRenderer with the intention of drawing a line from the first GameObject in the Array to the last. I have used this code to draw a line between the first and second GameObjects;

lineRenderer.SetPosition(0, pathNodes[0].transform.position);
lineRenderer.SetPosition(1, pathNodes[1].transform.position);

My question is - What is the best way to set the number of positions for the LineRenderer based on the length of the Array then match the positions of the LineRenderer to the positions defined by the GameObjects in the Array?

You must set the vertex count and use a for loop to assign the nodes to the vertex:

    ...
    lineRenderer.SetVertexCount(pathNodes.length);
    for (var i: int = 0; i < pathNodes.length; i++){
        lineRenderer.SetPosition(i, pathNodes*.transform.position);*
 *}*
*
*

Just an update to anyone trying to set the points on a line render from an array, the current method is now (version 5.6):

    Vector3[] points = new Vector3[3];
    //Something something ...
    lineRenderer.positionCount = points.Length;
    lineRenderer.SetPositions(points);