# Equally spaced circle in UI browsing

• posted
0

Is it possible to enter a number, and that a UI loads with the amount of circle that you entered equally spaced vertically? And if yes, how?

• posted
0

This is for my friend: can someone make a 3 points generator on the circumference of a circle that has a diameter of 2 units. And with these three x, y coordinates, look if the point (0,5:0) is in the triangle made with the three points?

• posted
0

@AZOM, sounds like a school exercise. Wouldn’t it be more useful for your friend to spend the time on cracking it?

• posted
0

@mikael

No, we are in high school, and this is not a homework or something like that, he just like maths and wants help to “verify” his answer to a question he gets somewhere on the web.

• posted
0

@mikael

The only thing I am doing wrong is with rounding up numbers (I think it is my only problem) beau a se if 2 values that I compare are like at 0,000001 appart, they are not equal. Also, I am using cos and sin to try to find the three points. And my friend doesn’t program btw.

• posted
0

@AZOM, try

``````0.1 + 0.2 == 0.3
``````

If you are not satisfied with the result, you might try to use the Decimal class, where you can also

``getcontext().prec == 6``

• posted
1

@AZOM, meanwhile, for your problem, I would use `ui.Path` with the three points, then `hit_test` with the given point. I do not know whether this would be any more accurate than the method you are using, though.

• posted
0

@mikael

Right, now, I don’t have my program, but I’m going to send it at ~5h pm.

• posted
1

@AZOM, going to get my beauty sleep now, but here’s what I meant by the hit test:

``````import random
import ui
import vector

random_angle = lambda: random.random() * 360

p = ui.Path()
point = vector.Vector(0, 1)

point.degrees = random_angle()
p.move_to(*point)
print(point)
for _ in range(2):
point.degrees = random_angle()
p.line_to(*point)
print(point)
p.close()

print('IN' if p.hit_test(0.5,0) else 'OUT')
``````

• posted
0

So, are you trying to input 3 points (not all colinear) and find the circle (radius and x,y). Then want to determine if a fourth point is on the edge of the circle?

A simple method is to just subtract the center, then compute the length, then compare to the circle radius. But, as you found, you want to use abs(point_to_center_dist-circle_radius)< threshold, where you'll have to decide what is an acceptable threshold.

Internal error.

Oops! Looks like something went wrong!