a
    ضa
                     @   s    d dl Zd dlmZ dd ZdS )    N)Triangulationc                 O   st  ddl }tj|i |\}}}|j|j|j  }}}|r@|d nd}|jj|\}	}
}|	 }t
d|	|
|fD ] \}}|durp|||||< qp|d }	i |d|ddd	}|	d
vrtj|| dtjdd}tj|| dtjdd}| j| | fi |}n| jg g fi |}|d }
i |ddi}|
d
vrX| j||fi |}n| jg g fi |}|| S )a(  
    Draw a unstructured triangular grid as lines and/or markers.

    The triangulation to plot can be specified in one of two ways; either::

      triplot(triangulation, ...)

    where triangulation is a `.Triangulation` object, or

    ::

      triplot(x, y, ...)
      triplot(x, y, triangles, ...)
      triplot(x, y, triangles=triangles, ...)
      triplot(x, y, mask=mask, ...)
      triplot(x, y, triangles, mask=mask, ...)

    in which case a Triangulation object will be created.  See `.Triangulation`
    for a explanation of these possibilities.

    The remaining args and kwargs are the same as for `~.Axes.plot`.

    Returns
    -------
    lines : `~matplotlib.lines.Line2D`
        The drawn triangles edges.
    markers : `~matplotlib.lines.Line2D`
        The drawn marker nodes.
    r   N )	linestylemarkercolorr   Nonezorder   )r   r   )Nr   r       )Zaxisr   )Zmatplotlib.axesr   Zget_from_args_and_kwargsxyedgesZaxes_baseZ_process_plot_formatcopyzipgetnpinsertnanZplotZravel)axargskwargsZ
matplotlibZtrir   r   r   fmtr   r   r   kwkeyvalZkw_linesZtri_lines_xZtri_lines_yZ	tri_linesZ
kw_markersZtri_markers r   f/Users/vegardjervell/Documents/master/model/venv/lib/python3.9/site-packages/matplotlib/tri/triplot.pytriplot   sF    


r   )Znumpyr   Zmatplotlib.tri.triangulationr   r   r   r   r   r   <module>   s   