# Equilateral triangle commutative diagram

Here is my LaTeX for a commutative diagram using tikz-cd:

\documentclass{article}
\usepackage{tikz-cd}

\begin{document}

\begin{tikzcd}[column sep=small]
& & Y & &     \\
& A \arrow[ur] \arrow[to=3-1]  & D \arrow[r] \arrow[l] \arrow[d] & C \arrow[ul] \arrow[to=3-5] &    \\
Z & & B \arrow[to=3-1] \arrow[to=3-5] & & X
\end{tikzcd}

\end{document}


Is there a way to make the outer triangle equilateral, such that $A$, $B$, and $C$ lie in the middle of the edges, and $D$ lies in the centre of the triangle? Ideally, the arrows from $D$ to $A$, $B$, and $C$ would be perpendicular to the edges of the triangle.

The tikz-cd manual has an example of a pentagon on p. 13, in which it places the nodes with TikZ methods and uses the styles of the cd library for the rest.

\documentclass{article}
\usepackage{tikz-cd}

\begin{document}
\begin{tikzpicture}[commutative diagrams/every diagram,
declare function={R=2;Rs=R*cos(60);}]
\path
(150:Rs) node(A) {$A$}
(270:Rs) node(B) {$B$}
(30:Rs) node(C) {$C$}
(0,0)  node(D) {$D$}
(-30:R) node (X) {$X$}
(90:R) node (Y) {$Y$}
(210:R) node (Z) {$Z$};
\path[commutative diagrams/.cd, every arrow, every label]
(A) edge (Y) edge(Z)
(B) edge (Z) edge(X)
(C) edge (X) edge(Y)
(D) foreach \X in {A,B,C} {edge (\X)};
\end{tikzpicture}
\end{document}