Using an amplifier, the sides of the triangle can be made very straight. Here, the NOT gate is acting like an op-amp in inverting configuration, steadily charging the capacitor to keep its input where it wants it.
The AND gate is configured as a Schmitt trigger. It switches so close to its limits because EveryCircuit can't cope with more sensible values.
CMOS logic gates only, or use op-amps:
http://everycircuit.com/circuit/6172963383803904