since the time I did wrote that, and today, even when just less than a year, the whole thing have expanded to way more options.
And a simple explanation will be.. (As i see it, so don't take it as the truth.. just as a simple explanation)
Vagrant is a tool that can be seen as a automation tool or orchestration tool for vms creation and setup
Taking a base box, and using some providers (virtualbox, vmware, hyper-v, aws, digital ocean, docker, openstack, lxc, libvirt, etc) and using some provisioners (file, bash, puppet, chef, ansible, etc), will take the base box, create a new box, configure it and execute instrucions on top of that base box and will deliver to you a fresh clean machine from that base box.
Packer is a tool that be seen as builder, it buils vm.
taking a iso (in virtualbox and vmware, not sure about hyperv), or taking a base vm (on vmware, virtualbox and all the rest of the other hypervisors) is going to do the install if coming from the iso, or just boot the base box, and then execute the scripts, etc to build a guest that can be used as template.