An implementation of the Costs interface that assume that the weight of
edges is an Euclidean distance in 2D or 3D. No weight attribute is used.
Instead, for the G value, the edge weights are used. For the H value the
Euclidean distance in 2D or 3D between the current node and the target
node is used. For this Costs implementation to work, the graph nodes must
have a position (either individual "x", "y" and "z" attribute, or "xy"
attribute or even "xyz" attributes. If there are only "x" and "y" or "xy"
attribute this works in 2D, else the third coordinate is taken into