Stress-constrained topology optimization using the Drucker-Prager criterion