I think that link skips a big conceptual step (at least for beginners), namely... the creation of the public key.
Starting from the private key, which is just a random 256 bit number, obtaining the public key requires performing a series of operations using elliptic curves (specifically, perform an "elliptic curve point multiplication" of the private key integer and a "generator" point on the specific curve that Bitcoin uses). THEN once you have the public key, you can follow the steps in that link.
So you are saying its possible to create the public key from the private key. But just "how possible"? Is it something done regularly or something that requires huge amounts of processing power?
It's not only possible... it's the standard way every bitcoin address is generated.
Steps:
1. Generate a random number. <-- this IS your private key
2. Perform a hard-to-explain-but-easy-for-a-computer-to-do elliptic curve math operation to get the public key.
3. Apply the RIPEMD160 and SHA256 hash functions on the public key to get what is generally known as the "Bitcoin address"