I am searching for the "most natural" definition of a (geometrical/space) point as an element of "something" in mathematics (I am trying to design a small computational geometry library on strong mathematical basis). For example, for a vector, it's easy: a vector is an element of a vector space, end of story. Same for a tensor: a tensor is an element of the tensor product of vector spaces. But how to define a point in the same way?
Can a point be defined as an element of an affine space or as an element of a topological space?
If both are true, what are the difference between the two types of points, and what would be the most natural (it's subjective) approach to define a point in geometry?
Moreover, do other approaches exist (a point is an element of XXXX)?
EDIT: I know that a point is an axiom/primitive notion but to design the library I need to make a choice. And I want to know the best option...
A point is a primitive notion. In particular, a primitive notion is not defined in terms of previously defined concepts, but is only motivated informally, usually by an appeal to intuition and everyday experience. A vector or a tensor is not an undefined notion, in fact their existence relies on the existence (the definition) of a vector space (tensor product space). If you cancel the concept of vector space, what is a vector? But even if you forgot all the mathematic knowledge, you know what a point is. The only reason is that the "definition" of a point (better say: the concept of a point) doesn't lie in mathematics.
If you define a point as an element of a set X, you are not define a "point" but you call the elements of such set X "points".
In fact defining a "point" as an element of a set $X$ automatically bring some extra property to the "point". Properties which are related to the starting set $X$ and so they don't hold in general.
An example: if you define a "point" as an element of an affine space you automatically have the property of subtracting one point from another to gain a vector (a "point" of a vector space which has other properties in relation to other "points" of the same set). Such property is impossible to have if you define "point" as elements of topological spaces. assuming I understand what you mean the only criterion valid for defining "points" in this way is "what property" I want attached to them?