lundi 30 juillet 2018

How do I destroy "diagonal" point-alignments?

I start with a set of n points (here n = 6) in the 2D plane: {(1, 1), (2, 4), (3, 6), (4, 3), (5, 5), (6, 2)}. By adding all x-coordinates with k = 6, I have a new set of 6 points: {(7, 1), (8, 2), (9, 6), (10, 3), (11, 5), (12, 2)}. I make the same with the new set of points and obtain: {(13, 1), (14, 2), (15, 6), (16, 3), (17, 5), (18, 2)}. I can continue until m ≤ 10 (here m = 3). In the image, one can see the structure of "diagonal" point-alignments {(12, 2), (10, 3), (8, 4)}, {(18, 2), (16, 3), (14, 4)}
I want to have only two points on each "diagonal "point-alignments.
Only movement parallel to Y-axis is possible. For example the point (1, 1) can move from 0 to 6 like this (1, 1)-->(1, 2), (1, 1)-->(1 3)...(1, 1)-->(1, 6).

How can I destroy “diagonal” point-alignments to improve the arrangement of points? I want to implement it with C++. Any help is greatly appreciated.

Aucun commentaire:

Enregistrer un commentaire