The triangle graph of a graph G, denoted by T (G), is the graph whose vertices represent the triangles (K 3 subgraphs) of G, and two vertices of T (G) are adjacent if and only if the corresponding triangles share an edge. In this paper, we characterize graphs whose triangle graph is a cycle and then extend the result to obtain a characterization of C n -free triangle graphs. As a consequence, we give a forbidden subgraph characterization of graphs G for which T (G) is a tree, a chordal graph, or a perfect graph. For the class of graphs whose triangle graph is perfect, we verify a conjecture of the third author concerning packing and covering of triangles.