\documentclass{article}
\usepackage{tikz}
\usepackage{tikz-3dplot}
\usepackage[active,tightpage]{preview}
\PreviewEnvironment{tikzpicture}
\setlength\PreviewBorder{0.125pt}
%
% File name: regular-hexagonal-toroid-type-C.tex
% Description: 
% A geometric representation of the 
% regular tetragonal toroid type C is shown.
% 
% Date of creation: July, 8th, 2021.
% Date of last modification: October, 9th, 2022.
% Author: Efraín Soto Apolinar.
% https://www.aprendematematicas.org.mx/author/efrain-soto-apolinar/instructing-courses/
% Source: page 476 of the 
% Glosario Ilustrado de Matem\'aticas Escolares.
% https://tinyurl.com/5udm2ufy
%
% Terms of use:
% According to TikZ.net
% https://creativecommons.org/licenses/by-nc-sa/4.0/
% Your commitment to the terms of use is greatly appreciated.
%
\begin{document}
\tdplotsetmaincoords{75}{75}
%
\begin{tikzpicture}[tdplot_main_coords]
	% Change the value of the number at {\escala}{##} to scale the figure up or down
	\pgfmathsetmacro{\escala}{0.75}
	\pgfmathsetmacro{\r}{\escala}
	% Coordinates of the vertices
	\coordinate(0) at (\escala* 3, \escala*3, \escala*3);
	\coordinate(1) at (\escala* 3, \escala*3, -\escala*3);
	\coordinate(2) at (-\escala*3, \escala*3, \escala*3);
	\coordinate(3) at (\escala* 3, -\escala*3, -\escala*3);
	\coordinate(4) at (-\escala*3, -\escala*3, \escala*3);
	\coordinate(5) at (-\escala*3, -\escala*3, -\escala*3);
	\coordinate(6) at (\escala* 3, \escala*1, \escala*3);
	\coordinate(7) at (-\escala*3, -\escala*1, -\escala*3);
	\coordinate(8) at (-\escala*3, \escala*3, \escala*1);
	\coordinate(9) at (\escala* 3, -\escala*3, -\escala*1);
	\coordinate(10) at (-\escala*1, -\escala*3, \escala*3);
	%
	\coordinate(11) at (\escala* 1, \escala*3, -\escala*3);
	\coordinate(12) at (-\escala*1, \escala*1, \escala*3);
	\coordinate(13) at (\escala* 1, -\escala*1, -\escala*3);
	\coordinate(14) at (-\escala*3, -\escala*1, \escala*1);
	\coordinate(15) at (\escala* 3, \escala*1, -\escala*1);
	\coordinate(16) at (\escala* 1, \escala*3, \escala*1);
	\coordinate(17) at (-\escala*1, -\escala*3, -\escala*1);
	\coordinate(18) at (\escala* 1, \escala*1, \escala*1);
	\coordinate(19) at (\escala* 1, \escala*1, -\escala*1);
	\coordinate(20) at (-\escala*1, \escala*1, \escala*1);
	%
	\coordinate(21) at (\escala* 1, -\escala*1, -\escala*1);
	\coordinate(22) at (-\escala*1, -\escala*1, \escala*1);
	\coordinate(23) at (-\escala*1, -\escala*1, -\escala*1);
	% Faces of the polyhedron
	\draw[red,thick,fill=cyan!35,opacity=0.75]  (0) -- (1) -- (11) -- (16) -- (8) -- (2) -- cycle;
	\draw[red,thick,fill=cyan!35,opacity=0.75]  (5) -- (4) -- (2) -- (8) -- (14) -- (7) -- cycle;
	\draw[red,thick,fill=cyan!35,opacity=0.75]  (5) -- (7) -- (13) -- (11) -- (1) -- (3) -- cycle;
	\draw[red,thick,fill=cyan!35,opacity=0.75]  (18) -- (16) -- (11) -- (13) -- (21) -- (19) -- cycle;
	\draw[red,thick,fill=cyan!35,opacity=0.75]  (18) -- (20) -- (22) -- (14) -- (8) -- (16) -- cycle;
	\draw[red,thick,fill=cyan!35,opacity=0.75]  (23) -- (21) -- (13) -- (7) -- (14) -- (22) -- cycle;
	%
	\draw[red,thick,fill=cyan!35,opacity=0.75]  (23) -- (17) -- (9) -- (15) -- (19) -- (21) -- cycle;
	\draw[red,thick,fill=cyan!35,opacity=0.75]  (5) -- (3) -- (9) -- (17) -- (10) -- (4) -- cycle;
	\draw[red,thick,fill=cyan!35,opacity=0.75]  (0) -- (6) -- (15) -- (9) -- (3) -- (1) -- cycle;
	\draw[red,thick,fill=cyan!35,opacity=0.75]  (23) -- (22) -- (20) -- (12) -- (10) -- (17) -- cycle;
	\draw[red,thick,fill=cyan!35,opacity=0.75]  (18) -- (19) -- (15) -- (6) -- (12) -- (20) -- cycle;
	\draw[red,thick,fill=cyan!35,opacity=0.75]  (0) -- (2) -- (4) -- (10) -- (12) -- (6) -- cycle;
	%
	\end{tikzpicture}
	%
\end{document}



