I use Mathematica. This code finds integer points on the sphere

**(x-2)^2 + (y-4)^2 + (c-6)^2 =15**

and select two of them so that distance of two this points equal to 4.

**ClearAll[a, b, r, c];**

**a = 2;**

**b = 4;**

**c = 6;**

**r = 15; ss = **

** Subsets[{x, y, z} /. **

** Solve[{(x \[Minus] a)^2 + (y \[Minus] b)^2 + (z \[Minus] c)^2 == **

** r^2, x != a, y != b, z != c, x y z != 0}, {x, y, z}, **

** Integers], {2}];**

**t = Select[ss, And @@ Unequal @@@ Subsets[Flatten[#], {2}] &];**

** Length[t]**

** Select[ss, Apply[EuclideanDistance, #] === 4 &]**

and this code select four points on the shere so that none of three points make a right triangle

**ClearAll[a, b, r, c];**

**a = 2;**

**b = 4;**

**c = 6;**

**r = 15;**

**ss = Subsets[{x, y, z} /. **

** Solve[{(x - a)^2 + (y - b)^2 + (z - c)^2 == r^2, x != a, y != b, **

** z != c, x y z != 0, x > y}, {x, y, z}, Integers], {4}];**

**nonright = **

** Pick[ss, (FreeQ[#, \[Pi]/2] &) /@ ({VectorAngle[#2 - #1, #3 - #1], **

** VectorAngle[#1 - #2, #3 - #2], **

** VectorAngle[#1 - #3, #2 - #3]} & @@@ ss)];**

**Select[nonright, (12 == Length[Union @@ #] &)]**

I am looking for a procedure in *Maple. *I have some problems with this sphere. For example:

Choose four points so that 12 coordinates difference and it makes a square.

Can your code improve with sphere?